C Sample Groovy File

This is the snippet of the groovy file.

/*
 * Run like:
 * In Windows: FlatFileGenerator.cmd ..\resources\FlatFileConfiguration.groovy trusted
 * In Linux/Unix: sh FlatFileGenerator.sh ../resources/FlatFileConfiguration.groovy trusted
*/
trusted {
    /* 
     * ITResource name
     */
    itResourceDefName='Oracle HRMS' // This will be used as a base name for all metadata across the connector
    //  itResourceName="$itResourceDefName" //the same as itResourceDefName by default

    /*
     * Output files
     */
    //  connectorDir="../$itResourceDefName"                    // output dir of the connector, is the same as it resource name by default
    //  xmlFile='FlatFileTrusted-ConnectorConfig.xml'           // name of the dm xml of the connector
    //  configFile='FlatFileTrusted-CI.xml'                     // name of the config xml
    //  propertiesFile='FlatFileTrusted-generator.properties'   // name of the resources/properties file
    //  version='11.1.1.6.0'                                    // connector version


    /*
     * Trusted/Target mode
     * For trusted, we will not create forms, dataobjects and event handlers
     * For target, we will create all above metadata
     */
    trusted=true                                                // Flag to denote if the mode is trusted or not

    /*
     * Location of the flat file bundle jar
     */
    bundleJar='../../bundle/org.identityconnectors.flatfile-1.0.1115.jar'

    /*
     * The Configuration used to run the flat file bundle mentioned above, and get the schema by calling its SchemaOp, which is required for generating metadata 
     */
    config = [
        'schemaFile' : '/scratch/acme/flat_file/schema.properties'
    ]
    
    /**
      *  Provide the attribute list that need to be handled as Date on process form
      *  Make sure these fields datatype in schema should be long
      *  dateAttributeList is not a mandatory field
      **/

    dateAttributeList = ["JoiningDate"]


    /**
     *   Alias are used to map the OIM User Form attributes with the Connector Attributes. 
     *   The Format is of 'Connector Attribute':'OIM User Form Attribute'
     *   Mandatory alias shouldn't be removed. Customer can update these mandatory attributes but should not be removed
     *   Customer can add other aliases to the OIM User form fields
     **/

         // Some of the OIM User attributes are not used with the same display name internally. So here are the list of attributes that need to be mapped with the internal name then display name

        /**
      Display Name  Internally Used Name
      ------------  --------------------
      Organization  Organization Name
      Manager       Manager Login
      E-mail        Email
         */
  alias = ['__NAME__':'User Login', '__UID__':'Display Name','Organization':'Organization Name', 'Xellerate Type':'Xellerate Type', 'Role':'Role']

// non-mandatory alias
  alias += ['__ENABLE__':'Status', 'FirstName':'First Name', 'email':'Email', 'JoiningDate':'Start Date']
}


/*
 * Run like:
 * In Windows: FlatFileGenerator.cmd ..\resources\FlatFileConfiguration.groovy target
 * In Linux/Unix: sh FlatFileGenerator.sh ../resources/FlatFileConfiguration.groovy target
 */
target {
    /*
     * ITResource name
     */
    itResourceDefName='Flat File Target' // This will be used as a base name for all metadata across the connector
    //  itResourceName="$itResourceDefName" //the same as itResourceDefName by default

    /**
     * Give the name of the Application Instance that needs to be generated. By default Application Instance name is taken as itResourceDefName
     * Application Instance is not a mandatory field
     **/
    //applicationInstanceName="$itResourceDefName"

    /*
     * Output files
     */
    //  connectorDir="../$itResourceDefName"                    // output dir of the connector, is the same as it resource name by default
    //  xmlFile='FlatFileTarget-ConnectorConfig.xml'           // name of the dm xml of the connector
    //  configFile='FlatFileTarget-CI.xml'                     // name of the config xml
    //  propertiesFile='FlatFileTarget-generator.properties'   // name of the resources/properties file
    //  version='11.1.1.6.0'                                    // connector version

    /*
     * Location of the flat file bundle jar
     */
    bundleJar='../../bundle/org.identityconnectors.flatfile-1.0.1115.jar'

    /*
     * The Configuration used to run the flat file bundle mentioned above, and get the schema by calling its SchemaOp, which is required for generating metadata
     */
    config = [
        'schemaFile' : '/scratch/acme/flat_file/schema.properties'
    ]

    /**
      *  Lookup List is the list of attributes for which we need to create lookups and map those fields as lookup in form. 
      *  For Main Process Form Fields and a Multivalued field the format is 
      *         lookupAttributeList=["FieldName"]
      *  For Embedded Multi Valued field the format is
      *              lookupAttributeList=["ObjectClassName.SubFieldName"]
      *  lookups will be generated with the FieldNames in format Lookup.${ITResource}.${FieldName}
      *
      *  lookupList is not a mandatory field
      */        
        
       lookupAttributeList=['Currency']

     /* entitlementAttributeList is the list of fully Qualified field names to which entitlements need to be tagged. 
      * If you require entitlements for a multivalued attribute which is embedded, then the format should be as 
      *                         entitlementAttributeList=["${ObjectClass}.SubFieldName"]
      * If the attribute is just multivalued, then the format is
      *         entitlementAttributeList=["MultiValuedFieldName"]
      *
      * entitlementAttributeList is not a mandatory attribute
      */
    
        entitlementAttributeList=["MyROLES.RoleName","Groups"   ]

    /**
      *  Provide the attribute list that need to be handled as Date on process form
      *  Make sure these fields datatype in schema should be long
      *  dateAttributeList is not a mandatory field
      **/

       dateAttributeList = ["JoiningDate", "MyROLES.Start_Date", "MyROLES.End_Date"]

    /*
     * Target attribute to user fields alias
     */
    //Mandatory alias
    alias = ['__UID__':'UID', '__NAME__':'UserId']
    //Optional aliases if any (Can also be used to give short names for lengthy attribute names)
    //alias += ['USERROLERELATIONSHIP':'USRROL', 'Comments':'Description', 'Family Name':'Last Name', 'Visibility':'Status']

    /*
     * Generate prepopulate adapters
     */
    //prepopulate = ['__NAME__':'User Login', 'FIRST_NAME':'First Name', 'LAST_NAME':'Last Name', '__PASSWORD__':'Password']
}


/*
 * Run like:
 * In Windows: FlatFileGenerator.cmd ..\resources\FlatFileConfiguration.groovy disconnected
 * In Linux/Unix: sh FlatFileGenerator.sh ../resources/FlatFileConfiguration.groovy disconnected
 */
disconnected {
    /*
     * ITResource name
     */
    itResourceDefName='Access Badges' // This will be used as a base name for all metadata across the connector
    //  itResourceName="$itResourceDefName" //the same as itResourceDefName by default

    /**
     * Give the name of the Application Instance that need to be generated. By default Application Instance name is taken as itResourceDefName
     * Application Instance is not a mandatory field
     **/
    applicationInstanceName="Access Badges Application"

    /*
     * Output files
     */
    //  connectorDir="../$itResourceDefName"                    // output dir of the connector, is the same as it resource name by default
    //  xmlFile='FlatFileTarget-ConnectorConfig.xml'           // name of the dm xml of the connector
    //  configFile='FlatFileTarget-CI.xml'                     // name of the config xml
            //  propertiesFile='FlatFileTarget-generator.properties'   // name of the resources/properties file
    //  version='11.1.1.6.0'                                   // connector version

    /*
     * Disconnected resource Flag.
     * if true, generate the disconnected metadata.
     */
    disconnectedResource=true

    /*
     * Location of the flat file bundle jar
     */
    bundleJar='../../bundle/org.identityconnectors.flatfile-1.0.1115.jar'

    /*
     * The Configuration used to run the flat file bundle mentioned above, and get the schema by calling its SchemaOp, which is required for generating metadata
     */
    config = [
        'schemaFile' : '/scratch/acme/flat_file/schema.properties'
    ]

    /**
      *  Lookup List is the list of attributes for which we need to create lookups and map those fields as lookup in form. 
      *  For Main Process Form Fields and a Multivalued field the format is 
      *         lookupAttributeList=["FieldName"]
      *  For Embedded Multialued field the format is
      *                 lookupAttributeList=["ObjectClassName.SubFieldName"]
      *  lookups will be generated with the FieldNames in format Lookup.${ITResource}.${FieldName}
      *
      *  lookupList is not a mandatory field
      */        

     lookupAttributeList=['Currency']

      /* If you require entitlements for a multivalued attribute which is embedded then the format should be as 
      * entitlementAttributeList is the list of fully Qualified field names to which entitlements need to be tagged. 
      *             entitlementAttributeList=["${ObjectClass}.SubFieldName"]
      * If the attribute is just a MultiValued then the format is
      *                 entitlementAttributeList=["MultiValuedFieldName"]
      *
      * entitlementAttributeList is not a mandatory attribute
      */

      entitlementAttributeList=["MyROLES.RoleName","Groups"]

    /**
      *  Provide the attribute list that need to be handled as Date on process form
      *  Make sure these fields datatype in schema should be long
      *  dateAttributeList is not a mandatory field
      **/

     dateAttributeList = ["JoiningDate", "MyROLES.Start_Date", "MyROLES.End_Date"]

    /*
     * Target attribute to user fields alias
     */
    //Mandatory alias
    alias = ['__UID__':'UID', '__NAME__':'UserId']
    //Optional aliases if any (Can also be used to give short names for lengthy attribute names)
    //alias += ['USERROLERELATIONSHIP':'USRROL', 'comments':'Description', 'Family Name':'Last Name', 'Visibility':'Status']

    /*
     * Generate prepopulate adapters
     */
    prepopulate = ['__NAME__':'User Login', 'FirstName':'First Name', 'LastName':'Last Name']
}