public class KettleDatabaseRepositorySecurityProvider extends BaseRepositorySecurityProvider implements RepositorySecurityProvider, RepositorySecurityManager, RepositorySecurityUserValidator
| Constructor and Description | 
|---|
KettleDatabaseRepositorySecurityProvider(KettleDatabaseRepository repository,
                                        RepositoryMeta repositoryMeta,
                                        IUser userInfo)  | 
| Modifier and Type | Method and Description | 
|---|---|
boolean | 
allowsVersionComments(String fullPath)  | 
IUser | 
constructUser()  | 
void | 
deleteUsers(List<IUser> users)  | 
void | 
delUser(org.pentaho.di.repository.ObjectId id_user)  | 
void | 
delUser(String name)  | 
List<String> | 
getAllRoles()
Retrieves all roles in the system 
 | 
List<String> | 
getAllUsers()
Retrieves all users in the system 
 | 
org.pentaho.di.repository.ObjectId | 
getUserID(String login)  | 
org.pentaho.di.repository.ObjectId[] | 
getUserIDs()  | 
String[] | 
getUserLogins()  | 
List<IUser> | 
getUsers()  | 
boolean | 
isLockingPossible()  | 
boolean | 
isManaged()  | 
boolean | 
isReadOnly()  | 
boolean | 
isVersionCommentMandatory()  | 
boolean | 
isVersioningEnabled(String fullPath)
Determines whether versioning should be enabled in the UI for the given fully qualified file/path. 
 | 
IUser | 
loadUserInfo(String login)  | 
void | 
normalizeUserInfo(IUser user)
Performs normalization over  
user due to validation rules.
 Note: normalized is not guaranteed to pass validation rules | 
void | 
renameUser(org.pentaho.di.repository.ObjectId id_user,
          String newname)  | 
void | 
saveUserInfo(IUser userInfo)
This method creates new user after all validations have been done. 
 | 
void | 
setUsers(List<IUser> users)  | 
void | 
updateUser(IUser user)  | 
void | 
validateAction(RepositoryOperation... operations)
Validates the supplied operation. 
 | 
boolean | 
validateUserInfo(IUser user)
Validates  
user and returns true if all its data is valid.Note: this method performs fail-fast approach and does not return any details.  | 
getRepositoryMeta, getUserInfo, setRepositoryMetaequals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetUserInfopublic KettleDatabaseRepositorySecurityProvider(KettleDatabaseRepository repository, RepositoryMeta repositoryMeta, IUser userInfo)
repository - userInfo - public boolean isReadOnly()
isReadOnly in interface RepositorySecurityProviderpublic boolean isLockingPossible()
isLockingPossible in interface RepositorySecurityProviderpublic boolean allowsVersionComments(String fullPath)
allowsVersionComments in interface RepositorySecurityProviderpublic boolean isVersionCommentMandatory()
isVersionCommentMandatory in interface RepositorySecurityProviderpublic IUser loadUserInfo(String login) throws org.pentaho.di.core.exception.KettleException
loadUserInfo in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic void saveUserInfo(IUser userInfo) throws org.pentaho.di.core.exception.KettleException
saveUserInfo in interface RepositorySecurityManageruserInfo - user's infoorg.pentaho.di.core.exception.KettleExceptionIllegalArgumentException - if userInfo.getObjectId() != nullpublic void validateAction(RepositoryOperation... operations) throws org.pentaho.di.core.exception.KettleException, org.pentaho.di.core.exception.KettleSecurityException
RepositorySecurityProvidervalidateAction in interface RepositorySecurityProvidervalidateAction in class BaseRepositorySecurityProviderorg.pentaho.di.core.exception.KettleSecurityException - in case the provided user is not know or the password is incorrectorg.pentaho.di.core.exception.KettleException - in case the action couldn't be validated because of an unexpected problem.public void delUser(org.pentaho.di.repository.ObjectId id_user)
             throws org.pentaho.di.core.exception.KettleException
delUser in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic org.pentaho.di.repository.ObjectId getUserID(String login) throws org.pentaho.di.core.exception.KettleException
getUserID in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic org.pentaho.di.repository.ObjectId[] getUserIDs()
                                                throws org.pentaho.di.core.exception.KettleException
getUserIDs in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic String[] getUserLogins() throws org.pentaho.di.core.exception.KettleException
getUserLogins in interface RepositorySecurityProviderorg.pentaho.di.core.exception.KettleExceptionpublic void renameUser(org.pentaho.di.repository.ObjectId id_user,
                       String newname)
                throws org.pentaho.di.core.exception.KettleException
renameUser in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic void deleteUsers(List<IUser> users) throws org.pentaho.di.core.exception.KettleException
deleteUsers in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic List<IUser> getUsers() throws org.pentaho.di.core.exception.KettleException
getUsers in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic void setUsers(List<IUser> users) throws org.pentaho.di.core.exception.KettleException
setUsers in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic void delUser(String name) throws org.pentaho.di.core.exception.KettleException
delUser in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic void updateUser(IUser user) throws org.pentaho.di.core.exception.KettleException
updateUser in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic IUser constructUser() throws org.pentaho.di.core.exception.KettleException
constructUser in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic List<String> getAllRoles() throws org.pentaho.di.core.exception.KettleException
RepositorySecurityProvidergetAllRoles in interface RepositorySecurityProviderorg.pentaho.di.core.exception.KettleSecurityException - in case anything went wrongorg.pentaho.di.core.exception.KettleExceptionpublic List<String> getAllUsers() throws org.pentaho.di.core.exception.KettleException
RepositorySecurityProvidergetAllUsers in interface RepositorySecurityProviderorg.pentaho.di.core.exception.KettleSecurityException - in case anything went wrongorg.pentaho.di.core.exception.KettleExceptionpublic boolean isManaged()
                  throws org.pentaho.di.core.exception.KettleException
isManaged in interface RepositorySecurityManagerorg.pentaho.di.core.exception.KettleExceptionpublic boolean isVersioningEnabled(String fullPath)
RepositorySecurityProviderisVersioningEnabled in interface RepositorySecurityProviderpublic boolean validateUserInfo(IUser user)
RepositorySecurityUserValidatoruser and returns true if all its data is valid.validateUserInfo in interface RepositorySecurityUserValidatoruser - user's infotrue or false depending on whether or not user's info is validpublic void normalizeUserInfo(IUser user)
RepositorySecurityUserValidatoruser due to validation rules.
 Note: normalized is not guaranteed to pass validation rulesnormalizeUserInfo in interface RepositorySecurityUserValidatoruser - user's info