Class AttributeInfoBuilder
- java.lang.Object
-
- org.identityconnectors.framework.common.objects.AttributeInfoBuilder
-
public final class AttributeInfoBuilder extends java.lang.ObjectSimplifies the process of building 'AttributeInfo' objects. This class is responsible for providing a default implementation ofAttributeInfo.AttributeInfoBuilder bld = new AttributeInfoBuilder("email"); bld.setRequired(true); AttributeInfo info = bld.build();- Since:
- 1.0
-
-
Constructor Summary
Constructors Constructor Description AttributeInfoBuilder()Creates an builder with all the defaults set.AttributeInfoBuilder(java.lang.String name)Creates an builder with all the defaults set.AttributeInfoBuilder(java.lang.String name, java.lang.Class<?> type)Creates an builder with all the defaults set.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AttributeInfobuild()Builds anAttributeInfoobject based on the properties set.static AttributeInfobuild(java.lang.String name)Convenience method to create an AttributeInfo.static AttributeInfobuild(java.lang.String name, java.lang.Class<?> type)Convenience method to create an AttributeInfo.static AttributeInfobuild(java.lang.String name, java.lang.Class<?> type, java.util.Set<AttributeInfo.Flags> flags)Convenience method to create an AttributeInfo.static AttributeInfoBuilderdefine(java.lang.String name)Convenience method to create a new AttributeInfoBuilder.static AttributeInfoBuilderdefine(java.lang.String name, java.lang.Class<?> type)Convenience method to create a new AttributeInfoBuilder.AttributeInfoBuildersetCreateable(boolean value)Determines if the attribute is writable.AttributeInfoBuildersetFlags(java.util.Set<AttributeInfo.Flags> flags)Sets all of the flags for this builder.AttributeInfoBuildersetMultiValued(boolean value)Determines if this attribute supports multivalue.AttributeInfoBuildersetName(java.lang.String name)Sets the unique name of theAttributeInfoobject.AttributeInfoBuildersetReadable(boolean value)Determines if the attribute is readable.AttributeInfoBuildersetRequired(boolean value)Determines if this attribute is required.AttributeInfoBuildersetReturnedByDefault(boolean value)AttributeInfoBuildersetType(java.lang.Class<?> value)Please seeFrameworkUtil.checkAttributeType(Class)for the definitive list of supported types.AttributeInfoBuildersetUpdateable(boolean value)Determines if this attribute writable during update.
-
-
-
Constructor Detail
-
AttributeInfoBuilder
public AttributeInfoBuilder()
Creates an builder with all the defaults set. The name must be set before the 'build' method is called otherwise anIllegalStateExceptionis thrown.Name: <not set> Readable: true Writeable: true Required: false Type: string MultiValue: false
-
AttributeInfoBuilder
public AttributeInfoBuilder(java.lang.String name)
Creates an builder with all the defaults set. The name must be set before the 'build' method is called otherwise anIllegalStateExceptionis thrown.Name: <not set> Readable: true Writeable: true Required: false Type: string MultiValue: false
-
AttributeInfoBuilder
public AttributeInfoBuilder(java.lang.String name, java.lang.Class<?> type)Creates an builder with all the defaults set. The name must be set before the 'build' method is called otherwise anIllegalStateExceptionis thrown.Name: <not set> Readable: true Writeable: true Required: false Type: string MultiValue: false
-
-
Method Detail
-
build
public AttributeInfo build()
Builds anAttributeInfoobject based on the properties set.- Returns:
AttributeInfobased on the properties set.
-
setName
public AttributeInfoBuilder setName(java.lang.String name)
Sets the unique name of theAttributeInfoobject.- Parameters:
name- unique name of theAttributeInfoobject.
-
setType
public AttributeInfoBuilder setType(java.lang.Class<?> value)
Please seeFrameworkUtil.checkAttributeType(Class)for the definitive list of supported types.- Parameters:
value- type for anAttribute's value.- Throws:
java.lang.IllegalArgumentException- if the Class is not a supported type.
-
setReadable
public AttributeInfoBuilder setReadable(boolean value)
Determines if the attribute is readable.
-
setCreateable
public AttributeInfoBuilder setCreateable(boolean value)
Determines if the attribute is writable.
-
setRequired
public AttributeInfoBuilder setRequired(boolean value)
Determines if this attribute is required.
-
setMultiValued
public AttributeInfoBuilder setMultiValued(boolean value)
Determines if this attribute supports multivalue.
-
setUpdateable
public AttributeInfoBuilder setUpdateable(boolean value)
Determines if this attribute writable during update.
-
setReturnedByDefault
public AttributeInfoBuilder setReturnedByDefault(boolean value)
-
setFlags
public AttributeInfoBuilder setFlags(java.util.Set<AttributeInfo.Flags> flags)
Sets all of the flags for this builder.- Parameters:
flags- The set of attribute info flags. Null means clear all flags.NOTE: EnumSet.noneOf(AttributeInfo.Flags.class) results in an attribute with the default behavior:
- update-able
- creatable
- returned by default
- readable
- single-valued
- optional
-
build
public static AttributeInfo build(java.lang.String name, java.lang.Class<?> type, java.util.Set<AttributeInfo.Flags> flags)
Convenience method to create an AttributeInfo. Equivalent tonew AttributeInfoBuilder(name,type).setFlags(flags).build()- Parameters:
name- The name of the attributetype- The type of the attributeflags- The flags for the attribute. Null means clear all flags- Returns:
- The attribute info
-
build
public static AttributeInfo build(java.lang.String name, java.lang.Class<?> type)
Convenience method to create an AttributeInfo. Equivalent toAttributeInfoBuilder.build(name,type,null)- Parameters:
name- The name of the attributetype- The type of the attribute- Returns:
- The attribute info
-
build
public static AttributeInfo build(java.lang.String name)
Convenience method to create an AttributeInfo. Equivalent toAttributeInfoBuilder.build(name, String.class)- Parameters:
name- The name of the attribute- Returns:
- The attribute info
-
define
public static AttributeInfoBuilder define(java.lang.String name)
Convenience method to create a new AttributeInfoBuilder. Equivalent to:new AttributeInfoBuilder(name, String.class)- Parameters:
name- The name of the attribute- Returns:
- The attribute info builder with predefined name and type value.
- Since:
- 1.4
-
define
public static AttributeInfoBuilder define(java.lang.String name, java.lang.Class<?> type)
Convenience method to create a new AttributeInfoBuilder. Equivalent to:new AttributeInfoBuilder(name, type)- Parameters:
name- The name of the attributetype- The type of the attribute- Returns:
- The attribute info builder with predefined name and type value.
- Since:
- 1.4
-
-