Providing LDAP Directory Information
Some Info*Engine-based applications like web services, Windchill JCA applications, or other federated applications may require LDAP directory entries. While this kind of information can be provided using LDIF files, the LDIF files may get very complicated and must be maintained and updated as an application expands or changes.
With packages, this LDAP information can be provided by specifying some basic properties either directly in the task source or within .delegateInfo properties files.
Property Definitions
The following properties can be specified in either a .delegateInfo properties file or a task. For details on the specification format for either method, refer to the appropriate section below:
repositoryType
Specifies the repository type that type identifiers and delegates are created under. This property should not be specified unless the application belongs to a product that has defined a repository type other than “com.ptc.windchill.” Installation tools determine the appropriate repository type based on the repository the package is being installed under. Installations typically have a repository type of “com.ptc.windchill.”
typeId
Specifies the type identifier under which delegates are created. If this property is not specified, then the installation tool determines the type identifier by the task directory hierarchy. For example, a task residing in the “org/myOrg/Person” directory is assumed to have a type identifier of “org.myOrg.Person.”
delegateName
Specifies the name of a task delegate. This property should only be specified in a task, and then only if the task filename (minus the .xml extension) differs from the name of the command delegate being created.
installDelegate
Specifies whether a single delegate or group of delegates should be installed in the LDAP directory. The value of this property is boolean. This property is useful for utility tasks that are never directly called by an application, and thus requires no delegate entry in the LDAP directory. While creating a delegate for a task that is never externally invoked does not interfere with the directory structure, avoiding the creation of such delegates keeps the LDAP directory contents cleaner. Specify FALSE to prevent delegates from being created. The default for this property is TRUE.
Property Definitions in a Properties File
Properties can be defined in a special Java properties file named .delegateInfo. Any properties specified in a .delegateInfo file are inherited by all entries below that level in the directory tree. Subdirectories can also have their own .delegateInfo files that would supersede the properties specified in a higher level directory.
Properties can be specified in the .delegateInfo file as in any standard Java properties file. For example:
typeId=WCTYPE|wt.part.WTPart
Property Definitions in a Task
Properties defined within a task supersede properties specified in a properties file. Tasks with these defined properties are sometimes referred to as “self-describing” tasks.
Since Info*Engine tasks are not Java properties files, the properties must be specified in a different manner:
• Properties within Info*Engine tasks must be specified inside of a special comment section that begins with the com.infoengine.delegate.def identifier. This identifier informs the Package Manager and installation tools that properties are specified.
• Each property definition must be preceded by an at symbol (@). Any lines in the comment section that do not begin with @ are registered as a comment and used in the description of an installed delegate.
• The property name and value must be separated by a single space. The following is an example of a self-describing task comment section:
<!--com.infoengine.delegate.def
this is the delegate description
@delegateName get-name
-->