Package com.isomorphic.datasource
Class DSFileSpec
java.lang.Object
com.isomorphic.datasource.DSFileSpec
Specifies a file stored in a DataSource.
-
Constructor Summary
ConstructorsConstructorDescriptionDSFileSpec
(String url) Construct a DSFileSpec from a URL-like string.DSFileSpec
(String url, DSRequest request) Construct a DSFileSpec from a URL-like string.DSFileSpec
(String dsName, String dsFileName) Specify a file with the given DataSource name and filename, without specifying a fileType or fileFormat.DSFileSpec
(String dsName, String dsFileName, String dsFileType) Specify a file with the given DataSource name, filename, and fileType, without specifying a fileFormat.DSFileSpec
(String dsName, String dsFileName, String dsFileType, String dsFileFormat) Specify a file with the given DataSource name, filename, fileType, and fileFormat.DSFileSpec
(String dsName, String dsFileName, String dsFileType, String dsFileFormat, DSRequest request) Specify a file with the given DataSource name, filename, fileType, fileFormat and requestContext.DSFileSpec
(String dsName, String dsFileName, String dsFileType, String dsFileFormat, String tenantId) Specify a file with the given DataSource name, filename, fileType, fileFormat, and tenant ID.DSFileSpec
(String dsName, String dsFileName, String dsFileType, String dsFileFormat, String tenantId, DSRequest request) Specify a file with the given DataSource name, filename, fileType, fileFormat, tenant ID, and requestContext.DSFileSpec
(String dsName, Map record) Specify a file from a dsName and a Map specifying one or more of fileName, fileType and fileFormat.DSFileSpec
(String dsName, Map record, DSRequest request) Specify a file from a dsName and a Map specifying one or more of fileName, fileType and fileFormat.DSFileSpec
(Map record) Specify a file from a Map specifying one or more of fileName, fileType and fileFormat. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Whether or not when a tenant ID has been specified for this fileSpec, the criteria also allows the tenant ID to be null.boolean
boolean
Does the DataSource associated with this DSFileSpec have a Tenant ID field?void
setDataSourceName
(String name) void
setFileFormat
(String format) void
setFileName
(String name) void
setFileTenantId
(DSRequest request) Sets the tenant ID based on the supplied DSRequest.void
setFileTenantId
(String tenantId) void
setFileType
(String type) void
setMatchNullTenantId
(boolean matchNullTenantId) Setter for null tenant ID matching mode.void
setOwnerId
(String ownerId) void
setRequestContext
(DSRequest context)
-
Constructor Details
-
DSFileSpec
Specify a file with the given DataSource name and filename, without specifying a fileType or fileFormat.- Parameters:
dsName
- The name of the DataSourcedsFileName
- The name of the file, without any extension for type or format
-
DSFileSpec
Specify a file with the given DataSource name, filename, and fileType, without specifying a fileFormat.- Parameters:
dsName
- The name of the DataSourcedsFileName
- The name of the file, without any extension for type or formatdsFileType
- The fileType (e.g. "ds" for datasource)
-
DSFileSpec
Specify a file with the given DataSource name, filename, fileType, and fileFormat.- Parameters:
dsName
- The name of the DataSourcedsFileName
- The name of the file, without any extension for type or formatdsFileType
- The fileType (e.g. "ds" for datasource)dsFileFormat
- The fileFormat (e.g. "xml" or "js")
-
DSFileSpec
public DSFileSpec(String dsName, String dsFileName, String dsFileType, String dsFileFormat, String tenantId) Specify a file with the given DataSource name, filename, fileType, fileFormat, and tenant ID. The tenant ID is available as part of Multi-Tenant DataSource support.- Parameters:
dsName
- The name of the DataSourcedsFileName
- The name of the file, without any extension for type or formatdsFileType
- The fileType (e.g. "ds" for datasource)dsFileFormat
- The fileFormat (e.g. "xml" or "js")tenantId
- The tenant to specify for the file accses
-
DSFileSpec
public DSFileSpec(String dsName, String dsFileName, String dsFileType, String dsFileFormat, DSRequest request) Specify a file with the given DataSource name, filename, fileType, fileFormat and requestContext.- Parameters:
dsName
- The name of the DataSourcedsFileName
- The name of the file, without any extension for type or formatdsFileType
- The fileType (e.g. "ds" for datasource)dsFileFormat
- The fileFormat (e.g. "xml" or "js")request
- The DSRequest which provides security context for this DSFileSpec.
-
DSFileSpec
public DSFileSpec(String dsName, String dsFileName, String dsFileType, String dsFileFormat, String tenantId, DSRequest request) Specify a file with the given DataSource name, filename, fileType, fileFormat, tenant ID, and requestContext. The tenant ID is available as part of Multi-Tenant DataSource support.- Parameters:
dsName
- The name of the DataSourcedsFileName
- The name of the file, without any extension for type or formatdsFileType
- The fileType (e.g. "ds" for datasource)dsFileFormat
- The fileFormat (e.g. "xml" or "js")tenantId
- The tenant to specify for the file accsesrequest
- The DSRequest which provides security context for this DSFileSpec.
-
DSFileSpec
Specify a file from a Map specifying one or more of fileName, fileType and fileFormat.- Parameters:
record
- A Map specifying one or more of fileName, fileType and fileFormat.
-
DSFileSpec
Specify a file from a dsName and a Map specifying one or more of fileName, fileType and fileFormat.- Parameters:
dsName
- The name of the DataSourcerecord
- A Map specifying one or more of fileName, fileType and fileFormat.
-
DSFileSpec
Specify a file from a dsName and a Map specifying one or more of fileName, fileType and fileFormat.- Parameters:
dsName
- The name of the DataSourcerecord
- A Map specifying one or more of fileName, fileType and fileFormat.request
- The DSRequest which provides security context for this DSFileSpec.
-
DSFileSpec
Construct a DSFileSpec from a URL-like string.- Parameters:
url
- URL-like specification for the file.To specify both the dsName and the filename, use a URL that looks like ds://datasourceName/fileName.type.format -- e.g. "ds://projects/bigProject.proj.xml"). Note that the fileType and fileFormat should not have any spaces.
If you want a DSFileSpec that only parses the filename, then just specify the filename, like this "fileName.type.format".
-
DSFileSpec
Construct a DSFileSpec from a URL-like string.- Parameters:
url
- URL-like specification for the file.request
- The DSRequest which provides security context for this DSFileSpec.To specify both the dsName and the filename, use a URL that looks like ds://datasourceName/fileName.type.format -- e.g. "ds://projects/bigProject.proj.xml"). Note that the fileType and fileFormat should not have any spaces.
If you want a DSFileSpec that only parses the filename, then just specify the filename, like this "fileName.type.format".
-
-
Method Details
-
getDataSourceName
- Returns:
- The name of the
DataSource
in which to find the file
-
setDataSourceName
- Parameters:
name
- The name of theDataSource
in which to find the file
-
getRequestContext
- Returns:
- The request which should be consulted for security context when using this DSFileSpec.
-
setRequestContext
- Parameters:
context
- The DSRequest which provides security context for this DSFileSpec.
-
getFileName
- Returns:
- The fileName, without any extension for type or format.
-
setFileName
- Parameters:
name
- The fileName, without any extension for type or format.
-
getFileType
- Returns:
- The fileType, e.g. "ds"
-
setFileType
- Parameters:
type
- The fileType, e.g. "ds"
-
getFileFormat
- Returns:
- The fileFormat, e.g. "xml" or "js"
-
setFileFormat
- Parameters:
format
- The fileFormat, e.g. "xml" or "js"
-
getFileTenantId
- Returns:
- The tenant ID
-
hasFileTenantId
public boolean hasFileTenantId()- Returns:
- Whether fileSpec specifies a tenant ID
-
setFileTenantId
Sets the tenant ID based on the supplied DSRequest. This is different thansetting the request on the fileSpec
, since binding the request to the fileSpec may change the transaction associated with the operation, etc.- Parameters:
request
- request checked for an authenticated tenant ID
-
setFileTenantId
- Parameters:
tenantId
- The tenant ID to use for the file lookup
-
hasFileTenantIdField
public boolean hasFileTenantIdField()Does the DataSource associated with this DSFileSpec have a Tenant ID field?- Returns:
- has a Tenant ID field
-
getMatchNullTenantId
public boolean getMatchNullTenantId()Whether or not when a tenant ID has been specified for this fileSpec, the criteria also allows the tenant ID to be null. This lets a common fallback definition to be provided.- Returns:
- Whether to match null too
-
setMatchNullTenantId
public void setMatchNullTenantId(boolean matchNullTenantId) Setter for null tenant ID matching mode. SeegetMatchNullTenantId()
.- Parameters:
matchNullTenantId
- Whether to match null too
-
getOwnerId
- Returns:
- The ownerId
-
setOwnerId
- Parameters:
ownerId
- The ownerId
-