com.waveset.adapter
Class UnixResourceAdapter

java.lang.Object
  extended bycom.waveset.adapter.ResourceAdapterBase
      extended bycom.waveset.adapter.GenericScriptResourceAdapter
          extended bycom.waveset.adapter.UnixResourceAdapter
All Implemented Interfaces:
ResourceAdapter, ResourcePolicyTimeouts
Direct Known Subclasses:
AIXResourceAdapter, NISResourceAdapter, ShellScriptResourceAdapter, SVIDResourceAdapter

public abstract class UnixResourceAdapter
extends GenericScriptResourceAdapter
implements ResourceAdapter


Nested Class Summary
 
Nested classes inherited from class com.waveset.adapter.GenericScriptResourceAdapter
GenericScriptResourceAdapter.AcctIter
 
Nested classes inherited from class com.waveset.adapter.ResourceAdapterBase
ResourceAdapterBase.SimpleAccountIterator
 
Nested classes inherited from class com.waveset.adapter.ResourceAdapter
ResourceAdapter.ActionResult, ResourceAdapter.Features, ResourceAdapter.ObjectType
 
Field Summary
protected static java.lang.String CMD_AWK
           
protected static java.lang.String CMD_CAT
           
protected static java.lang.String CMD_CHMOD
           
protected static java.lang.String CMD_CHOWN
           
protected static java.lang.String CMD_CP
           
protected static java.lang.String CMD_CUT
           
protected static java.lang.String CMD_DIFF
           
protected static java.lang.String CMD_ECHO
           
protected static java.lang.String CMD_GREP
           
protected static java.lang.String CMD_GROUPADD
           
protected static java.lang.String CMD_GROUPDEL
           
protected static java.lang.String CMD_GROUPMOD
           
protected static java.lang.String CMD_LAST
           
protected static java.lang.String CMD_LISTUSERS
           
protected static java.lang.String CMD_LOGINS
           
protected static java.lang.String CMD_LS
           
protected static java.lang.String CMD_MAKE
           
protected static java.lang.String CMD_MV
           
protected static java.lang.String CMD_PASSWD
           
protected static java.lang.String CMD_RM
           
protected static java.lang.String CMD_SED
           
protected static java.lang.String CMD_SLEEP
           
protected static java.lang.String CMD_SORT
           
protected static java.lang.String CMD_SUDO
           
protected static java.lang.String CMD_TAIL
           
protected static java.lang.String CMD_TOUCH
           
protected static java.lang.String CMD_USERADD
           
protected static java.lang.String CMD_USERDEL
           
protected static java.lang.String CMD_USERMOD
           
protected static java.lang.String CMD_WHICH
           
protected static java.lang.String CMD_YPCAT
           
protected static java.lang.String CMD_YPMATCH
           
protected static java.lang.String CMD_YPPASSWD
           
static java.lang.String code_id
           
protected  java.lang.String loginPass
           
protected  java.lang.String loginShellPrompt
           
protected  java.lang.String loginUser
           
protected static java.lang.String ONE_TAIL
           
static java.lang.String RA_ALT_ROOT_SHELL_PROMPT
           
static java.lang.String RA_DEL_HOME_DIR
           
static java.lang.String RA_HOME_BASEDIR
           
static java.lang.String RA_LOGIN_SHELL_PROMPT
           
static java.lang.String RA_NISDIR
           
static java.lang.String RA_NISPWDDIR
           
static java.lang.String RA_NISSRCDIR
           
static java.lang.String RA_ROOT_PASSWORD
           
static java.lang.String RA_ROOT_SHELL_PROMPT
           
static java.lang.String RA_ROOT_USER
           
static java.lang.String RA_SUDO_AUTH
           
static java.lang.String RA_SYS_DB_TYPE
           
protected static boolean removeAction
           
protected  java.lang.String rootPass
           
protected  ScriptToken.Capture rootPromptCaptureToken
           
protected  ScriptToken.Capture rootPromptCaptureTokenOrig
           
protected  ScriptToken.WaitFor rootPromptWaitToken
           
protected  ScriptToken.WaitFor rootPromptWaitTokenOrig
           
protected  java.lang.String rootShellPrompt
           
protected  java.lang.String rootShellPromptOrig
           
protected  java.lang.String rootUser
           
protected  java.lang.String sudoResetCmd
           
protected  ScriptToken.Send sudoResetToken
           
protected  java.lang.String sudoStartCmd
           
protected  ScriptToken.Send sudoStartToken
           
protected static java.lang.String wavesetRootPrompt
           
protected  ScriptToken.Capture wavesetRootPromptCaptureToken
          Deprecated. use new ScriptToken.Capture(wavesetRootPrompt.trim(), getCapture().getTimeout()) instead
protected  ScriptToken.WaitFor wavesetRootPromptWaitToken
          Deprecated. use new ScriptToken.WaitFor(wavesetRootPrompt.trim(), getWaitFor().getTimeout()) instead
 
Fields inherited from class com.waveset.adapter.GenericScriptResourceAdapter
conn, RA_BLOCK_FETCH_TIMEOUT, RA_CONN_MAX, RA_CONN_TIMEOUT, RA_CONN_TYPE, RA_HOST, RA_LOGIN_PASSWORD, RA_LOGIN_USER, RA_PORT, RA_TERM
 
Fields inherited from class com.waveset.adapter.ResourceAdapterBase
_cache, _context, _excludedAccountsRule, _excludedAccountsRuleInited, _listAllObjectsAttrParse, _listAllObjectsAttrParseName, _listUserAttrParse, _listUserAttrParseName, _listUserGroupsAttrParse, _listUserGroupsAttrParseName, _resource, _thread, _trace, displayInfoCode, RA_BLOCKCOUNT, RA_LOGIN_ACTION, RA_LOGOFF_ACTION, RA_MULTI_VALUED_ATTRS, RA_TEST_MODE
 
Fields inherited from interface com.waveset.adapter.ResourceAdapter
CHANGE_PASSWORD_LOCATION, DISABLE, ENABLE, EXPIRE_PASSWORD, GUID, IGNORE_ATTR, NEW_ACCOUNT_ID, OP_DAYS_INACTIVE, OP_DISABLED, OP_DORMANT, OP_EXPIRED, OP_EXPIREDPWD, OP_INACTIVE, OP_LOCKED, OP_NO_PASSWORD_SET, OP_NOOWNERSHIP, OP_NOPASSWORDREQ, OP_NUMINACTIVEDAYS, OP_NUMPWDAYS, OP_PWNUMDAYS, RA_BASE_CTX, RA_DISPLAY_NAME_ATTR, RA_NEW_OBJECT_ID, RA_NEW_OBJECT_NAME, RA_OBJECT_ATTRIBUTES, RA_OBJECT_CLASS, RA_OBJECT_ID, RA_OBJECT_TYPE, RA_OP_TYPE, RA_RENAME_OP, RA_REQUESTOR, RA_SAVEAS_OP, RA_SEARCH_ATTRIBUTE_NAMES, RA_SEARCH_ATTRS_TO_GET, RA_SEARCH_CONTEXT, RA_SEARCH_FILTER, RA_SEARCH_RUN_AS_PASSWORD, RA_SEARCH_RUN_AS_USER, RA_SEARCH_SCOPE, RA_SEARCH_SCOPE_OBJECT, RA_SEARCH_SCOPE_ONE_LEVEL, RA_SEARCH_SCOPE_SUBTREE, RA_SEARCH_TIME_LIMIT, RESET_PASSWORD, SYSTEM_ATTRIBUTES, UNLOCK, WS_USER_PASSWORD
 
Constructor Summary
UnixResourceAdapter()
          No argument constructor.
UnixResourceAdapter(Resource res, ObjectCache cache)
          Constructor.
 
Method Summary
protected  void addActionScript(java.lang.String action, Script script, int timeout, java.util.Map args)
           
protected  void addResultItem(WavesetResult result, java.lang.String type, java.lang.Object value)
           
protected  void addScriptArguments(Script script, java.util.Map args)
           
protected  Script addSudoReset(Script script)
           
protected  Script addSudoStart(Script script)
           
 WavesetResult authenticate(java.util.HashMap loginInfo)
          Authenticates the user represented in the loginInfo.
protected static ResourceAttribute createResourceAttr(java.lang.String attrName, java.lang.String displayName, java.lang.String desc, java.lang.String type, boolean multi, java.lang.Object value)
          Generates a ResourceAttribute suitable for insertion into the prototype XML structure.
static java.util.Collection divideString(java.lang.String stringToDivide, char delim, boolean trimTokens)
          A utility method that breaks up a String into an Collection of Strings by cutting at each delimiter.
protected  java.lang.String escape(java.lang.String s)
           
protected  void getAccountActionResult(CaptureList captureList, WavesetResult result)
           
 Script getAccountActionScript(java.lang.String action, WSUser user, java.lang.String operation, int timeout)
           
 AccountIterator getAccountIterator()
          Override the GenericScriptResourceAdapter method Returns an account iterator containing all of the users on the resource.
 AccountIterator getAccountIterator(long timeout)
          Note: Overrides the method in GenericScriptAdapter.
protected  void getActionResult(CaptureList captureList, WavesetResult result)
           
protected  Script getActionScript(java.lang.String action, int timeout, java.util.Map args)
           
protected  void getCaptureItem(CaptureList captureList, int index, WavesetResult result, java.lang.String type)
           
protected abstract  WavesetResult getConnectionTestResult(CaptureList captureList)
           
protected abstract  Script getConnectionTestScript()
           
protected  java.lang.String getConnectionType()
          Returns the scripted connection type of the resource.
protected  WavesetResult getCreateGroupResult(CaptureList captureList)
           
protected  Script getCreateGroupScript(java.lang.String groupName, GenericObject attrs, java.util.Map options, boolean isSaveAs)
          Returns a script which will create a group.
protected  Script getCreateNativeGroupScript(java.lang.String groupName, GenericObject attrs, java.util.Map options, boolean isSaveAs)
           
protected  Script getCreateNativeUserScript(WSUser user, java.lang.String accountID, java.lang.String password)
           
protected  Script getCreateNISGroupScript(java.lang.String groupName, GenericObject attrs, java.util.Map options, boolean isSaveAs)
           
protected  Script getCreateNISUserScript(WSUser user, java.lang.String accountID, java.lang.String password)
           
protected  WavesetResult getCreateObjectResult(GenericObject object, java.util.Map options, CaptureList captureList)
          Analyzes the captuure list generated by executing the listObjects script on the scripted connection.
protected  Script getCreateObjectScript(GenericObject object, java.util.Map options)
          Returns a script which will create an object of a specified type from the scriptedConnection.
protected  WavesetResult getCreateUserResult(CaptureList captureList)
           
protected  Script getCreateUserScript(java.lang.String userName, GenericObject attrs, java.util.Map options, boolean isSaveAs)
          Returns a script which will create an user account.
protected  Script getCreateUserScript(WSUser user)
          Generates a script that will create an account for the passed user on the resource.
protected  java.util.List getDefaultShellsList()
           
protected  Script getDeleteGroupScript(GenericObject object, java.util.Map options)
          Generates a script that will delete a group on the resource.
protected  Script getDeleteNativeGroupScript(GenericObject object, java.util.Map options)
           
protected  Script getDeleteNativeUserScript(WSUser user, java.lang.String accountID)
           
protected  Script getDeleteNISGroupScript(GenericObject object, java.util.Map options)
           
protected  Script getDeleteNISUserScript(WSUser user, java.lang.String accountID)
           
protected  Script getDeleteObjectScript(GenericObject object, java.util.Map options)
          Returns a script which will delete an object of a specified type from the scriptedConnection.
protected  Script getDeleteUserScript(GenericObject object, java.util.Map options)
          Returns a script which will delete an user account.
protected  Script getDeleteUserScript(WSUser user)
          Generates a script that will delete the account of the passed user on the resource.
protected  GenericObject getGetGroupResult(java.lang.String objectName, java.util.List attrsToGet, CaptureList captureList)
           
protected  Script getGetGroupScript(java.lang.String objectId, java.util.List attrsToGet, java.util.Map options)
          Returns a script which will retrieve a group's attributes.
protected  GenericObject getGetObjectResult(java.lang.String objectType, java.lang.String objectId, java.util.List attrsToGet, CaptureList captureList)
          Analyzes the capture list generated by executing the getObject script on the scripted connection.
protected  Script getGetObjectScript(java.lang.String objectType, java.lang.String objectId, java.util.List attrsToGet, java.util.Map options)
          Returns a script which will retrieve the attributes of an object of the specified type from the scriptedConnection.
protected  GenericObject getGetUserResult(java.lang.String objectName, java.util.List attrsToGet, CaptureList captureList)
           
protected  Script getGetUserScript(java.lang.String objectId, java.util.List attrsToGet, java.util.Map options)
          Returns a script which will retrieve a user's account attributes.
protected  java.util.List getListObjectsResult(java.lang.String objectType, java.util.Map options, CaptureList captureList)
          Analyzes the capture list generated by executing the listObjects script on the scripted connection.
protected  Script getListObjectsScript(java.lang.String resObjType, java.util.Map options)
          Returns a script which will return a list of objects of a specified type from the scriptedConnection.
protected  java.util.ArrayList getReadOnlyNISTestCmds()
           
protected  java.util.ArrayList getReadOnlyTestCmds()
          Dynamic list of commands to test for permissions to execute.
protected  WavesetResult getRenameGroupResult(GenericObject object, CaptureList captureList)
           
protected  Script getRenameGroupScript(GenericObject object)
          Returns a script which will rename a group.
protected  WavesetResult getRenameObjectResult(GenericObject object, CaptureList captureList)
          Analyzes the capture list generated by executing the renameObject script on the scripted connection.
protected  Script getRenameObjectScript(GenericObject object)
          Returns a script which will rename an object with the specified changes from the scriptedConnection.
protected  WavesetResult getRenameUserResult(GenericObject object, CaptureList captureList)
           
protected  Script getRenameUserScript(GenericObject object)
          Returns a script which will rename a user account.
protected  java.util.ArrayList getRequiredCmds()
          Creates a list of required commands for the resource.
protected  java.util.ArrayList getRequiredFileCmds()
          The list of required file commands for all unix adapters.
protected  java.util.ArrayList getRequiredGroupCmds()
          The list of required group commands for all unix adapters.
protected  java.util.ArrayList getRequiredNISCmds()
          The list of required file commands for all unix adapters.
protected  java.util.ArrayList getRequiredUserCmds()
          The list of required user commands for all unix adapters.
 java.util.List getResourceAccounts(java.util.List attributes)
           
protected  ScriptedConnection getScriptedConnection()
          Creates and returns a ScriptedConnection to the resource.
protected  Script getShellsScript(Script script)
           
protected  WavesetResult getTestConfigurationResult(CaptureList list)
          Validates the configuration provided to the resource.
protected  Script getTestConfigurationScript()
          Returns a shell script to check the resource and determine if the configuration information is correct.
protected  WavesetResult getUpdateGroupResult(GenericObject object, CaptureList captureList)
           
protected  Script getUpdateGroupScript(GenericObject object)
          Returns a script which will update a group.
protected  Script getUpdateNativeGroupScript(GenericObject object)
          Returns a script which will update a group.
protected  Script getUpdateNativeUserScript(WSUser user, java.lang.String accountID, java.lang.String newName, java.lang.String password)
           
protected  Script getUpdateNISGroupScript(GenericObject object)
          Returns a script which will update a group.
protected  Script getUpdateNISUserScript(WSUser user, java.lang.String accountID, java.lang.String newName, java.lang.String password)
           
protected  WavesetResult getUpdateObjectResult(GenericObject object, java.util.Map options, CaptureList captureList)
          Analyzes the capture list generated by executing the updateObject script on the scripted connection.
protected  Script getUpdateObjectScript(GenericObject object, java.util.Map options)
          Returns a script which will update an object with the specified changes from the scriptedConnection.
protected  WavesetResult getUpdateUserResult(GenericObject object, CaptureList captureList)
           
protected  Script getUpdateUserScript(GenericObject object)
          Returns a script which will update a user account.
protected  Script getUpdateUserScript(WSUser user, java.lang.String password)
          Generates a script that will create an account for the passed user on the resource.
protected  java.lang.String getWhichScript(java.util.ArrayList req)
          Returns the actual which command statement used to send to the resource to determine the existance of the required commands.
protected  void init()
          Initialize the resource fields.
 boolean isNIS()
           
protected  java.lang.String quoteString(java.lang.String s)
          Quote strings with single quotes.
protected  java.lang.String replaceSpaces(java.lang.String s, java.lang.String replacement)
           
protected  void setWavesetPrompt()
           
protected  void startConnection()
          Starts a scripted connection up and logs into it.
protected  void stopConnection()
          Logs out of a scripted connection and disconnects.
protected  void stopConnection(boolean force)
           
protected  boolean sudoAuthorization()
           
 boolean supportsActions()
           
 boolean supportsCaseInsensitiveAccountIds()
          This method will return whether the resource adapter supports case insensitive account Ids or not.
 boolean supportsExcludedAccounts()
           
protected  WavesetResult testConnection(ScriptedConnection connection)
           
 
Methods inherited from class com.waveset.adapter.GenericScriptResourceAdapter
checkCreateAccount, checkDeleteAccount, checkUpdateAccount, constructUserAttributeParameter, constructUserAttributeParameters, constructUserAttributeParameters, createObject, deleteObject, getAccountAttributeFromMapName, getAccountAttributes, getAccountIteratorResult, getAccountIteratorScript, getAccountIteratorScript, getAuthenticateResult, getAuthenticateScript, getCapture, getCheckCreateAccountResult, getCheckCreateAccountScript, getCheckDeleteAccountResult, getCheckDeleteAccountScript, getCheckUpdateAccountResult, getCheckUpdateAccountScript, getCreateUserResult, getDeleteObjectResult, getDeleteUserResult, getDisableUserResult, getDisableUserScript, getEnableUserResult, getEnableUserScript, getFeatures, getListAllObjectsResult, getListAllObjectsScript, getLoginScript, getLogoutScript, getObject, getScanningResult, getScanningScript, getUpdateUserResult, getUpdateUserResult, getUpdateUserScript, getUser, getUserResult, getUserScript, getWaitFor, getWaitForIgnoreCase, isAllowableUserAttribute, listAllObjects, listObjects, lookupAndRunAction, realCreate, realDelete, realDisable, realEnable, realUpdate, renameObject, reverseMapAttr, reverseMapAttr, reverseMapMultiAttr, run, runAction, runAction, runAfterAction, runBeforeAction, scan, testConfiguration, updateObject, updateResourceAccount, wellFormedUserAttributeName
 
Methods inherited from class com.waveset.adapter.ResourceAdapterBase
checkForNoPasswordInSchema, checkSyntax, createAccount, createAccounts, createIdentity, createPrototypeResource, deleteAccount, deleteAccount, deleteAccounts, disableAccount, disableAccounts, dnsEqual, dnsEqual, enableAccount, enableAccounts, executeResourceAttributeJavascriptAction, fillInResourceInfo, fillInResourceInfo, getAccountIterator, getAction, getActionNotFoundErrorMessage, getActionNotFoundMessage, getActionRunAsPassword, getActionRunAsUser, getActionTimeout, getActionType, getAdapter, getAdapter, getAdapter, getAdapterProxy, getAdapterProxy, getAllAccounts, getAttrNameFromMapName, getAttrNameFromMapName, getAttrParse, getAttrTypeFromMapName, getAttrTypeFromMapName, getAUserName, getBaseContextAttrName, getBaseContextObject, getBaseContexts, getBlockSize, getContext, getExcludedAccountsRule, getIdentity, getListAllObjectsAttrParse, getListUserAttrParse, getListUserGroupsAttrParse, getOptionalBooleanResAttrVal, getOptionalBooleanResAttrVal, getOptionalEncryptedResAttrVal, getOptionalResAttrVal, getOptionalStringResAttrVal, getRequiredResAttr, getRequiredResAttr, getRequiredResAttrVal, getRequiredResAttrVal, getRequiredResAttrVals, getRequiredUserAttributeNames, getResAttrValActionOnUser, getResAttrVals, getResource, getResourceInfo, getResourceObjectAttrValNameAttr, getResourceObjectClassAttr, getResourceObjectTypePrefix, getSchemaMap, getUser, getWSAttrByMapName, getWSAttrByMapName, getWSAttrFromMap, handleActionResult, handleJavascriptActionResult, isAccountAttributeSecret, isExcludedAccount, isExcludedAccount, isFeatureEnabled, isSupported, isTestMode, listAllObjects, listObjects, listObjectsOfType, lookupAction, lookupAction, lookupActions, namesEqual, objectClassesMatchType, println, restoreResourceObjectClassAttr, run, runResourceAttributeJavascriptAction, setCache, setContext, setDisabled, setFromResource, setResource, setResourceObjectClassAttr, setResourceOptionAttrs, startConnectionWrapper, supportsAccountActions, supportsAccountDisable, supportsContainerObjectTypes, supportsResourceAccount, supportsScanning, updateAccount, updateAccounts, updateResourceIdentity, vmStoreBoot, vmStoreGet, vmStoreInit, vmStoreLatch, vmStorePut
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.waveset.adapter.ResourceAdapter
checkCreateAccount, checkDeleteAccount, checkUpdateAccount, createAccount, createAccounts, createIdentity, createObject, createPrototypeResource, deleteAccount, deleteAccount, deleteAccounts, deleteObject, disableAccount, disableAccounts, enableAccount, enableAccounts, getAccountAttributes, getAccountIterator, getAllAccounts, getBaseContextAttrName, getBaseContextObject, getBaseContexts, getFeatures, getObject, getResource, getUser, getUser, isSupported, listAllObjects, listAllObjects, listObjects, listObjects, listObjectsOfType, namesEqual, run, run, scan, setCache, setContext, setResource, setResourceObjectClassAttr, supportsAccountDisable, supportsContainerObjectTypes, supportsResourceAccount, supportsScanning, testConfiguration, updateAccount, updateAccounts, updateObject, updateResourceAccount
 

Field Detail

code_id

public static final java.lang.String code_id
See Also:
Constant Field Values

RA_LOGIN_SHELL_PROMPT

public static final java.lang.String RA_LOGIN_SHELL_PROMPT
See Also:
Constant Field Values

RA_ROOT_PASSWORD

public static final java.lang.String RA_ROOT_PASSWORD
See Also:
Constant Field Values

RA_ROOT_SHELL_PROMPT

public static final java.lang.String RA_ROOT_SHELL_PROMPT
See Also:
Constant Field Values

RA_ALT_ROOT_SHELL_PROMPT

public static final java.lang.String RA_ALT_ROOT_SHELL_PROMPT
See Also:
Constant Field Values

RA_ROOT_USER

public static final java.lang.String RA_ROOT_USER
See Also:
Constant Field Values

RA_SUDO_AUTH

public static final java.lang.String RA_SUDO_AUTH
See Also:
Constant Field Values

RA_HOME_BASEDIR

public static final java.lang.String RA_HOME_BASEDIR
See Also:
Constant Field Values

RA_DEL_HOME_DIR

public static final java.lang.String RA_DEL_HOME_DIR
See Also:
Constant Field Values

RA_SYS_DB_TYPE

public static final java.lang.String RA_SYS_DB_TYPE
See Also:
Constant Field Values

RA_NISDIR

public static final java.lang.String RA_NISDIR
See Also:
Constant Field Values

RA_NISSRCDIR

public static final java.lang.String RA_NISSRCDIR
See Also:
Constant Field Values

RA_NISPWDDIR

public static final java.lang.String RA_NISPWDDIR
See Also:
Constant Field Values

loginUser

protected java.lang.String loginUser

loginPass

protected java.lang.String loginPass

loginShellPrompt

protected java.lang.String loginShellPrompt

rootUser

protected java.lang.String rootUser

rootPass

protected java.lang.String rootPass

rootShellPrompt

protected java.lang.String rootShellPrompt

rootShellPromptOrig

protected java.lang.String rootShellPromptOrig

rootPromptWaitToken

protected ScriptToken.WaitFor rootPromptWaitToken

rootPromptWaitTokenOrig

protected ScriptToken.WaitFor rootPromptWaitTokenOrig

rootPromptCaptureToken

protected ScriptToken.Capture rootPromptCaptureToken

rootPromptCaptureTokenOrig

protected ScriptToken.Capture rootPromptCaptureTokenOrig

wavesetRootPrompt

protected static final java.lang.String wavesetRootPrompt
See Also:
Constant Field Values

wavesetRootPromptWaitToken

protected ScriptToken.WaitFor wavesetRootPromptWaitToken
Deprecated. use new ScriptToken.WaitFor(wavesetRootPrompt.trim(), getWaitFor().getTimeout()) instead


wavesetRootPromptCaptureToken

protected ScriptToken.Capture wavesetRootPromptCaptureToken
Deprecated. use new ScriptToken.Capture(wavesetRootPrompt.trim(), getCapture().getTimeout()) instead


removeAction

protected static boolean removeAction

sudoResetToken

protected ScriptToken.Send sudoResetToken

sudoStartToken

protected ScriptToken.Send sudoStartToken

sudoResetCmd

protected final java.lang.String sudoResetCmd
See Also:
Constant Field Values

sudoStartCmd

protected final java.lang.String sudoStartCmd
See Also:
Constant Field Values

CMD_WHICH

protected static final java.lang.String CMD_WHICH
See Also:
Constant Field Values

CMD_SUDO

protected static final java.lang.String CMD_SUDO
See Also:
Constant Field Values

CMD_USERADD

protected static final java.lang.String CMD_USERADD
See Also:
Constant Field Values

CMD_USERMOD

protected static final java.lang.String CMD_USERMOD
See Also:
Constant Field Values

CMD_USERDEL

protected static final java.lang.String CMD_USERDEL
See Also:
Constant Field Values

CMD_GROUPADD

protected static final java.lang.String CMD_GROUPADD
See Also:
Constant Field Values

CMD_GROUPMOD

protected static final java.lang.String CMD_GROUPMOD
See Also:
Constant Field Values

CMD_GROUPDEL

protected static final java.lang.String CMD_GROUPDEL
See Also:
Constant Field Values

CMD_PASSWD

protected static final java.lang.String CMD_PASSWD
See Also:
Constant Field Values

CMD_LOGINS

protected static final java.lang.String CMD_LOGINS
See Also:
Constant Field Values

CMD_LISTUSERS

protected static final java.lang.String CMD_LISTUSERS
See Also:
Constant Field Values

CMD_LS

protected static final java.lang.String CMD_LS
See Also:
Constant Field Values

CMD_CP

protected static final java.lang.String CMD_CP
See Also:
Constant Field Values

CMD_MV

protected static final java.lang.String CMD_MV
See Also:
Constant Field Values

CMD_RM

protected static final java.lang.String CMD_RM
See Also:
Constant Field Values

CMD_AWK

protected static final java.lang.String CMD_AWK
See Also:
Constant Field Values

CMD_SED

protected static final java.lang.String CMD_SED
See Also:
Constant Field Values

CMD_CAT

protected static final java.lang.String CMD_CAT
See Also:
Constant Field Values

CMD_TOUCH

protected static final java.lang.String CMD_TOUCH
See Also:
Constant Field Values

CMD_GREP

protected static final java.lang.String CMD_GREP
See Also:
Constant Field Values

CMD_CHOWN

protected static final java.lang.String CMD_CHOWN
See Also:
Constant Field Values

CMD_CHMOD

protected static final java.lang.String CMD_CHMOD
See Also:
Constant Field Values

CMD_LAST

protected static final java.lang.String CMD_LAST
See Also:
Constant Field Values

CMD_TAIL

protected static final java.lang.String CMD_TAIL
See Also:
Constant Field Values

CMD_ECHO

protected static final java.lang.String CMD_ECHO
See Also:
Constant Field Values

CMD_DIFF

protected static final java.lang.String CMD_DIFF
See Also:
Constant Field Values

CMD_SORT

protected static final java.lang.String CMD_SORT
See Also:
Constant Field Values

CMD_CUT

protected static final java.lang.String CMD_CUT
See Also:
Constant Field Values

CMD_SLEEP

protected static final java.lang.String CMD_SLEEP
See Also:
Constant Field Values

CMD_MAKE

protected static final java.lang.String CMD_MAKE
See Also:
Constant Field Values

ONE_TAIL

protected static final java.lang.String ONE_TAIL
See Also:
Constant Field Values

CMD_YPCAT

protected static final java.lang.String CMD_YPCAT
See Also:
Constant Field Values

CMD_YPMATCH

protected static final java.lang.String CMD_YPMATCH
See Also:
Constant Field Values

CMD_YPPASSWD

protected static final java.lang.String CMD_YPPASSWD
See Also:
Constant Field Values
Constructor Detail

UnixResourceAdapter

public UnixResourceAdapter(Resource res,
                           ObjectCache cache)
Constructor.


UnixResourceAdapter

public UnixResourceAdapter()
No argument constructor.

Method Detail

init

protected void init()
             throws WavesetException
Initialize the resource fields.

Throws:
WavesetException

setWavesetPrompt

protected void setWavesetPrompt()

supportsActions

public boolean supportsActions()
Specified by:
supportsActions in interface ResourceAdapter
Overrides:
supportsActions in class ResourceAdapterBase

supportsCaseInsensitiveAccountIds

public boolean supportsCaseInsensitiveAccountIds()
Description copied from class: ResourceAdapterBase
This method will return whether the resource adapter supports case insensitive account Ids or not. By default it will always return true since most resources do not allow case sensitive user names. However, for those that do, they should override this method implementation in their respective resource adapter class to return false.

Specified by:
supportsCaseInsensitiveAccountIds in interface ResourceAdapter
Overrides:
supportsCaseInsensitiveAccountIds in class ResourceAdapterBase

supportsExcludedAccounts

public boolean supportsExcludedAccounts()
Specified by:
supportsExcludedAccounts in interface ResourceAdapter
Overrides:
supportsExcludedAccounts in class ResourceAdapterBase

addResultItem

protected void addResultItem(WavesetResult result,
                             java.lang.String type,
                             java.lang.Object value)

getConnectionType

protected java.lang.String getConnectionType()
                                      throws WavesetException
Returns the scripted connection type of the resource.

Specified by:
getConnectionType in class GenericScriptResourceAdapter
Throws:
WavesetException

getScriptedConnection

protected ScriptedConnection getScriptedConnection()
                                            throws WavesetException
Creates and returns a ScriptedConnection to the resource.

Specified by:
getScriptedConnection in class GenericScriptResourceAdapter
Throws:
WavesetException

startConnection

protected void startConnection()
                        throws WavesetException
Description copied from class: GenericScriptResourceAdapter
Starts a scripted connection up and logs into it. Defers to abstract method getLoginScript for resource specific behavior.

Overrides:
startConnection in class GenericScriptResourceAdapter
Throws:
WavesetException

stopConnection

protected void stopConnection(boolean force)
                       throws WavesetException
Throws:
WavesetException

stopConnection

protected void stopConnection()
                       throws WavesetException
Description copied from class: GenericScriptResourceAdapter
Logs out of a scripted connection and disconnects. Defers to abstract method getLogoutScript for resource specific behavior.

Overrides:
stopConnection in class GenericScriptResourceAdapter
Throws:
WavesetException

sudoAuthorization

protected boolean sudoAuthorization()

addSudoStart

protected Script addSudoStart(Script script)

addSudoReset

protected Script addSudoReset(Script script)

isNIS

public boolean isNIS()

authenticate

public WavesetResult authenticate(java.util.HashMap loginInfo)
                           throws WavesetException
Authenticates the user represented in the loginInfo. Throws if the user is not authenticated. Uses the abstract methods getAuthenticateScript and getAuthenticateResult for the resource specific logic. Releases the connection as it is unuseable to root afterwards.

Specified by:
authenticate in interface ResourceAdapter
Overrides:
authenticate in class GenericScriptResourceAdapter
Throws:
WavesetException

getConnectionTestScript

protected abstract Script getConnectionTestScript()
                                           throws WavesetException
Throws:
WavesetException

getConnectionTestResult

protected abstract WavesetResult getConnectionTestResult(CaptureList captureList)
                                                  throws WavesetException
Throws:
WavesetException

testConnection

protected WavesetResult testConnection(ScriptedConnection connection)
                                throws WavesetException
Throws:
WavesetException

getCaptureItem

protected void getCaptureItem(CaptureList captureList,
                              int index,
                              WavesetResult result,
                              java.lang.String type)

getActionResult

protected void getActionResult(CaptureList captureList,
                               WavesetResult result)
Overrides:
getActionResult in class GenericScriptResourceAdapter

getActionScript

protected Script getActionScript(java.lang.String action,
                                 int timeout,
                                 java.util.Map args)
Overrides:
getActionScript in class GenericScriptResourceAdapter

addScriptArguments

protected void addScriptArguments(Script script,
                                  java.util.Map args)

addActionScript

protected void addActionScript(java.lang.String action,
                               Script script,
                               int timeout,
                               java.util.Map args)

escape

protected java.lang.String escape(java.lang.String s)

getAccountActionResult

protected void getAccountActionResult(CaptureList captureList,
                                      WavesetResult result)
Overrides:
getAccountActionResult in class GenericScriptResourceAdapter

getAccountActionScript

public Script getAccountActionScript(java.lang.String action,
                                     WSUser user,
                                     java.lang.String operation,
                                     int timeout)
                              throws WavesetException
Overrides:
getAccountActionScript in class GenericScriptResourceAdapter
Throws:
WavesetException

replaceSpaces

protected java.lang.String replaceSpaces(java.lang.String s,
                                         java.lang.String replacement)

quoteString

protected java.lang.String quoteString(java.lang.String s)
Quote strings with single quotes. If there is an embedded single quote, escape it as follows:

bubba's account

becomes

'bubba'"'"'s account'


divideString

public static java.util.Collection divideString(java.lang.String stringToDivide,
                                                char delim,
                                                boolean trimTokens)
A utility method that breaks up a String into an Collection of Strings by cutting at each delimiter. This works around a difficulty with the StringTokenizer class where multiple adjacent delimiters are treated as a single delimiter. Thus "1,2,,4" is considered to have only three tokens instead of four which would be expected in CSV format. This is a known issue with StringTokenizer which is probably not going to be addressed. See http://developer.java.sun.com/developer/bugParade/bugs/4086845.html for more details.


getListObjectsScript

protected Script getListObjectsScript(java.lang.String resObjType,
                                      java.util.Map options)
                               throws WavesetException
Description copied from class: GenericScriptResourceAdapter
Returns a script which will return a list of objects of a specified type from the scriptedConnection.

Overrides:
getListObjectsScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getListObjectsResult

protected java.util.List getListObjectsResult(java.lang.String objectType,
                                              java.util.Map options,
                                              CaptureList captureList)
                                       throws WavesetException
Analyzes the capture list generated by executing the listObjects script on the scripted connection. Throws if the capture list indicates failure. The executing script may also throw on failure.

Overrides:
getListObjectsResult in class GenericScriptResourceAdapter
Throws:
WavesetException

getGetGroupScript

protected Script getGetGroupScript(java.lang.String objectId,
                                   java.util.List attrsToGet,
                                   java.util.Map options)
                            throws WavesetException
Returns a script which will retrieve a group's attributes.

Throws:
WavesetException

getGetUserScript

protected Script getGetUserScript(java.lang.String objectId,
                                  java.util.List attrsToGet,
                                  java.util.Map options)
                           throws WavesetException
Returns a script which will retrieve a user's account attributes.

Throws:
WavesetException

getGetObjectScript

protected Script getGetObjectScript(java.lang.String objectType,
                                    java.lang.String objectId,
                                    java.util.List attrsToGet,
                                    java.util.Map options)
                             throws WavesetException
Returns a script which will retrieve the attributes of an object of the specified type from the scriptedConnection.

Overrides:
getGetObjectScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getGetUserResult

protected GenericObject getGetUserResult(java.lang.String objectName,
                                         java.util.List attrsToGet,
                                         CaptureList captureList)
                                  throws WavesetException
Throws:
WavesetException

getGetGroupResult

protected GenericObject getGetGroupResult(java.lang.String objectName,
                                          java.util.List attrsToGet,
                                          CaptureList captureList)
                                   throws WavesetException
Throws:
WavesetException

getGetObjectResult

protected GenericObject getGetObjectResult(java.lang.String objectType,
                                           java.lang.String objectId,
                                           java.util.List attrsToGet,
                                           CaptureList captureList)
                                    throws WavesetException
Analyzes the capture list generated by executing the getObject script on the scripted connection. Throws if the capture list indicates failure. The executing script may also throw on failure.

Overrides:
getGetObjectResult in class GenericScriptResourceAdapter
Throws:
WavesetException

getCreateGroupScript

protected Script getCreateGroupScript(java.lang.String groupName,
                                      GenericObject attrs,
                                      java.util.Map options,
                                      boolean isSaveAs)
                               throws WavesetException
Returns a script which will create a group.

Throws:
WavesetException

getCreateNativeGroupScript

protected Script getCreateNativeGroupScript(java.lang.String groupName,
                                            GenericObject attrs,
                                            java.util.Map options,
                                            boolean isSaveAs)
                                     throws WavesetException
Throws:
WavesetException

getCreateNISGroupScript

protected Script getCreateNISGroupScript(java.lang.String groupName,
                                         GenericObject attrs,
                                         java.util.Map options,
                                         boolean isSaveAs)
                                  throws WavesetException
Throws:
WavesetException

getCreateUserScript

protected Script getCreateUserScript(java.lang.String userName,
                                     GenericObject attrs,
                                     java.util.Map options,
                                     boolean isSaveAs)
                              throws WavesetException
Returns a script which will create an user account.

Throws:
WavesetException

getCreateUserScript

protected Script getCreateUserScript(WSUser user)
                              throws WavesetException
Generates a script that will create an account for the passed user on the resource. The script can be executed on a ScriptedConnection. Should NOT login or logout.

Specified by:
getCreateUserScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getCreateNativeUserScript

protected Script getCreateNativeUserScript(WSUser user,
                                           java.lang.String accountID,
                                           java.lang.String password)
                                    throws WavesetException
Throws:
WavesetException

getCreateNISUserScript

protected Script getCreateNISUserScript(WSUser user,
                                        java.lang.String accountID,
                                        java.lang.String password)
                                 throws WavesetException
Throws:
WavesetException

getCreateObjectScript

protected Script getCreateObjectScript(GenericObject object,
                                       java.util.Map options)
                                throws WavesetException
Returns a script which will create an object of a specified type from the scriptedConnection.

Overrides:
getCreateObjectScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getCreateGroupResult

protected WavesetResult getCreateGroupResult(CaptureList captureList)
                                      throws WavesetException
Throws:
WavesetException

getCreateUserResult

protected WavesetResult getCreateUserResult(CaptureList captureList)
                                     throws WavesetException
Throws:
WavesetException

getCreateObjectResult

protected WavesetResult getCreateObjectResult(GenericObject object,
                                              java.util.Map options,
                                              CaptureList captureList)
                                       throws WavesetException
Analyzes the captuure list generated by executing the listObjects script on the scripted connection. Throws if the capture list indicates failure. The executing script may also throw on failure.

Overrides:
getCreateObjectResult in class GenericScriptResourceAdapter
Throws:
WavesetException

getDeleteGroupScript

protected Script getDeleteGroupScript(GenericObject object,
                                      java.util.Map options)
                               throws WavesetException
Generates a script that will delete a group on the resource. The script can be executed on a ScriptedConnection. Should NOT login or logout.

Throws:
WavesetException

getDeleteNativeGroupScript

protected Script getDeleteNativeGroupScript(GenericObject object,
                                            java.util.Map options)
                                     throws WavesetException
Throws:
WavesetException

getDeleteNISGroupScript

protected Script getDeleteNISGroupScript(GenericObject object,
                                         java.util.Map options)
                                  throws WavesetException
Throws:
WavesetException

getDeleteUserScript

protected Script getDeleteUserScript(WSUser user)
                              throws WavesetException
Generates a script that will delete the account of the passed user on the resource. The script can be executed on a ScriptedConnection. Should NOT login or logout.

Specified by:
getDeleteUserScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getDeleteNativeUserScript

protected Script getDeleteNativeUserScript(WSUser user,
                                           java.lang.String accountID)
                                    throws WavesetException
Throws:
WavesetException

getDeleteNISUserScript

protected Script getDeleteNISUserScript(WSUser user,
                                        java.lang.String accountID)
                                 throws WavesetException
Throws:
WavesetException

getDeleteUserScript

protected Script getDeleteUserScript(GenericObject object,
                                     java.util.Map options)
                              throws WavesetException
Returns a script which will delete an user account.

Throws:
WavesetException

getDeleteObjectScript

protected Script getDeleteObjectScript(GenericObject object,
                                       java.util.Map options)
                                throws WavesetException
Returns a script which will delete an object of a specified type from the scriptedConnection.

Overrides:
getDeleteObjectScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getUpdateGroupScript

protected Script getUpdateGroupScript(GenericObject object)
                               throws WavesetException
Returns a script which will update a group.

Throws:
WavesetException

getUpdateNativeGroupScript

protected Script getUpdateNativeGroupScript(GenericObject object)
                                     throws WavesetException
Returns a script which will update a group.

Throws:
WavesetException

getUpdateNISGroupScript

protected Script getUpdateNISGroupScript(GenericObject object)
                                  throws WavesetException
Returns a script which will update a group.

Throws:
WavesetException

getUpdateUserScript

protected Script getUpdateUserScript(GenericObject object)
                              throws WavesetException
Returns a script which will update a user account.

Throws:
WavesetException

getUpdateUserScript

protected Script getUpdateUserScript(WSUser user,
                                     java.lang.String password)
                              throws WavesetException
Generates a script that will create an account for the passed user on the resource. The script can be executed on a ScriptedConnection. Should NOT login or logout.

If the userID is passed in, the update will fail if the Id is in use by another user, but will succeed if the userId is the same or is a new value. Changing the user's ID will not change the files owned by that user.

If you make changes here, check to see if the changes should be applied to implementations in subclasses (eg HPUXResourceAdapter)

Specified by:
getUpdateUserScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getUpdateNativeUserScript

protected Script getUpdateNativeUserScript(WSUser user,
                                           java.lang.String accountID,
                                           java.lang.String newName,
                                           java.lang.String password)
                                    throws WavesetException
Throws:
WavesetException

getUpdateNISUserScript

protected Script getUpdateNISUserScript(WSUser user,
                                        java.lang.String accountID,
                                        java.lang.String newName,
                                        java.lang.String password)
                                 throws WavesetException
Throws:
WavesetException

getUpdateObjectScript

protected Script getUpdateObjectScript(GenericObject object,
                                       java.util.Map options)
                                throws WavesetException
Returns a script which will update an object with the specified changes from the scriptedConnection.

Overrides:
getUpdateObjectScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getUpdateGroupResult

protected WavesetResult getUpdateGroupResult(GenericObject object,
                                             CaptureList captureList)
                                      throws WavesetException
Throws:
WavesetException

getUpdateUserResult

protected WavesetResult getUpdateUserResult(GenericObject object,
                                            CaptureList captureList)
                                     throws WavesetException
Throws:
WavesetException

getUpdateObjectResult

protected WavesetResult getUpdateObjectResult(GenericObject object,
                                              java.util.Map options,
                                              CaptureList captureList)
                                       throws WavesetException
Analyzes the capture list generated by executing the updateObject script on the scripted connection. Throws if the capture list indicates failure. The executing script may also throw on failure.

Overrides:
getUpdateObjectResult in class GenericScriptResourceAdapter
Throws:
WavesetException

getRenameGroupScript

protected Script getRenameGroupScript(GenericObject object)
                               throws WavesetException
Returns a script which will rename a group.

Throws:
WavesetException

getRenameUserScript

protected Script getRenameUserScript(GenericObject object)
                              throws WavesetException
Returns a script which will rename a user account.

Throws:
WavesetException

getRenameObjectScript

protected Script getRenameObjectScript(GenericObject object)
                                throws WavesetException
Returns a script which will rename an object with the specified changes from the scriptedConnection.

Overrides:
getRenameObjectScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getRenameGroupResult

protected WavesetResult getRenameGroupResult(GenericObject object,
                                             CaptureList captureList)
                                      throws WavesetException
Throws:
WavesetException

getRenameUserResult

protected WavesetResult getRenameUserResult(GenericObject object,
                                            CaptureList captureList)
                                     throws WavesetException
Throws:
WavesetException

getRenameObjectResult

protected WavesetResult getRenameObjectResult(GenericObject object,
                                              CaptureList captureList)
                                       throws WavesetException
Analyzes the capture list generated by executing the renameObject script on the scripted connection. Throws if the capture list indicates failure. The executing script may also throw on failure.

Overrides:
getRenameObjectResult in class GenericScriptResourceAdapter
Throws:
WavesetException

getResourceAccounts

public java.util.List getResourceAccounts(java.util.List attributes)
                                   throws WavesetException
Specified by:
getResourceAccounts in interface ResourceAdapter
Overrides:
getResourceAccounts in class GenericScriptResourceAdapter
Parameters:
attributes - a list of attribute names whose values are to be returned with the account object.
Returns:
a list of objects which are used to identify accounts used to connect to the resource. The returned objects also contain the values of the requested attributes.

Throws:
WavesetException

createResourceAttr

protected static ResourceAttribute createResourceAttr(java.lang.String attrName,
                                                      java.lang.String displayName,
                                                      java.lang.String desc,
                                                      java.lang.String type,
                                                      boolean multi,
                                                      java.lang.Object value)
Generates a ResourceAttribute suitable for insertion into the prototype XML structure.


getRequiredUserCmds

protected java.util.ArrayList getRequiredUserCmds()
The list of required user commands for all unix adapters. Override this methods to add or remove commands for a particular adapter.

Returns:
Returns a list of require commands to create, update, and delete a user.

getRequiredGroupCmds

protected java.util.ArrayList getRequiredGroupCmds()
The list of required group commands for all unix adapters. Override this methods to add or remove commands for a particular adapter.

Returns:
Returns a list of require commands to create, update, and delete a group.

getRequiredFileCmds

protected java.util.ArrayList getRequiredFileCmds()
The list of required file commands for all unix adapters. Override this methods to add or remove commands for a particular adapter.

Returns:
Returns a list of require commands to perform operations on files within the resource.

getRequiredNISCmds

protected java.util.ArrayList getRequiredNISCmds()
The list of required file commands for all unix adapters. Override this methods to add or remove commands for a particular adapter.

Returns:
Returns a list of require commands to perform operations on files within the resource.

getRequiredCmds

protected java.util.ArrayList getRequiredCmds()
Creates a list of required commands for the resource.

Returns:
Returns a list of all required commands for the resource including user, group, and file commands.

getReadOnlyTestCmds

protected java.util.ArrayList getReadOnlyTestCmds()
Dynamic list of commands to test for permissions to execute.


getReadOnlyNISTestCmds

protected java.util.ArrayList getReadOnlyNISTestCmds()

getWhichScript

protected java.lang.String getWhichScript(java.util.ArrayList req)
Returns the actual which command statement used to send to the resource to determine the existance of the required commands.

Parameters:
req - List of required commands
Returns:
Single line execute script to determine the existance of the commands.

getTestConfigurationScript

protected Script getTestConfigurationScript()
                                     throws WavesetException
Description copied from class: GenericScriptResourceAdapter
Returns a shell script to check the resource and determine if the configuration information is correct. It also should determine if the command available and the account given has permission to execute them.

Overrides:
getTestConfigurationScript in class GenericScriptResourceAdapter
Throws:
WavesetException

getTestConfigurationResult

protected WavesetResult getTestConfigurationResult(CaptureList list)
                                            throws WavesetException
Description copied from class: GenericScriptResourceAdapter
Validates the configuration provided to the resource. It also should check if the commands are available and permission are set so that the account can use them.

Overrides:
getTestConfigurationResult in class GenericScriptResourceAdapter
Throws:
WavesetException

getAccountIterator

public AccountIterator getAccountIterator()
                                   throws WavesetException
Override the GenericScriptResourceAdapter method Returns an account iterator containing all of the users on the resource. Defers to abstract methods getAccountIteratorScript and getAccountIteratorResult for resource specific behavior.

Specified by:
getAccountIterator in interface ResourceAdapter
Overrides:
getAccountIterator in class GenericScriptResourceAdapter
Throws:
WavesetException

getAccountIterator

public AccountIterator getAccountIterator(long timeout)
                                   throws WavesetException
Note: Overrides the method in GenericScriptAdapter. The runScript method invokes methods which have a timeout built in and these need to be overridden in order to have valid timeout implementations.

Returns an account iterator containing all of the users on the resource. Defers to abstract methods getAccountIteratorScript and getAccountIteratorResult for resource specific behavior.

Specified by:
getAccountIterator in interface ResourceAdapter
Overrides:
getAccountIterator in class GenericScriptResourceAdapter
Throws:
WavesetException

getShellsScript

protected Script getShellsScript(Script script)

getDefaultShellsList

protected java.util.List getDefaultShellsList()