public class SessionCachingMetadataDomainRepository extends Object implements org.pentaho.metadata.repository.IMetadataDomainRepository, IPentahoMetadataDomainRepositoryExporter, org.pentaho.platform.api.engine.ILogoutListener
IMetadataDomainRepository.| Modifier and Type | Class and Description |
|---|---|
static class |
SessionCachingMetadataDomainRepository.CacheKey
this as a public class so that if necessary someone can get access to a session
key and clear the cache in their own way via javascript rule / etc
|
| Modifier and Type | Field and Description |
|---|---|
static String |
CACHE_REGION
Public so others know where we're caching our objects
|
| Constructor and Description |
|---|
SessionCachingMetadataDomainRepository(org.pentaho.metadata.repository.IMetadataDomainRepository delegate)
Wraps the provided domain repository to provide session-based caching of domains.
|
| Modifier and Type | Method and Description |
|---|---|
void |
flushDomains() |
String |
generateRowLevelSecurityConstraint(org.pentaho.metadata.model.LogicalModel model) |
org.pentaho.metadata.model.Domain |
getDomain(String id) |
Map<String,InputStream> |
getDomainFilesData(String domainId) |
Set<String> |
getDomainIds() |
boolean |
hasAccess(int accessType,
org.pentaho.metadata.model.concept.IConcept aclHolder) |
void |
onLogout(org.pentaho.platform.api.engine.IPentahoSession session) |
void |
reloadDomains() |
void |
removeDomain(String domainId) |
void |
removeModel(String domainId,
String modelId) |
void |
storeDomain(org.pentaho.metadata.model.Domain domain,
boolean overwrite) |
public static String CACHE_REGION
public SessionCachingMetadataDomainRepository(org.pentaho.metadata.repository.IMetadataDomainRepository delegate)
public org.pentaho.metadata.model.Domain getDomain(String id)
getDomain in interface org.pentaho.metadata.repository.IMetadataDomainRepositorypublic void reloadDomains()
reloadDomains in interface org.pentaho.metadata.repository.IMetadataDomainRepositorypublic void flushDomains()
flushDomains in interface org.pentaho.metadata.repository.IMetadataDomainRepositorypublic void removeDomain(String domainId)
removeDomain in interface org.pentaho.metadata.repository.IMetadataDomainRepositorypublic void storeDomain(org.pentaho.metadata.model.Domain domain,
boolean overwrite)
throws org.pentaho.metadata.repository.DomainIdNullException,
org.pentaho.metadata.repository.DomainAlreadyExistsException,
org.pentaho.metadata.repository.DomainStorageException
storeDomain in interface org.pentaho.metadata.repository.IMetadataDomainRepositoryorg.pentaho.metadata.repository.DomainIdNullExceptionorg.pentaho.metadata.repository.DomainAlreadyExistsExceptionorg.pentaho.metadata.repository.DomainStorageExceptionpublic void removeModel(String domainId, String modelId) throws org.pentaho.metadata.repository.DomainIdNullException, org.pentaho.metadata.repository.DomainStorageException
removeModel in interface org.pentaho.metadata.repository.IMetadataDomainRepositoryorg.pentaho.metadata.repository.DomainIdNullExceptionorg.pentaho.metadata.repository.DomainStorageExceptionpublic Set<String> getDomainIds()
getDomainIds in interface org.pentaho.metadata.repository.IMetadataDomainRepositorypublic String generateRowLevelSecurityConstraint(org.pentaho.metadata.model.LogicalModel model)
generateRowLevelSecurityConstraint in interface org.pentaho.metadata.repository.IMetadataDomainRepositorypublic boolean hasAccess(int accessType,
org.pentaho.metadata.model.concept.IConcept aclHolder)
hasAccess in interface org.pentaho.metadata.repository.IMetadataDomainRepositorypublic void onLogout(org.pentaho.platform.api.engine.IPentahoSession session)
onLogout in interface org.pentaho.platform.api.engine.ILogoutListenerpublic Map<String,InputStream> getDomainFilesData(String domainId)
getDomainFilesData in interface IPentahoMetadataDomainRepositoryExporter