Package com.simplicite.util.tools
Class CloudStorageTool
- java.lang.Object
-
- com.simplicite.util.tools.CloudStorageTool
-
- All Implemented Interfaces:
java.lang.AutoCloseable
public class CloudStorageTool extends java.lang.Object implements java.lang.AutoCloseable
Cloud storage toolbox.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
AWS_S3
AWS S3 storagestatic java.lang.String
AZUREBLOB
AzureBlob storagestatic java.lang.String
GOOGLE_CLOUD_STORAGE
Google Cloud storagestatic java.lang.String
OPENSTACK_SWIFT
OpenStack Swift storagestatic java.lang.String
S3
Other S3-like storage
-
Constructor Summary
Constructors Constructor Description CloudStorageTool(Grant g, org.json.JSONObject config)
ConstructorCloudStorageTool(org.json.JSONObject config)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closevoid
delete(java.lang.String name)
Delete file from storageorg.json.JSONObject
get(java.lang.String name)
Get file from storageorg.json.JSONObject
get(java.lang.String name, boolean read)
Get file from storagejava.lang.String
getContainer()
Get containerGrant
getGrant()
Get grantjava.lang.String
getProvider()
Get providerjava.lang.String
getRegion()
Get regionorg.json.JSONArray
list()
List file from storageorg.json.JSONArray
list(boolean recursive)
List file from storagejava.io.InputStream
openStream(java.lang.String name)
Get file stream from storagejava.lang.String
put(java.lang.String name, java.lang.String mime, long length, java.io.InputStream is)
Put file in storagejava.lang.String
put(org.json.JSONObject file)
Put file in storage
- with an absolute file path to stream the data
- or with a content (needs more memory)void
setGrant(Grant grant)
Set grant
-
-
-
Field Detail
-
AWS_S3
public static final java.lang.String AWS_S3
AWS S3 storage- See Also:
- Constant Field Values
-
S3
public static final java.lang.String S3
Other S3-like storage- See Also:
- Constant Field Values
-
GOOGLE_CLOUD_STORAGE
public static final java.lang.String GOOGLE_CLOUD_STORAGE
Google Cloud storage- See Also:
- Constant Field Values
-
AZUREBLOB
public static final java.lang.String AZUREBLOB
AzureBlob storage- See Also:
- Constant Field Values
-
OPENSTACK_SWIFT
public static final java.lang.String OPENSTACK_SWIFT
OpenStack Swift storage- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CloudStorageTool
public CloudStorageTool(org.json.JSONObject config) throws java.lang.Exception
Constructor- Parameters:
config
- Configuration- Throws:
java.lang.Exception
-
CloudStorageTool
public CloudStorageTool(Grant g, org.json.JSONObject config) throws java.lang.Exception
Constructor- Parameters:
g
- Grantconfig
- Configuration- Throws:
java.lang.Exception
-
-
Method Detail
-
getGrant
public Grant getGrant()
Get grant- Returns:
- Grant
-
setGrant
public void setGrant(Grant grant)
Set grant- Parameters:
grant
- Grant
-
getProvider
public java.lang.String getProvider()
Get provider- Returns:
- Provider
-
getRegion
public java.lang.String getRegion()
Get region
-
getContainer
public java.lang.String getContainer()
Get container
-
put
public java.lang.String put(org.json.JSONObject file) throws java.lang.Exception
Put file in storage
- with an absolute file path to stream the data
- or with a content (needs more memory)- Parameters:
file
- File description (name, path) or (name, mime, content, encoding)- Throws:
java.lang.Exception
-
put
public java.lang.String put(java.lang.String name, java.lang.String mime, long length, java.io.InputStream is) throws java.lang.Exception
Put file in storage- Parameters:
name
- File namemime
- Mime typeis
- InputStream- Throws:
java.lang.Exception
-
list
public org.json.JSONArray list() throws java.lang.Exception
List file from storage- Returns:
- Files data as JSON array
- Throws:
java.lang.Exception
-
list
public org.json.JSONArray list(boolean recursive) throws java.lang.Exception
List file from storage- Parameters:
recursive
- Recursive?- Returns:
- Files data as JSON array
- Throws:
java.lang.Exception
-
get
public org.json.JSONObject get(java.lang.String name) throws java.lang.Exception
Get file from storage- Parameters:
name
- File name- Throws:
java.lang.Exception
-
get
public org.json.JSONObject get(java.lang.String name, boolean read) throws java.lang.Exception
Get file from storage- Parameters:
name
- File nameread
- Read content?- Throws:
java.lang.Exception
-
openStream
public java.io.InputStream openStream(java.lang.String name) throws java.lang.Exception
Get file stream from storage- Parameters:
name
- File name- Throws:
java.lang.Exception
-
delete
public void delete(java.lang.String name) throws java.lang.Exception
Delete file from storage- Parameters:
name
- File name- Throws:
java.lang.Exception
-
close
public void close()
Close- Specified by:
close
in interfacejava.lang.AutoCloseable
-
-