|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.pentaho.platform.engine.core.system.PentahoBase org.pentaho.platform.engine.services.PentahoMessenger org.pentaho.platform.repository.solution.SolutionRepositoryBase org.pentaho.platform.repository.solution.filebased.FileBasedSolutionRepository
public class FileBasedSolutionRepository
Field Summary |
---|
Fields inherited from class org.pentaho.platform.engine.core.system.PentahoBase |
---|
EMPTYLOGID, LOGID_MASK1, LOGID_MASK2, LOGID_SEPARATOR |
Fields inherited from interface org.pentaho.platform.api.repository.ISolutionRepository |
---|
ACTION_ADMIN, ACTION_CREATE, ACTION_DELETE, ACTION_EXECUTE, ACTION_SHARE, ACTION_SUBSCRIBE, ACTION_UPDATE, FILE_ADD_FAILED, FILE_ADD_INVALID_PUBLISH_PASSWORD, FILE_ADD_INVALID_USER_CREDENTIALS, FILE_ADD_SUCCESSFUL, FILE_EXISTS, INDEX_FILENAME, REPOSITORY_SERVICE_CACHE_REGION, SEPARATOR |
Fields inherited from interface org.pentaho.platform.api.engine.ILogger |
---|
ACTIVITY_LOG, DEBUG, ERROR, FATAL, INFO, INSTANCE_LOG, SESSION_LOG, SOLUTION_LOG, TRACE, UNKNOWN, WARN |
Constructor Summary | |
---|---|
FileBasedSolutionRepository()
|
Method Summary | |
---|---|
void |
addPermission(ISolutionFile file,
IPermissionRecipient recipient,
IPermissionMask permission)
Adds to the ACL associated with aFile . |
IActionSequence |
getActionSequence(String solutionName,
String actionPath,
String sequenceName,
int localLoggingLevel,
int actionOperation)
Retrieves the action sequence from the repository. |
String[] |
getAllActionSequences(int actionOperation)
An array of Strings where each string is the fully qualified path of every *.xaction contained in the repository. |
ClassLoader |
getClassLoader(String path)
Returns an appropriate class loader for a specific path |
Map<IPermissionRecipient,IPermissionMask> |
getEffectivePermissions(ISolutionFile file)
Returns the ACL for the given file. |
org.dom4j.Document |
getNavigationUIDocument(String solution,
String path,
int actionOperation)
Get an XML document that describes the structure of the solution repository. |
Map<IPermissionRecipient,IPermissionMask> |
getPermissions(ISolutionFile file)
Returns the ACL for the given file. |
String |
getRepositoryName()
|
org.dom4j.Document |
getSolutionDocument(String documentPath,
int actionOperation)
|
org.dom4j.Document |
getSolutionDocument(String solutionName,
String actionPath,
String actionName,
int actionOperation)
|
long |
getSolutionFileLastModified(String path,
int actionOperation)
Returns a long that represents the last time this file was modified |
org.dom4j.Document |
getSolutions(int actionOperation)
Gets an XML Document representing all the solutions and all the files within all the solutions |
org.dom4j.Document |
getSolutions(String solutionName,
String pathName,
int actionOperation,
boolean visibleOnly)
Gets an XML Document representing all the files within a certain path within a solution |
org.dom4j.Document |
getSolutionStructure(int actionOperation)
Returns an XML document that represents the parent/child relationship of the current solution repository |
org.dom4j.Document |
getSolutionTree(int actionOperation)
Returns an XML document that defines the entire solution tree. |
org.dom4j.Document |
getSolutionTree(int actionOperation,
ISolutionFilter filter)
|
boolean |
hasAccess(ISolutionFile file,
int actionOperation)
No access control is enforced in this implementation. |
void |
init()
|
int |
publish(String baseUrl,
String path,
String fileName,
byte[] data,
boolean overwrite)
Put a file into the solution repo. |
int |
publish(String baseUrl,
String path,
String fileName,
File f,
boolean overwrite)
Put a file into the solution repo. |
void |
reloadSolutionRepository(IPentahoSession localSession,
int localLoggingLevel)
Loads or reloads a solution repository after a structure change. |
boolean |
resourceExists(String solutionPath,
int actionOperation)
Returns a true if the specified resource exists. |
long |
resourceSize(String solutionPath,
int actionOperation)
Returns the size of the specfied resource. |
void |
setPermissions(ISolutionFile file,
Map<IPermissionRecipient,IPermissionMask> acl)
Replaces the ACL on aFile . |
void |
share(ISolutionFile file,
List<IPermissionRecipient> shareRecipient)
Share file with recipient. |
boolean |
solutionSynchronizationSupported()
|
boolean |
supportsAccessControls()
|
boolean |
synchronizeSolutionWithSolutionSource(IPentahoSession pSession)
For ISolutionRepository implementations that have a source and a destination (for example, DBBasedSolutionRepository which has a file-system source and a DB destination) this is the entry point that allows synchronization. |
Methods inherited from class org.pentaho.platform.engine.services.PentahoMessenger |
---|
debug, debug, error, error, error, fatal, fatal, getMessages, getUserString, info, info, setMessages, trace, trace, warn, warn |
Methods inherited from class org.pentaho.platform.engine.core.system.PentahoBase |
---|
genLogIdFromInfo, genLogIdFromInfo, genLogIdFromSession, getLoggingLevel, getLogId, getObjectName, setLoggingLevel, setLogId |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.pentaho.platform.api.repository.ISolutionRepository |
---|
getMessages, setMessages |
Methods inherited from interface org.pentaho.platform.api.engine.ILogger |
---|
debug, debug, error, error, fatal, fatal, getLoggingLevel, info, info, setLoggingLevel, trace, trace, warn, warn |
Constructor Detail |
---|
public FileBasedSolutionRepository()
Method Detail |
---|
public void init()
public ClassLoader getClassLoader(String path)
ISolutionRepository
public IActionSequence getActionSequence(String solutionName, String actionPath, String sequenceName, int localLoggingLevel, int actionOperation)
ISolutionRepository
null
if the
requested action seqeuence is not found.
solutionName
- The name of the solution - like the root folderactionPath
- The relative path (from the solution) of where the file is storedsequenceName
- The name of the action sequencelocalLoggingLevel
- The level at which to log messagesactionOperation
- Whether the action sequence is being retrieved for administration or execution
public org.dom4j.Document getSolutionDocument(String solutionName, String actionPath, String actionName, int actionOperation)
public org.dom4j.Document getSolutionDocument(String documentPath, int actionOperation)
public void reloadSolutionRepository(IPentahoSession localSession, int localLoggingLevel)
ISolutionRepository
localSession
- - The session associated with this solution repositorylocalLoggingLevel
- - The requested level of loggingpublic org.dom4j.Document getSolutions(String solutionName, String pathName, int actionOperation, boolean visibleOnly)
ISolutionRepository
solutionName
- The name of the solution to getpathName
- The path from which to retrieveactionOperation
- Indicates what the list will be used for - execution or administration
public org.dom4j.Document getSolutions(int actionOperation)
ISolutionRepository
getSolutions
in interface ISolutionRepository
getSolutions
in class SolutionRepositoryBase
actionOperation
- Indicates what the list will be used for - execution or administration
public org.dom4j.Document getSolutionStructure(int actionOperation)
ISolutionRepository
public org.dom4j.Document getSolutionTree(int actionOperation, ISolutionFilter filter)
filter
- an implementation of a ISolutionFilter that determines which files will be returned
public org.dom4j.Document getSolutionTree(int actionOperation)
ISolutionRepository
public boolean resourceExists(String solutionPath, int actionOperation)
ISolutionRepository
solutionPath
- - path to the resourceactionOperation
- - Type of action operation to be performed
public long resourceSize(String solutionPath, int actionOperation)
ISolutionRepository
solutionPath
- - path to the resourceactionOperation
- - Type of action operation to be performed
public String[] getAllActionSequences(int actionOperation)
ISolutionRepository
actionOperation
- - Type of action operation to be performed
public long getSolutionFileLastModified(String path, int actionOperation)
ISolutionRepository
actionOperation
- - Type of action operation to be performedpublic org.dom4j.Document getNavigationUIDocument(String solution, String path, int actionOperation)
ISolutionRepository
getNavigationUIDocument
in interface ISolutionRepository
getNavigationUIDocument
in class SolutionRepositoryBase
solution
- String The name of the solution. If this is empty (null or ""), and path
is empty, return the root of the document. Otherwise return a document that
starts at the node specified by the solution and path in the solutionpath
- String The path of the interested folder. See notes for
parameter solution.actionOperation
- - Type of action operation to be performed
public String getRepositoryName()
public boolean supportsAccessControls()
public boolean hasAccess(ISolutionFile file, int actionOperation)
file
- domain instance to checkactionOperation
- permission requested (A constant from ISolutionRepository.)
supportsAccessControls
public int publish(String baseUrl, String path, String fileName, byte[] data, boolean overwrite) throws PentahoAccessControlException
ISolutionRepository
PentahoAccessControlException
public int publish(String baseUrl, String path, String fileName, File f, boolean overwrite) throws PentahoAccessControlException
ISolutionRepository
PentahoAccessControlException
public void share(ISolutionFile file, List<IPermissionRecipient> shareRecipient)
ISolutionRepository
file
- file to shareshareRecipient
- the users or roles with which to share (aka share-ees)public void addPermission(ISolutionFile file, IPermissionRecipient recipient, IPermissionMask permission)
ISolutionRepository
aFile
.
file
- file whose ACL is to be modifiedrecipient
- recipient of the permissionpermission
- right to an action on this file by this userpublic void setPermissions(ISolutionFile file, Map<IPermissionRecipient,IPermissionMask> acl) throws PentahoAccessControlException
ISolutionRepository
aFile
.
file
- file whose ACL is to be modifiedacl
- new ACL
PentahoAccessControlException
public Map<IPermissionRecipient,IPermissionMask> getPermissions(ISolutionFile file)
ISolutionRepository
file
- file whose ACL is to be returned
public Map<IPermissionRecipient,IPermissionMask> getEffectivePermissions(ISolutionFile file)
ISolutionRepository
file
- file whose ACL is to be returned
public boolean synchronizeSolutionWithSolutionSource(IPentahoSession pSession)
ISolutionRepository
public boolean solutionSynchronizationSupported()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |