/**
  * Set the object class that is used within the underlying store to represent this object. For
  * example for the object with id equal to ObjectIds.ObjectIdUser this could be a 'user' in AD
  * or an 'inetOrgPerson' in OpenLdap.
  *
  * @param objectClass The object class. objectClass attribute (RFC 4512). Null/empty is treated
  *     as un-customized/default object class.
  */
 public void setObjectClass(String objectClassOfObject) {
   if ((objectClassOfObject != null) && (objectClassOfObject.isEmpty() == false)) {
     IdentityStoreAttributeMapping.validateName(objectClassOfObject, "objectClassOfObject");
   }
   this._objectClassOfObject = objectClassOfObject;
 }
 /**
  * add an attribute mapping for this object. Not null.
  *
  * @param attributeMapping
  */
 public void addAttributeMapping(IdentityStoreAttributeMapping attributeMapping) {
   ValidateUtil.validateNotNull(attributeMapping, "attributeMapping");
   this._storeAttributes.put(attributeMapping.getAttributeId(), attributeMapping);
 }
 /**
  * Constructor.
  *
  * @param objectId Id of an object whose object mapping to construct. shall be one of ObjectIds.
  */
 public Builder(String idOfObject) {
   IdentityStoreAttributeMapping.validateId(idOfObject, "idOfObject");
   this._idOfObject = idOfObject;
   this._objectClassOfObject = null;
   this._storeAttributes = new HashMap<String, IdentityStoreAttributeMapping>();
 }