Library Commands

The library commands are used to manage folders and objects in the library.

These commands work with the SIMULIA Execution Engine.

This page discusses:

The following commands are available:

createfolder folder:<folder_path>

Takes a folder path and ensures that the library has the indicated chain of nested folders, creating each of the missing folders (if any). If the command client is connected to a SIMULIA Execution Engine library, the user must have at least MODIFY permission on the last existing folder in the path, or on the library "root" if no folder in the path exist, plus at least READ permission on all other folders. All missing folders will be created with ALTER permission for the current user and READ permission for all other users.

deletefolder folder:<folder_path>

Takes a folder path and deletes the last folder named on the path, along with all objects published under that folder and, recursively, all folders beneath that folder. If the command client is connected to a SIMULIA Execution Engine library, the user must have at least MODIFY permission on that folder, its parent folder (or the library "root" if there is no parent folder), and all objects and folders, recursively, beneath that folder, plus at least READ permission on the library "root" and all higher folders in the path.

move name:<library_name> ver:<version> to:<folder_path>

Takes an object publication path-and-name and a folder path, and moves the named object from under its current folder to the last folder named in the given path. If an object version is specified, only that version of the object is moved; otherwise all versions are moved. In either case, there must not be a published object of the same name under the destination folder. If the command client is connected to a SIMULIA Execution Engine library, the user must have at least MODIFY permission on the published object (or on the specified version), on its parent folder, and on the destination folder, plus at least READ permission on the library "root" and all higher folders in both paths. All per-object and per-version permissions are retained by the moved object.

copy name:<library_name> ver:<version> to:<folder_path>

Takes an object publication path-and-name and a folder path, and copies the named object from under its current folder to the last folder named in the given path. If an object version is specified, only that version of the object is copied; otherwise all versions are copied. Both the named object, or the specified version of the named object, and the destination folder must already exist. In either case, there must not be a published object of the same number under the destination folder. If the command client is connected to a SIMULIA Execution Engine library, the user must have at least READ permission on the published object (or on the specified version) and on its parent folder, and MODIFY permission on the destination folder, plus at least READ permission on the library "root" and all higher folders in both paths. All per-object and per-version permissions are also copied.

movefolder folder:<folder_path1> to:<folder_path2>

Takes source and destination folder paths, and moves the last folder named in the source path to under the last folder named in the destination path. All objects and folders, recursively, under the moved folders are moved with the folder. Both the source and destination folders must already exist. There must not be a folder of the same name as the source folder under the destination folder. If the command client is connected to a SIMULIA Execution Engine library, the user must have at least MODIFY permission on the named source folder, its parent folder (or the library "root" if there is no parent folder), all objects and folders, recursively, beneath that folder, and the destination folder, plus at least READ permission on the library "root" and all higher folders in both paths. All per-object and per-version permissions are retained by all moved objects, and all permissions are retained by the moved folders.

copyfolder folder:<folder_path1> to:<folder_path2>

Takes the source and destination folder paths, and copies the last folder named in the source path, to under the last folder named in the destination path. All objects and folders, recursively, under the copied folder are copied with the folder. Both the source and the destination folders must already exist. There must not be a folder of the same name as the source folder under the destination folder. If the command client is connected to a SIMULIA Execution Engine library, the user must have at least READ permission on the named source folder and all objects and folders, recursively, beneath that folder, and at least MODIFY permission on the destination folder, plus at least READ permission on the library "root" and all the higher folders in both paths. All per-object and per-version permissions are duplicated for copied objects, and all folder permissions are duplicated for copied folders.

renamefolder folder:<folder_path> to:<folder_name>

Takes a folder path and a single folder name, and renames the last folder named by the given path to the given name. The last folder of the given path must exist, and its parent folder (or the library "root" if there is no parent folder) must not contain a folder of the given new name. If the command client is connected to a SIMULIA Execution Engine library, the user must have at least MODIFY permission on the renamed folder and its parent folder (or the library "root" if there is no parent folder), plus at least READ permission on all the higher folders in the path.

getacl

Allows you to get the access control list (permission information) from the library for a published object, for a folder, or for the library as a whole. You must have at least READ permission on the specified item to view the permissions assigned to the item, and you must be an administrator for your SIMULIA Execution Engine to view permissions for the library as a whole. Use the following sub-arguments to specify the target and to format the results (some sub-arguments are mutually exclusive):

name:<library_name> Specify the publication path and the name of a published object only when getting object or object-version permissions. Use this sub-argument by itself when getting the per-object permissions of the named object. Use it with the version sub-argument when getting per-version permissions of the named object.
version:<version_num> Specify the version number of a published object only when getting object or object-version permissions. Use this sub-argument with the name sub-argument when getting per-version permissions of the named object.
folder:<folder_path> Specify the name of, and path to, a library folder only when getting folder permissions. Use this sub-argument when getting permissions of the named folder. You may get the library “root” permissions by specifying “.” as the folder path.
system:<default | override> Specify global permissions that are applied to the library as a whole only when getting system-level permissions. Use the default option to get permissions that are applied only when no per-item permissions are set. Use the override option to get permissions that are applied instead of any per-item permissions that have been set. You must be an administrator for your SIMULIA Execution Engine to use this sub-argument.
verbose:<y | n> Specify whether the returned permissions when getting permissions for any target are abbreviated or written out in full as follows: AL (alter), MO (modify), RE (read), RF (reference), and NO (none).
setcmd:<console | <file_name> [add:append | prepend]> Allows you to generate the setacl command that would set the same permissions as are retrieved by this getacl command when getting permissions for any target. You can edit this command to create another command that sets different permissions or sets permissions on a different target. The generated command is either echoed to the command-line (the console option) or appended to the named file. If the add sub-argument is also given, it is copied into the generated command. For more information on the add option, see setacl command.

setacl

Allows you to set the access control list (permission information) in the library, for a published object, for a folder, or for the library as a whole. You must have at least ALTER permission on the specified item to assign permissions to the item, and you must be an administrator for your SIMULIA Execution Engine to assign permissions for the library as a whole. Use the following sub-arguments to specify the item and to format the results (some sub-arguments are mutually exclusive):

name:<library_name> Specify the publication path and the name of a published object only when getting object or object-version permissions. Use this sub-argument by itself when setting the per-object permissions of the named object. Use it with the version sub-argument when setting per-version permissions of the named object.
version:<version_num> Specify the version number of a published object only when getting object or object-version permissions. Use this sub-argument with the name sub-argument when setting per-version permissions of the name object.
folder:<folder_path> Specify the name of, and path to, a library folder only when getting folder permissions. Use this sub-argument when setting permissions of the name folder. You can get the library “root” permissions by specifying “.” as the folder path.
system:<default | override> Set global permissions that are applied to the library as a whole only when setting system-level permissions. Use the default option to set permissions that are applied only when no per-item permissions are set. Use the override option to set permissions that are applied instead of any per-item permissions that have been set. You must be an administrator for your SIMULIA Execution Engine to use this sub-argument.
add:<append | prepend> Add new permissions to the target’s current access control list (ACL) when setting permissions for any target. Access control lists are order-dependent. Permission assignments placed toward the start of the list override permission assignments placed at the end of the list. Use the append option to insert the permissions at the end of the list. Use the prepend option to insert permissions toward the start of the list. If this sub-argument is omitted, the given access control list replaces the target’s current access control list.
acl:<TERM,...,TERM> Specify the access control list (permission information) for a specified item in the library when setting permissions for any target. Each TERM is made up of a NAME, PERMISSION, and CATEGORY as follows:
  • NAME: The name string of the permission. Can be set to “*” to mean “any user”.
  • PERMISSION: Can be set to AL (alter), MO (modify), RE (read), RF (reference), or NO (none).
  • CATEGORY: The type of member. Can be set to U (user) or G (Group). If the type value is omitted, the default is U (user). For example, to set READ permission for an object called test_model for a user named fiperacs, type the following command: setacl name:test_model acl:fiperacs,RE,U If you have a published version 1.0.2 of test_model and have decided that the fiperacs user can insert it as a submodel but cannot use it otherwise, you would type the following command: setacl name:test_model version:1.0.2 acl:fiperacs,RF,U For more information on these permission settings and their meanings, see Setting Permissions on Objects in the Isight Library.

getgroup

Allows you to get the list of members of an Isight library permissions group. Permissions assigned to a group are implicitly assigned to all of the group’s members. The members of a group are the names of Isight users or the names of other groups. You must be an administrator for your SIMULIA Execution Engine to use this command. Use the following sub-arguments to retrieve information about groups defined in your Isight library:

name:>groups | group_name< Specify the name of the Isight library permissions group. Use the groups option to get the list of names of all groups defined for your library instead of the list of members for any specific group.
description:>no | yes< Retrieve the text of the description given for the named group, if one has been given. If the setcmd sub-argument is also given, a sub-option to set the description is included in the generated command. This sub-option is ignored if name:groups is given.
verbose:<no | yes> Specify whether the returned member list is abbreviated or written out in full as follows: U (User) or G (Group).
setcmd:<console | <file_name> [ add:no | yes]> Allows you to generate the setgroup command that sets the same group members as are retrieved by this getgroup command. You can edit this command to create another command that sets different members or sets members for a different group. The generated command is either echoed to the command-line (the console option) or appended to the named file. If the add sub-argument is also given, it is copied into the generated command. For more information on the add option, see the setgroup command.

setgroup

Allows you to set the list of members of an Isight library permissions group. Permissions assigned to a group are implicitly assigned to all of the group’s members. The members of a group are the names of Isight users or the names of other groups. You must be an administrator for your SIMULIA Execution Engine to use this command. Use the following sub-arguments to alter information about groups defined in your Isight library:

name:<group_name> Specify the name of the Isight library permissions group.
description:<text> Allows you to set the description for the named group. If this sub-argument is omitted, the group’s current description is not changed.
add:<no | yes> Specify whether the members are appended or replaced when adding members to the existing member list. Use add:yes to add the given members to the group’s current member list. Use add:no (or omit this sub-argument) to replace the group’s current member list with the given member list. You cannot use the add:y option and the delete:y option in the same command.
delete:<no | yes> Specify whether or not a group is removed. Use yes to remove the given members from the group’s current member list. If you use yes and give no member list, the named group is entirely deleted. Use no (or omit this sub-argument) to replace the group’s current member list with the given member list. You cannot use the delete:y option and the add:y option in the same command.
members:<empty | MEMBER [ ; … ; MEMBER]> Specify member lists for the named group. Each MEMBER is made up a NAME and CATEGORY as follows:
  • NAME: The name string of an Isight user or of an already defined group.
  • CATEGORY: The type of member. Can be set to U (user) or G (Group). If the type value is omitted, the default is U (user). For example, to add a user named fiperacs to a group named webtop_users, type the following command: setgroup name:webtop_users members:fiperacs,U add:y

getjobacl

Allows you to get the access control list (permission information) for a specified job in the results database. Use the following sub-arguments to specify the file information:

job:<job_ID_number> Specify the job number, not the job name.
verbose:<y | n> Specify whether the returned access control list (ACL) information is abbreviated or written out in full as follows: AL (alter), MO (modify), RE (read), RF (reference), NO (none), U (User), and G (Group).

setjobacl

Allows you to set the access control list (permission information) for a specified job in the results database. Use the following sub-arguments to specify the permission information:

acl:<TERM,...,TERM> Specify the access control list (permission information) for a specified object in the library. Each TERM is made up of a NAME, PERMISSION, and CATEGORY as follows:
  • NAME: The name string of the permission. Can be set to “*” to mean “any user”.
  • PERMISSION: Can be set to AL (alter), MO (modify), RE (read), RF (reference), or NO (none).
  • CATEGORY: The type of member. Can be set to U (user) or G (Group). If the type value is omitted, the default is U (user).
job:<job_ID_number> The job number, not the job name. For example, to set READ permission for a job for a user named fiperacs, type the following command: setjobacl job:8580808080808080A781 acl:fiperacs,RE,U,*,NO,U. The first set of acl commands (fiperacs, RE, and U) represent the specified user (in this example, fiperacs). The last set of access control list (ACL) commands (*, NO, and U) represent all other users. For more information on these permission settings and their meanings, see Setting Permissions on Objects in the Isight Library.

publish

Allows you to publish a file to the SIMULIA Execution Engine library. The following sub-arguments are available:

acl:<permission_name ... permission_name> A list of permissions to set for this object as follows: ALTER, MODIFY, READ, REFERENCE, and NONE. You cannot use permission abbreviations with this sub-argument.
Note: This command always sets the common access control list for all published versions. To set the access control list for a specific version, use the setacl command.
name:<object_name> The fully qualified library name. For example, com.myorg.mymodel. This sub-argument is required except when publishing metamodels.
type:<model | metamodel | jar | library | program | data> The file type. This argument is required. The model option is used to publish Isight models (.zmf extension). The metamodel option is used to publish components, plug-ins, data types, or units (.jar files).
file:<file_name> The name of the file to publish. This argument is required.
Note: A file with the extension .pub contains one or more commands for publishing files. If such a file is given to the publish command, all other options are ignored and only the commands in the file are used. This file type is used to publish patches.
auth:<author_name> The name of the publisher.
desc:<description> A free-form description of the file.
attr:<name,val ...> A list of name-operator-value pairs to associate with the file in the library. Some examples include:
  • attr:ptn,'Datex Tool'
  • attr:filename,foo.dll
ref:<name> Indicates that the specified object references the named object.
version:<version_number> Version number to assign to the object in the library. The default setting is “1.0”