Class KettleFileRepositorySecurityProvider

java.lang.Object
org.pentaho.di.repository.filerep.KettleFileRepositorySecurityProvider
All Implemented Interfaces:
IRepositoryService, RepositorySecurityProvider

public class KettleFileRepositorySecurityProvider extends Object implements RepositorySecurityProvider
  • Constructor Details

    • KettleFileRepositorySecurityProvider

      public KettleFileRepositorySecurityProvider(RepositoryMeta repositoryMeta)
  • Method Details

    • getUserInfo

      public UserInfo getUserInfo()
      Specified by:
      getUserInfo in interface RepositorySecurityProvider
      Returns:
      the user information set on the security provider
    • getRepositoryMeta

      public RepositoryMeta getRepositoryMeta()
    • validateAction

      public void validateAction(RepositoryOperation... operations) throws org.pentaho.di.core.exception.KettleException, org.pentaho.di.core.exception.KettleSecurityException
      Description copied from interface: RepositorySecurityProvider
      Validates the supplied operation.
      Specified by:
      validateAction in interface RepositorySecurityProvider
      Throws:
      org.pentaho.di.core.exception.KettleSecurityException - in case the provided user is not know or the password is incorrect
      org.pentaho.di.core.exception.KettleException - in case the action couldn't be validated because of an unexpected problem.
    • isReadOnly

      public boolean isReadOnly()
      Specified by:
      isReadOnly in interface RepositorySecurityProvider
      Returns:
      true if the repository or the user is read only
    • isLockingPossible

      public boolean isLockingPossible()
      Specified by:
      isLockingPossible in interface RepositorySecurityProvider
      Returns:
      true if this repository supports file locking and if the user is allowed to lock a file
    • allowsVersionComments

      public boolean allowsVersionComments(String fullPath)
      Specified by:
      allowsVersionComments in interface RepositorySecurityProvider
      Returns:
      true if the repository supports revisions AND if it is possible to give version comments
    • isVersionCommentMandatory

      public boolean isVersionCommentMandatory()
      Specified by:
      isVersionCommentMandatory in interface RepositorySecurityProvider
      Returns:
      true if version comments are mandatory if allowed.
    • getAllRoles

      public List<String> getAllRoles() throws org.pentaho.di.core.exception.KettleException
      Description copied from interface: RepositorySecurityProvider
      Retrieves all roles in the system
      Specified by:
      getAllRoles in interface RepositorySecurityProvider
      Returns:
      list of role
      Throws:
      org.pentaho.di.core.exception.KettleSecurityException - in case anything went wrong
      org.pentaho.di.core.exception.KettleException
    • getAllUsers

      public List<String> getAllUsers() throws org.pentaho.di.core.exception.KettleException
      Description copied from interface: RepositorySecurityProvider
      Retrieves all users in the system
      Specified by:
      getAllUsers in interface RepositorySecurityProvider
      Returns:
      list of username
      Throws:
      org.pentaho.di.core.exception.KettleSecurityException - in case anything went wrong
      org.pentaho.di.core.exception.KettleException
    • getUserLogins

      public String[] getUserLogins() throws org.pentaho.di.core.exception.KettleException
      Specified by:
      getUserLogins in interface RepositorySecurityProvider
      Throws:
      org.pentaho.di.core.exception.KettleException
    • isVersioningEnabled

      public boolean isVersioningEnabled(String fullPath)
      Description copied from interface: RepositorySecurityProvider
      Determines whether versioning should be enabled in the UI for the given fully qualified file/path. If set to false, the repository may still support versioning, but the versioning will not be apparent in the UI.
      Specified by:
      isVersioningEnabled in interface RepositorySecurityProvider
      Returns:
      true if version are enabled, false if they if are not