/** * Constructor for an empty builder */ protected AbstractCustomDataAccessorBuilder() { this.customDataBuilder = new CustomDataBuilder(); }
/** * Constructor for a builder initialised with the given custom data * * @param existing can't be <code>null</code> */ protected AbstractCustomDataAccessorBuilder(final CustomDataAccessor existing) { Validate.notNull(existing, "Custom data accessor required"); this.customDataBuilder = new CustomDataBuilder(existing.getCustomData()); }
/** * Appends the given custom data to this builder * * @param customDataBuilder the custom data to append; can be * <code>null</code> to make no changes */ public void append(final CustomData customData) { if (customData != null) { // Set the custom data builder to a new instance containing both // builders' values final CustomDataBuilder customDataBuilder = new CustomDataBuilder(customData); customDataBuilder.append(this.customDataBuilder.build()); this.customDataBuilder = customDataBuilder; } }
public <T> void tag(final T toModify, final CustomDataKey<T> key, final Object value) { if (toModify instanceof FieldMetadata) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((FieldMetadata) toModify, customDataBuilder.build()); } else if (toModify instanceof MethodMetadata) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((MethodMetadata) toModify, customDataBuilder.build()); } else if (toModify instanceof ConstructorMetadata) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((ConstructorMetadata) toModify, customDataBuilder.build()); } else if (toModify instanceof MemberHoldingTypeDetails) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((MemberHoldingTypeDetails) toModify, customDataBuilder.build()); } } }
public <T> void tag(final T toModify, final CustomDataKey<T> key, final Object value) { if (toModify instanceof FieldMetadata) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((FieldMetadata) toModify, customDataBuilder.build()); } else if (toModify instanceof MethodMetadata) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((MethodMetadata) toModify, customDataBuilder.build()); } else if (toModify instanceof ConstructorMetadata) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((ConstructorMetadata) toModify, customDataBuilder.build()); } else if (toModify instanceof MemberHoldingTypeDetails) { final CustomDataBuilder customDataBuilder = new CustomDataBuilder(); customDataBuilder.put(key, value); doModification((MemberHoldingTypeDetails) toModify, customDataBuilder.build()); } } }