public class StateResource
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected static java.nio.charset.Charset |
FILE_ENCODING |
protected static java.lang.String |
FILE_NAME_PREFIX |
protected static int |
FILE_SIZE |
protected static java.lang.String |
NO_FILE_ERROR_MESSAGE |
protected static java.lang.String |
UPLOAD_TOO_BIG_ERROR_MESSAGE |
Constructor and Description |
---|
StateResource(StateStore stateStore)
Creates a new StateResource which cannot deserialize Properties.
|
StateResource(StateStore stateStore,
PropertyDeserializer propertyDeserializer)
Creates a new StateResource which can deserialize Properties.
|
Modifier and Type | Method and Description |
---|---|
protected static java.lang.String |
getFile(StateStore stateStore,
java.lang.String fileName)
Retrieves the contents of a file based on file name.
|
Response |
getFile(java.lang.String fileName) |
protected static java.util.Collection<java.lang.String> |
getFileNames(StateStore stateStore)
Gets the name of the files that are stored in the state store.
|
Response |
getFiles() |
Response |
getFrameworkId()
Produces the configured ID of the framework, or returns an error if reading that data failed.
|
Response |
getProperty(java.lang.String key)
Produces the TaskInfo for the provided task name, or returns an error if that name doesn't
exist or the data couldn't be read.
|
Response |
getPropertyKeys() |
Response |
getTaskIPsToZones(java.lang.String podType,
java.lang.String ip)
Returns the Zone information for a given pod type and an IP address.
|
Response |
getTaskNamesToZones()
Returns the Zone information for all of the tasks of the service.
|
Response |
getTaskNameToZone(java.lang.String taskName)
Returns the Zone information for a given task.
|
Response |
putFile(java.io.InputStream uploadedInputStream,
FormDataContentDisposition fileDetails)
Endpoint for uploading arbitrary files of size up to 1024 Bytes.
|
Response |
refreshCache()
Refreshes the state store cache to reflect current data on ZK.
|
protected static void |
storeFile(StateStore stateStore,
java.lang.String fileName,
java.io.InputStream uploadedInputStream,
FormDataContentDisposition fileDetails)
Stores the file in the state store.
|
protected static final java.lang.String FILE_NAME_PREFIX
protected static final java.nio.charset.Charset FILE_ENCODING
protected static final int FILE_SIZE
protected static final java.lang.String UPLOAD_TOO_BIG_ERROR_MESSAGE
protected static final java.lang.String NO_FILE_ERROR_MESSAGE
public StateResource(StateStore stateStore)
stateStore
- the source of data to be returned to callerspublic StateResource(StateStore stateStore, PropertyDeserializer propertyDeserializer)
stateStore
- the source of data to be returned to callerspropertyDeserializer
- a deserializer which can turn any Property in the provided
stateStore
to valid JSONpublic Response getFrameworkId()
public Response getPropertyKeys()
public Response getFiles()
public Response getFile(java.lang.String fileName)
public Response putFile(java.io.InputStream uploadedInputStream, FormDataContentDisposition fileDetails)
uploadedInputStream
- The input stream containing the data.fileDetails
- The details of the file to upload.public Response getTaskNamesToZones()
public Response getTaskNameToZone(java.lang.String taskName)
public Response getTaskIPsToZones(java.lang.String podType, java.lang.String ip)
public Response getProperty(java.lang.String key)
public Response refreshCache()
protected static java.lang.String getFile(StateStore stateStore, java.lang.String fileName) throws java.io.UnsupportedEncodingException
stateStore
- The state store to get file content from.fileName
- The name of the file to retrieve.java.io.UnsupportedEncodingException
protected static void storeFile(StateStore stateStore, java.lang.String fileName, java.io.InputStream uploadedInputStream, FormDataContentDisposition fileDetails) throws StateStoreException, java.io.IOException
stateStore
- The state store to store the file in.fileName
- The name of the file to store.uploadedInputStream
- The input stream holding the content of the file.StateStoreException
java.io.IOException
protected static java.util.Collection<java.lang.String> getFileNames(StateStore stateStore)
stateStore
- The state store to get files names from.