Interface CreateOp
-
- All Superinterfaces:
SPIOperation
public interface CreateOp extends SPIOperation
TheConnector
developer is responsible for taking the attributes given (which always includes theObjectClass
) and create an object and itsUid
. TheConnector
developer must return theUid
so that the caller can refer to the created object.The
Connector
developer should make a best effort to create the object otherwise throw an informativeRuntimeException
telling the caller why the operation could not be completed. It reasonable to use defaults for requiredAttribute
s as long as they are documented.- Since:
- 1.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Uid
create(ObjectClass objectClass, java.util.Set<Attribute> createAttributes, OperationOptions options)
TheConnector
developer is responsible for taking the attributes given (which always includes theObjectClass
) and create an object and itsUid
.
-
-
-
Method Detail
-
create
Uid create(ObjectClass objectClass, java.util.Set<Attribute> createAttributes, OperationOptions options)
TheConnector
developer is responsible for taking the attributes given (which always includes theObjectClass
) and create an object and itsUid
. TheConnector
developer must return theUid
so that the caller can refer to the created object.*Note: There will never be a
Uid
passed in with the attribute set for this method. If the resource supports some sort of mutableUid
, you should create your own resource-specific attribute for it, such as unix_uid.- Parameters:
objectClass
- the type of object to create. Will never be null.createAttributes
- includes all the attributes necessary to create the resource object including theObjectClass
attribute andName
attribute.options
- additional options that impact the way this operation is run. If the caller passes null, the framework will convert this into an empty set of options, so SPI need not worry about this ever being null.- Returns:
- the unique id for the object that is created. For instance in LDAP this would be the 'dn', for a database this would be the primary key, and for 'ActiveDirectory' this would be the GUID.
-
-