Constructor
new FileSystemBlobStore(storeConfig, appInstance, sessionInstance, storeConfig)
Arguments:
Members
fullStorePath
Normalized path to the store root
Methods
doDeletion(attribute, ID, blobInfo)
Arguments:
-
attribute
(UBEntityAttribute)
-
ID
(Number)
-
blobInfo
(BlobStoreItem)
fillResponse(requestParams, blobInfo, req, resp) → Boolean
Fill HTTP response for getDocument request
Arguments:
-
requestParams
(BlobStoreRequest)
-
blobInfo
(BlobStoreItem)
 Document metadata. Not used for dirty requests
-
req
(THTTPRequest)
-
resp
(THTTPResponse)
genNewPlacement(attribute, dirtyItem, ID) → Object
protected
Calculate a relative path & file name for a new BLOB item.
If new folder dose not exists - create it
Arguments:
-
attribute
(UBEntityAttribute)
-
dirtyItem
(BlobStoreItem)
-
ID
(Number)
getContent(request, blobInfo, optionsopt) → String|ArrayBuffer
Retrieve BLOB content from blob store.
Arguments:
-
request
(BlobStoreRequest)
-
blobInfo
(BlobStoreItem)
 JSON retrieved from a DB.
-
[options]
(Object)
Properties
getPermanentFileName(blobItem, requestopt) → String
protected
For file based store:
- store.path + relativePath + fileName
Arguments:
-
blobItem
(BlobStoreItem)
-
[request]
(BlobStoreRequest)
 Optional request to get a revision
persist(attribute, ID, dirtyItem, newRevision) → BlobStoreItem|null
Move content defined by dirtyItem
from temporary to permanent store.
TIPS: in v0 (UB<5) if file updated then implementation takes a store from old item.
This raise a problem - old store may be in archive state (readonly)
So in UB5 we change implementation to use a store defined in the attribute for new items
Return a new attribute content which describe a place of BLOB in permanent store
Arguments:
-
attribute
(UBEntityAttribute)
-
ID
(Number)
-
dirtyItem
(BlobStoreItem)
-
newRevision
(number)
saveContentToTempStore(request, attribute, content) → BlobStoreItem
Arguments:
-
request
(BlobStoreRequest)
 Request params
-
attribute
(UBEntityAttribute)
-
content
(ArrayBuffer)
doDeletion(attribute, ID, blobInfo)
Arguments:
-
attribute
(UBEntityAttribute)
-
ID
(Number)
-
blobInfo
(BlobStoreItem)
fillResponse(requestParams, blobInfo, req, resp) → Boolean
Fill HTTP response for getDocument request
Arguments:
-
requestParams
(BlobStoreRequest)
-
blobInfo
(BlobStoreItem)
 Document metadata. Not used for dirty requests -
req
(THTTPRequest)
-
resp
(THTTPResponse)
genNewPlacement(attribute, dirtyItem, ID) → Object protected
Calculate a relative path & file name for a new BLOB item.
If new folder dose not exists - create it
Arguments:
-
attribute
(UBEntityAttribute)
-
dirtyItem
(BlobStoreItem)
-
ID
(Number)
getContent(request, blobInfo, optionsopt) → String|ArrayBuffer
Retrieve BLOB content from blob store.
Arguments:
-
request
(BlobStoreRequest)
-
blobInfo
(BlobStoreItem)
 JSON retrieved from a DB. -
[options]
(Object)
Properties
getPermanentFileName(blobItem, requestopt) → String protected
For file based store:
- store.path + relativePath + fileName
Arguments:
-
blobItem
(BlobStoreItem)
-
[request]
(BlobStoreRequest)
 Optional request to get a revision
persist(attribute, ID, dirtyItem, newRevision) → BlobStoreItem|null
Move content defined by
dirtyItem
from temporary to permanent store.
TIPS: in v0 (UB<5) if file updated then implementation takes a store from old item.
This raise a problem - old store may be in archive state (readonly)
So in UB5 we change implementation to use a store defined in the attribute for new items
Return a new attribute content which describe a place of BLOB in permanent store
Arguments:
-
attribute
(UBEntityAttribute)
-
ID
(Number)
-
dirtyItem
(BlobStoreItem)
-
newRevision
(number)
saveContentToTempStore(request, attribute, content) → BlobStoreItem
Arguments:
-
request
(BlobStoreRequest)
 Request params -
attribute
(UBEntityAttribute)
-
content
(ArrayBuffer)