/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package org.forgerock.openicf.openportal; import java.util.EnumSet; import org.identityconnectors.framework.common.objects.*; import org.identityconnectors.framework.common.objects.AttributeInfo.Flags; import org.identityconnectors.framework.common.objects.AttributeInfoBuilder; import org.identityconnectors.framework.common.objects.Name; import org.identityconnectors.framework.common.objects.ObjectClass; import org.identityconnectors.framework.common.objects.ObjectClassInfoBuilder; import org.identityconnectors.framework.common.objects.Schema; import org.identityconnectors.framework.common.objects.SchemaBuilder; import org.identityconnectors.framework.spi.Connector; /** * * @author admin */ public class SchemaBuilderUtil { public Schema createBuilder(){ SchemaBuilder schemaBuilder = new SchemaBuilder((Class<? extends Connector>) getClass()); //User ObjectClassInfoBuilder objInfo = new ObjectClassInfoBuilder(); objInfo.setType(ObjectClass.ACCOUNT_NAME); objInfo.addAttributeInfo(AttributeInfoBuilder.build(Name.NAME, String.class, EnumSet.of(Flags.REQUIRED, Flags.NOT_UPDATEABLE))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("screenName", String.class, EnumSet.of(Flags.REQUIRED, Flags.NOT_UPDATEABLE))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("firstName", String.class, EnumSet.of(Flags.NOT_UPDATEABLE))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("lastname", String.class, EnumSet.of(Flags.NOT_UPDATEABLE))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("uid", Long.class, EnumSet.of(Flags.NOT_UPDATEABLE))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("emailAddress", String.class, EnumSet.of(Flags.NOT_UPDATEABLE))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("password", String.class, EnumSet.of(Flags.NOT_UPDATEABLE))); schemaBuilder.defineObjectClass(objInfo.build()); //Group objInfo = new ObjectClassInfoBuilder(); objInfo.setType(ObjectClass.GROUP_NAME); objInfo.addAttributeInfo(AttributeInfoBuilder.build(Name.NAME, String.class, EnumSet.of(Flags.NOT_UPDATEABLE))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("companyId", Long.class, EnumSet.of(Flags.REQUIRED))); objInfo.addAttributeInfo(AttributeInfoBuilder.build("userGroupId", Long.class,EnumSet.of(Flags.REQUIRED))); schemaBuilder.defineObjectClass(objInfo.build()); Schema schema = schemaBuilder.build(); return schema; } }