com.ibm.etools.systems.files.ui
Class ValidatorFileFilterString
java.lang.Object
com.ibm.etools.systems.core.ui.validators.ValidatorUniqueString
com.ibm.etools.systems.files.ui.ValidatorFileFilterString
- All Implemented Interfaces:
- ISystemMessages, ISystemValidator, ISystemValidatorUniqueString
- public class ValidatorFileFilterString
- extends ValidatorUniqueString
- implements ISystemMessages
This class is used in dialogs that prompt for file filter strings.
File filter strings are a bit complex to validate. They have to be:
- Unique within their filter
- Valid generic names (there are rules regarding number and location of asterisks)
- Either a valid file or folder name, or both, when the asterisks are substituted with a letter like 'A'
The IInputValidator interface is implemented by our parent and it
is used by jface's InputDialog class and property sheet window.
If you subclass this, consider overriding the getFileNameValidator and
getFolderNameValidator methods.
Fields inherited from interface com.ibm.etools.systems.core.ISystemMessages |
FILEMSG_ARCHIVE_CORRUPTED, FILEMSG_COPY_FILE_FAILED, FILEMSG_COPY_ROOT, FILEMSG_CREATE_FILE_FAILED, FILEMSG_CREATE_FILE_FAILED_EXIST, FILEMSG_CREATE_FOLDER_FAILED, FILEMSG_CREATE_FOLDER_FAILED_EXIST, FILEMSG_CREATE_RESOURCE_NOTVISIBLE, FILEMSG_DELETE_FILE_FAILED, FILEMSG_DELETING, FILEMSG_DESTINATION_CONFLICTING, FILEMSG_DESTINATION_EMPTY, FILEMSG_ERROR_NOFILETYPES, FILEMSG_EXPORT_ERROR, FILEMSG_EXPORT_FAILED, FILEMSG_EXPORT_NONE_SELECTED, FILEMSG_EXPORT_PROBLEMS, FILEMSG_FILE_NOTFOUND, FILEMSG_FOLDER_IS_FILE, FILEMSG_FOLDER_NOTEMPTY, FILEMSG_FOLDER_NOTFOUND, FILEMSG_FOLDER_NOTFOUND_WANTTOCREATE, FILEMSG_IMPORT_ERROR, FILEMSG_IMPORT_FAILED, FILEMSG_IMPORT_FILTERING, FILEMSG_IMPORT_NONE_SELECTED, FILEMSG_IMPORT_PROBLEMS, FILEMSG_IMPORT_SELF, FILEMSG_IO_ERROR, FILEMSG_MOVE_FILE_FAILED, FILEMSG_MOVE_TARGET_DESCENDS_FROM_SOUCE, FILEMSG_MOVE_TARGET_EQUALS_SOURCE, FILEMSG_NOT_WRITABLE, FILEMSG_RENAME_FILE_FAILED, FILEMSG_RENAME_RESOURCE_NOTVISIBLE, FILEMSG_SECURITY_ERROR, FILEMSG_SOURCE_EMPTY, FILEMSG_SOURCE_IS_FILE, FILEMSG_TARGET_EXISTS, FILEMSG_VALIDATE_FILEFILTERSTRING_EMPTY, FILEMSG_VALIDATE_FILEFILTERSTRING_NOINCLUDES, FILEMSG_VALIDATE_FILEFILTERSTRING_NOTUNIQUE, FILEMSG_VALIDATE_FILEFILTERSTRING_NOTVALID, MSG_ADDTO_VIRTUAL_DEST, MSG_CACHE_UNABLE_TO_SYNCH, MSG_CACHE_UPLOAD_BEFORE_DELETE, MSG_COMBINETO_VIRTUAL_DEST, MSG_COMM_AUTH_FAILED, MSG_COMM_CLIENT_OLDER_WARNING, MSG_COMM_CONNECT_FAILED, MSG_COMM_DAEMON_NOTSTARTED, MSG_COMM_ENVVAR_DUPLICATE, MSG_COMM_ENVVAR_INVALIDCHAR, MSG_COMM_ENVVAR_NONAME, MSG_COMM_INCOMPATIBLE_PROTOCOL, MSG_COMM_INCOMPATIBLE_UPDATE, MSG_COMM_INVALID_LOGIN, MSG_COMM_PORT_WARNING, MSG_COMM_PWD_BLANKFIELD, MSG_COMM_PWD_EXISTS, MSG_COMM_PWD_INVALID, MSG_COMM_PWD_MISMATCH, MSG_COMM_REXEC_NOTSTARTED, MSG_COMM_SERVER_NOTSTARTED, MSG_COMM_SERVER_OLDER_WARNING, MSG_CONFIRM_CHANGES, MSG_CONFIRM_CHANGES_CANCELABLE, MSG_CONFIRM_DELETE, MSG_CONFIRM_DELETE_USERACTION, MSG_CONFIRM_DELETE_USERTYPE, MSG_CONFIRM_DELETEPROFILE, MSG_CONFIRM_DELETEREMOTE, MSG_CONFIRM_ENABLE_CLASSIC_HELP, MSG_CONFIRM_RELOADRSE, MSG_CONNECT_CANCELLED, MSG_CONNECT_DAEMON_FAILED, MSG_CONNECT_DAEMON_FAILED_EXCEPTION, MSG_CONNECT_FAILED, MSG_CONNECT_PROGRESS, MSG_CONNECT_SSL_EXCEPTION, MSG_CONNECT_UNKNOWNHOST, MSG_CONNECTING_TO_SERVER, MSG_CONNECTION_DELETED, MSG_CONNECTWITHPORT_PROGRESS, MSG_CONVERTTO_VIRTUAL_DEST, MSG_COPY_PROGRESS, MSG_COPYCONNECTION_PROGRESS, MSG_COPYCONNECTIONS_PROGRESS, MSG_COPYFILTER_PROGRESS, MSG_COPYFILTERPOOL_COMPLETE, MSG_COPYFILTERPOOL_PROGRESS, MSG_COPYFILTERPOOLS_PROGRESS, MSG_COPYFILTERS_PROGRESS, MSG_COPYFILTERSTRING_PROGRESS, MSG_COPYFILTERSTRINGS_PROGRESS, MSG_COPYGENERIC_PROGRESS, MSG_COPYSUBSYSTEMS_PROGRESS, MSG_COPYTHINGGENERIC_PROGRESS, MSG_DEST_NOT_IN_SOURCE, MSG_DEST_TARGET_READONLY, MSG_DISCONNECT_CANCELLED, MSG_DISCONNECT_FAILED, MSG_DISCONNECT_PROGRESS, MSG_DISCONNECTWITHPORT_PROGRESS, MSG_DOWNLOAD_ALREADY_OPEN_IN_EDITOR, MSG_DOWNLOAD_NO_WRITE, MSG_DOWNLOAD_PROGRESS, MSG_DOWNLOADING_PROGRESS, MSG_ERROR_CONNECTION_NOTFOUND, MSG_ERROR_ENABLE_CLASSIC_HELP, MSG_ERROR_EXTENSION_EMPTY, MSG_ERROR_FILE_NOTFOUND, MSG_ERROR_FILENAME_INVALID, MSG_ERROR_FOLDER_NOTFOUND, MSG_ERROR_FOLDERORFILE_NOTFOUND, MSG_ERROR_GENERAL, MSG_ERROR_LIST_TITLE, MSG_ERROR_PROFILE_NOTFOUND, MSG_ERROR_UNEXPECTED, MSG_EXCEPTION_DELETING, MSG_EXCEPTION_MOVING, MSG_EXCEPTION_OCCURRED, MSG_EXCEPTION_RENAMING, MSG_EXPAND_CANCELLED, MSG_EXPAND_CONNECTIONCREATED, MSG_EXPAND_EMPTY, MSG_EXPAND_FAILED, MSG_EXPAND_FILTERCREATED, MSG_EXPAND_PREFIX, MSG_EXTRACT_PROGRESS, MSG_FILE_INUSE, MSG_FILTERPOOL_CREATED, MSG_FOLDER_INUSE, MSG_GENERIC_E, MSG_GENERIC_E_HELP, MSG_GENERIC_E_TWOPARMS_HELP, MSG_GENERIC_I, MSG_GENERIC_I_HELP, MSG_GENERIC_I_TWOPARMS_HELP, MSG_GENERIC_Q, MSG_GENERIC_Q_HELP, MSG_GENERIC_Q_TWOPARMS_HELP, MSG_GENERIC_U, MSG_GENERIC_U_HELP, MSG_GENERIC_U_TWOPARMS_HELP, MSG_GENERIC_W, MSG_GENERIC_W_HELP, MSG_GENERIC_W_TWOPARMS_HELP, MSG_HOSTNAME_NOTFOUND, MSG_HOSTNAME_VERIFYING, MSG_IMPORT_EXPORT_UNABLE_TO_USE_CONNECTION, MSG_IMPORT_EXPORT_UNEXPECTED_EXCEPTION, MSG_INITIALIZING_SERVER, MSG_LIST_CANCELLED, MSG_LIST_PREFIX, MSG_LOADING_PROFILE_SHOULDBE_ACTIVATED, MSG_LOADING_PROFILE_SHOULDNOTBE_DEACTIVATED, MSG_MOVE_PROGRESS, MSG_MOVECONNECTION_PROGRESS, MSG_MOVECONNECTIONS_PROGRESS, MSG_MOVEFILTER_PROGRESS, MSG_MOVEFILTERPOOL_COMPLETE, MSG_MOVEFILTERPOOL_PROGRESS, MSG_MOVEFILTERPOOLS_PROGRESS, MSG_MOVEFILTERS_PROGRESS, MSG_MOVEFILTERSTRING_PROGRESS, MSG_MOVEFILTERSTRINGS_PROGRESS, MSG_MOVEGENERIC_PROGRESS, MSG_MOVETHINGGENERIC_PROGRESS, MSG_OFFLINE_CANT_CONNECT, MSG_OPERATION_CANCELLED, MSG_OPERATION_DISCONNECTED, MSG_OPERATION_FAILED, MSG_OPERATION_FINISHED, MSG_OPERATION_RUNNING, MSG_OPERTION_STOPPED, MSG_PERCENT_DONE, MSG_PREFIX, MSG_QUERY_PROGRESS, MSG_QUERY_PROPERTIES_PROGRESS, MSG_REMOTE_JAR_EXPORT_OVERWRITE_FILE, MSG_REMOTE_SEARCH_INVALID_REGEX, MSG_RENAMEFILTER_FAILED, MSG_RESOLVE_PROGRESS, MSG_RESTORE_FAILED, MSG_RUN_PROGRESS, MSG_SAVE_CHANGES_PENDING, MSG_SAVE_FAILED, MSG_SAVING_PROGRESS, MSG_SET_PROGRESS, MSG_SET_PROPERTIES_PROGRESS, MSG_STARTING_SERVER_VIA_DAEMON, MSG_STARTING_SERVER_VIA_REXEC, MSG_SYNCHRONIZE_PROGRESS, MSG_TRANSFER_INVALID, MSG_UCMD_INVOCATION_EMPTY, MSG_UDA_LOAD_ERROR, MSG_UDA_ROOTTAG_ERROR, MSG_UFF_PATTERN_EMPTY, MSG_UFF_PATTERN_INVALID_REGEX, MSG_UNDERCONSTRUCTION, MSG_UPDATEFILTER_FAILED, MSG_UPLOAD_FILE_EXISTS, MSG_UPLOAD_PROGRESS, MSG_UPLOADING_PROGRESS, MSG_VALIDATE_ARCHIVE_NAME, MSG_VALIDATE_COMPILELABEL_EMPTY, MSG_VALIDATE_COMPILELABEL_NOTUNIQUE, MSG_VALIDATE_COMPILELABEL_NOTVALID, MSG_VALIDATE_COMPILESTRING_EMPTY, MSG_VALIDATE_COMPILESTRING_NOTVALID, MSG_VALIDATE_CONNECTIONNAME_EMPTY, MSG_VALIDATE_CONNECTIONNAME_NOTUNIQUE, MSG_VALIDATE_CONNECTIONNAME_NOTUNIQUE_OTHERPROFILE, MSG_VALIDATE_CONNECTIONNAME_NOTVALID, MSG_VALIDATE_ENTRY_EMPTY, MSG_VALIDATE_ENTRY_NOTUNIQUE, MSG_VALIDATE_ENTRY_NOTVALID, MSG_VALIDATE_FILENAME_NOTVALID, MSG_VALIDATE_FILTERNAME_EMPTY, MSG_VALIDATE_FILTERNAME_NOTUNIQUE, MSG_VALIDATE_FILTERNAME_NOTVALID, MSG_VALIDATE_FILTERPOOLNAME_EMPTY, MSG_VALIDATE_FILTERPOOLNAME_NOTUNIQUE, MSG_VALIDATE_FILTERPOOLNAME_NOTVALID, MSG_VALIDATE_FILTERSTRING_ALREADYEXISTS, MSG_VALIDATE_FILTERSTRING_DUPLICATES, MSG_VALIDATE_FILTERSTRING_EMPTY, MSG_VALIDATE_FILTERSTRING_NOTUNIQUE, MSG_VALIDATE_FILTERSTRING_NOTVALID, MSG_VALIDATE_FOLDERNAME_NOTVALID, MSG_VALIDATE_HOSTNAME_EMPTY, MSG_VALIDATE_NAME_EMPTY, MSG_VALIDATE_NAME_NOTUNIQUE, MSG_VALIDATE_NAME_NOTVALID, MSG_VALIDATE_NOT_NUMERIC, MSG_VALIDATE_NUMBER_EMPTY, MSG_VALIDATE_NUMBER_NOTVALID, MSG_VALIDATE_NUMBER_OUTOFRANGE, MSG_VALIDATE_PASSWORD_EMPTY, MSG_VALIDATE_PASSWORD_EXPIRED, MSG_VALIDATE_PATH_EMPTY, MSG_VALIDATE_PATH_NOTUNIQUE, MSG_VALIDATE_PATH_NOTVALID, MSG_VALIDATE_PORT_EMPTY, MSG_VALIDATE_PORT_NOTVALID, MSG_VALIDATE_PROFILENAME_EMPTY, MSG_VALIDATE_PROFILENAME_NOTUNIQUE, MSG_VALIDATE_PROFILENAME_NOTVALID, MSG_VALIDATE_PROFILENAME_RESERVED, MSG_VALIDATE_RENAME_EMPTY, MSG_VALIDATE_RENAME_NOTUNIQUE, MSG_VALIDATE_RENAME_NOTVALID, MSG_VALIDATE_RENAME_OLDEQUALSNEW, MSG_VALIDATE_SRCTYPE_EMPTY, MSG_VALIDATE_SRCTYPE_NOTUNIQUE, MSG_VALIDATE_SRCTYPE_NOTVALID, MSG_VALIDATE_UDACMD_EMPTY, MSG_VALIDATE_UDACMD_NOTVALID, MSG_VALIDATE_UDACMT_EMPTY, MSG_VALIDATE_UDACMT_NOTVALID, MSG_VALIDATE_UDANAME_EMPTY, MSG_VALIDATE_UDANAME_NOTUNIQUE, MSG_VALIDATE_UDANAME_NOTVALID, MSG_VALIDATE_UDTNAME_EMPTY, MSG_VALIDATE_UDTNAME_NOTUNIQUE, MSG_VALIDATE_UDTNAME_NOTVALID, MSG_VALIDATE_UDTTYPES_EMPTY, MSG_VALIDATE_UDTTYPES_NOTVALID, MSG_VALIDATE_USERID_EMPTY, MSG_VALIDATE_USERID_NOTVALID, MSG_WIZARD_PAGE_ERROR, NEW_FILE_ACTION, NEW_FILE_WIZARD, NEW_FOLDER_ACTION, NEW_FOLDER_WIZARD, PLUGIN_ID, PREFIX, RESID_PREFIX |
Methods inherited from class com.ibm.etools.systems.core.ui.validators.ValidatorUniqueString |
doMessageSubstitution, getExistingNamesList, getSystemMessage, getSystemMessageText, isValid, isValid, quotedToLowerCase, setCaseSensitive, setErrorMessages, setExistingNamesList, setExistingNamesList, setUseUpperCase, validate |
copyright
public static final String copyright
- See Also:
- Constant Field Values
msg_Invalid
protected SystemMessage msg_Invalid
workspace
protected IWorkspace workspace
isFileName
protected boolean isFileName
isFolderName
protected boolean isFolderName
ValidatorFileFilterString
public ValidatorFileFilterString(RemoteFileSubSystemFactory ssFactory,
Vector existingList)
- Constructor accepting a Vector for the list of existing names.
- Parameters:
ssFactory
- - The remote subsystem factory we are validating filter strings inexistingList
- - A vector containing list of existing filter names to compare against.
Note that toString() is used to get the string from each item.
ValidatorFileFilterString
public ValidatorFileFilterString(RemoteFileSubSystemFactory ssFactory,
String[] existingList)
- Constructor accepting an Array for the list of existing names.
- Parameters:
ssFactory
- - The remote subsystem factory we are validating filter strings inexistingList
- - An array containing list of existing strings to compare against.
ValidatorFileFilterString
public ValidatorFileFilterString(RemoteFileSubSystemFactory ssFactory)
- Use this constructor when the name need not be unique, and you just want
the syntax checking.
- Parameters:
ssFactory
- - The remote subsystem factory we are validating filter strings in
setErrorMessages
public void setErrorMessages(SystemMessage msg_Empty,
SystemMessage msg_NonUnique,
SystemMessage msg_Invalid)
- Supply your own error message text. By default, messages from SystemPlugin resource bundle are used.
setIsFileName
public void setIsFileName(boolean is)
- Call this before calling isValid!
Specify true if this is a file name filter
- See Also:
setIsFolderName(boolean)
setIsFolderName
public void setIsFolderName(boolean is)
- Call this before calling isValid!
Specify true if this is a folder name filter
- See Also:
setIsFileName(boolean)
isSyntaxOk
public SystemMessage isSyntaxOk(String newText)
- Validate each character.
Override of parent method.
Override yourself to refine the error checking.
- Overrides:
isSyntaxOk
in class ValidatorUniqueString
getFileNameValidator
protected ValidatorFileName getFileNameValidator()
- Overridable extension point to get basic file name validator
By default, queries it from the file subsystem factory
getFolderNameValidator
protected ValidatorFolderName getFolderNameValidator()
- Overridable extension point to get basic folder name validator
By default, queries it from the file subsystem factory
isCaseSensitive
protected boolean isCaseSensitive(RemoteFileSubSystemFactory ssFactory)
- Return true if case sensitive, false it not.
By default, return ssFactory.isUnixStyle()
getMaximumNameLength
public int getMaximumNameLength()
- Return the max length for this file or folder name
- Specified by:
getMaximumNameLength
in interface ISystemValidator
- Overrides:
getMaximumNameLength
in class ValidatorUniqueString
toString
public String toString()
- Overrides:
toString
in class ValidatorUniqueString
Copyright © 2005 IBM Corp. All Rights Reserved.
Note: This documentation is for part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.