continue; if (!source.hasField(field) && !destination.hasField(field)) {
if (builder.hasField(field)) { throw new InvalidProtocolBufferException( "Field " + field.getFullName() + " has already been set.");
if (builder.hasField(field)) { throw new InvalidProtocolBufferException( "Field " + field.getFullName() + " has already been set.");
if (builder.hasField(field)) { throw new InvalidProtocolBufferException( "Field " + field.getFullName() + " has already been set.");
if (builder.hasField(field)) { throw new InvalidProtocolBufferException( "Field " + field.getFullName() + " has already been set.");
/** * Serialize a serviceAttribute and filter a list of fields beforehand. * * @param serviceAttribute the service attribute which is serialized * @param filteredFieldList a list of field names which shall be filtered before serialization * @return a jSon string representation of the service attribute without the filtered fields * @throws CouldNotPerformException if the serialization fails or the service attribute does not contain any context */ public String serialize(final Message serviceAttribute, final List<String> filteredFieldList) throws CouldNotPerformException { final Message.Builder builder = serviceAttribute.toBuilder(); for (String filteredField : filteredFieldList) { FieldDescriptor fieldDescriptor = ProtoBufFieldProcessor.getFieldDescriptor(builder, filteredField); if (!builder.hasField(fieldDescriptor)) { continue; } builder.clearField(fieldDescriptor); } return super.serialize(builder.build()); } }
@Override public boolean hasField(Descriptors.FieldDescriptor field) { return builder.hasField(field); }
@Override public boolean hasField(Descriptors.FieldDescriptor field) { return builder.hasField(field); }
@Override public boolean hasField(Descriptors.FieldDescriptor field) { return builder.hasField(field); }
/** helper method to handle {@code builder} and {@code extensions}. */ private static boolean hasOriginalMessage( Message.Builder builder, FieldSet<FieldDescriptor> extensions, FieldDescriptor field) { if (builder != null) { return builder.hasField(field); } else { return extensions.hasField(field); } }