Index
All Classes and Interfaces|All Packages|Constant Field Values
A
- AbstractBinderFactory - Class in io.github.qubitpi.athena.application
-
AbstractBinderFactory
implements standard buildBinder functionality. - AbstractBinderFactory() - Constructor for class io.github.qubitpi.athena.application.AbstractBinderFactory
- afterBinding(AbstractBinder) - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
-
Allows additional app-specific binding.
- afterBinding(AbstractBinder) - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory
- afterRegistration(ResourceConfig) - Method in interface io.github.qubitpi.athena.application.BinderFactory
-
Allows additional app-specific Jersey feature registration and config.
- afterRegistration(ResourceConfig) - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
B
- BinderFactory - Interface in io.github.qubitpi.athena.application
-
A binder factory builds a custom binder for the Jersey application.
- BooksBinderFactory - Class in io.github.qubitpi.athena.example.books.application
-
Book specialization of the Abstract Binder Factory, applying Book app configuration objects.
- BooksBinderFactory() - Constructor for class io.github.qubitpi.athena.example.books.application.BooksBinderFactory
- BooksBinderFactory.DerbyDataSourceProvider - Class in io.github.qubitpi.athena.example.books.application
-
BooksBinderFactory.DerbyDataSourceProvider
injects a connected local Derby instance. - BooksBinderFactory.MySQLDataSourceProvider - Class in io.github.qubitpi.athena.example.books.application
-
BooksBinderFactory.MySQLDataSourceProvider
injects a connected local MySQL instance. - buildBinder() - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
- buildBinder() - Method in interface io.github.qubitpi.athena.application.BinderFactory
-
Builds an hk2 Binder instance.
- buildFileIdGenerator() - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
-
Initializes service for generating file ID's.
- buildFileStore() - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
-
Registers file data storage.
- buildFileStore() - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory
- buildJsonDocumentParser() - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
-
Initializes service for parsing client GraphQL request JSON.
- buildMetaStore() - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
-
Registers GraphQL service that provides file metadata read/write API.
- buildMetaStore() - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory
- buildMutationDataFetcher() - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
-
Similar to
AbstractBinderFactory.buildQueryDataFetcher()
, this method binds an object responsible for executing the mutation and returning some sensible output values ofMetaData
. - buildMutationDataFetcher() - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory
- buildQueryDataFetcher() - Method in class io.github.qubitpi.athena.application.AbstractBinderFactory
-
Registers an object responsible for retrieving, from metadata database, a data value back for a given graphql field, i.e.
- buildQueryDataFetcher() - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory
C
- clearProperty(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
-
Removes property from the use-defined runtime configuration.
- clearProperty(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- CONFIG_NOT_FOUND - Enum constant in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
When a
SystemConfig
doesn't find a config key. - ConfigResourceLoader - Class in io.github.qubitpi.athena.config
-
Utilities to help load resources for the
SystemConfig
. - ConfigResourceLoader() - Constructor for class io.github.qubitpi.athena.config.ConfigResourceLoader
D
- DEFAULT_CONTAINER - Static variable in class io.github.qubitpi.athena.filestore.swift.SwiftFileStore
-
The container name where all files are going to be stored in.
- DerbyDataSourceProvider() - Constructor for class io.github.qubitpi.athena.example.books.application.BooksBinderFactory.DerbyDataSourceProvider
- download(String) - Method in interface io.github.qubitpi.athena.filestore.FileStore
-
Retrieves a file identified by a specified file ID from object storage.
- download(String) - Method in class io.github.qubitpi.athena.filestore.swift.SwiftFileStore
- downloadFile(String) - Method in class io.github.qubitpi.athena.web.endpoints.FileServlet
-
Retrieves a file from object storage.
E
- EMPTY_LIST - Enum constant in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
When a
List
instance is empty and is not allowed. - ErrorMessageFormat - Enum Class in io.github.qubitpi.athena.config
-
Common message formats for errors.
- executeNative(String) - Method in interface io.github.qubitpi.athena.metastore.MetaStore
-
Retrieves a file metadata using a native GraphQL query.
- executeNative(String) - Method in class io.github.qubitpi.athena.metastore.graphql.GraphQLMetaStore
F
- File - Class in io.github.qubitpi.athena.file
-
The athena representations of the file concept.
- File(MetaData, InputStream) - Constructor for class io.github.qubitpi.athena.file.File
-
Constructor.
- FILE_NAME - Static variable in class io.github.qubitpi.athena.metadata.MetaData
-
Attribute name for filename in metadata object.
- FILE_TYPE - Static variable in class io.github.qubitpi.athena.metadata.MetaData
-
Attribute name for
FileType
in metadata object. - FileIdGenerator - Interface in io.github.qubitpi.athena.file.identifier
-
FileIdGenerator
is responsible for generating unique identifiers as strings for any types of files. - FileIdGeneratorFactory - Class in io.github.qubitpi.athena.file.identifier
-
FileIdGeneratorFactory
is an abstraction layer that hides the details ofFileIdGenerator
instance creation. - FileIdGeneratorFactory() - Constructor for class io.github.qubitpi.athena.file.identifier.FileIdGeneratorFactory
- FileServlet - Class in io.github.qubitpi.athena.web.endpoints
-
Endpoint for POSTing files.
- FileServlet(FileStore, MetaStore) - Constructor for class io.github.qubitpi.athena.web.endpoints.FileServlet
-
DI constructor.
- FileStore - Interface in io.github.qubitpi.athena.filestore
-
FileStore
is an abstraction layer between Athena application and object storage; it can persist anin-memory representation
of a file into object storage as well as retrieving it from that storage. - FileType - Enum Class in io.github.qubitpi.athena.metadata
-
The athena representations of the file extension.
- format(Object...) - Method in interface io.github.qubitpi.athena.config.MessageFormatter
-
Formats a message for reporting to a user/client.
G
- get() - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory.DerbyDataSourceProvider
- get() - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory.MySQLDataSourceProvider
- get(String) - Method in class io.github.qubitpi.athena.web.endpoints.MetaServlet
-
Query metadata via GraphQL GET.
- get(DataFetchingEnvironment) - Method in class io.github.qubitpi.athena.example.books.application.SQLMutationDataFetcher
- get(DataFetchingEnvironment) - Method in class io.github.qubitpi.athena.example.books.application.SQLQueryDataFetcher
- getApi() - Method in class io.github.qubitpi.athena.metastore.graphql.GraphQLFactory
-
Returns the
native GraphQL API
factorized. - getBooleanProperty(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
- getBooleanProperty(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- getDataSource() - Method in class io.github.qubitpi.athena.example.books.application.BooksBinderFactory
-
Returns a connected local SQL DB instance.
- getDoubleProperty(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
- getDoubleProperty(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- getFields(String) - Method in interface io.github.qubitpi.athena.web.graphql.JsonDocumentParser
-
Given the JSON document wrapping a GraphQL query string, this method extracts the query field and then the requested metadata field(s) in an ordered list.
- getFields(String) - Method in class io.github.qubitpi.athena.web.graphql.JacksonParser
- getFileContent() - Method in class io.github.qubitpi.athena.file.File
-
Returns the content of the file wrapped in an
InputStream
. - getFileId(String) - Method in interface io.github.qubitpi.athena.web.graphql.JsonDocumentParser
-
Given the JSON document wrapping a GraphQL query string, this method extracts the query argument, which is a file ID.
- getFileId(String) - Method in class io.github.qubitpi.athena.web.graphql.JacksonParser
- getFileName() - Method in class io.github.qubitpi.athena.metadata.MetaData
-
Returns the name of the file associated with this metadata instance.
- getFileType() - Method in class io.github.qubitpi.athena.metadata.MetaData
-
Returns the extension info of the file associated with this metadata instance.
- getFloatProperty(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
- getFloatProperty(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- getGraphQLSchemaResourceAsString(String) - Static method in class io.github.qubitpi.athena.metastore.graphql.GraphQLFactory
-
Loads a resource file into a single
String
object. - getInstance() - Static method in class io.github.qubitpi.athena.config.ConfigResourceLoader
-
Singleton factory method.
- getInstance() - Static method in class io.github.qubitpi.athena.config.SystemConfigFactory
-
Returns an instance of
SystemConfig
. - getInstance() - Static method in class io.github.qubitpi.athena.file.identifier.FileIdGeneratorFactory
-
Returns a cached and fully initialized
FileIdGenerator
object with the "MD5" as the default hashing algorithm. - getInstance() - Static method in class io.github.qubitpi.athena.metastore.graphql.query.GraphQLQueryProviderFactory
-
Returns a runtime object that implements
GraphQLQueryProvider
specification. - getInstance() - Static method in class io.github.qubitpi.athena.web.graphql.JacksonParser
-
Returns a fully initialized
JsonDocumentParser
of this implementation. - getIntProperty(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
- getIntProperty(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- getLoggingFormat() - Method in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
- getLoggingFormat() - Method in interface io.github.qubitpi.athena.config.MessageFormatter
-
Returns the message format used for logging.
- getLongProperty(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
- getLongProperty(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- getMessageFormat() - Method in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
- getMessageFormat() - Method in interface io.github.qubitpi.athena.config.MessageFormatter
-
Returns the message used for publishing out of the system, typically in error messages.
- getMetaData() - Method in class io.github.qubitpi.athena.file.File
-
Returns an immutable representation of all metadata associated with this
File
. - getMetaData(String, List<String>) - Method in interface io.github.qubitpi.athena.metastore.MetaStore
-
Retrieves a file metadata identified by a specified file ID.
- getMetaData(String, List<String>) - Method in class io.github.qubitpi.athena.metastore.graphql.GraphQLMetaStore
- getPackageVariableName(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
-
Gets a package scoped variable name.
- getPackageVariableName(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- getRuntimeProperties() - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- getRuntimeProperties() - Method in interface io.github.qubitpi.athena.config.SystemConfig
-
Returns the properties used to hold the highest-priority config values.
- getStringProperty(String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
- getStringProperty(String) - Method in class io.github.qubitpi.athena.config.LayeredFileSystemConfig
- GraphQLFactory - Class in io.github.qubitpi.athena.metastore.graphql
-
GraphQLFactory
initializesnative GraphQL API
. - GraphQLFactory(DataFetcher<MetaData>, DataFetcher<MetaData>) - Constructor for class io.github.qubitpi.athena.metastore.graphql.GraphQLFactory
-
Constructor.
- GraphQLMetaStore - Class in io.github.qubitpi.athena.metastore.graphql
-
The default implementation of
MetaStore
. - GraphQLMetaStore(DataFetcher<MetaData>, DataFetcher<MetaData>) - Constructor for class io.github.qubitpi.athena.metastore.graphql.GraphQLMetaStore
-
DI constructor.
- GraphQLQueryProvider - Interface in io.github.qubitpi.athena.metastore.graphql.query
-
GraphQLQueryProvider
is an abstraction layer that constructs GraphQL queries on file metadata. - GraphQLQueryProviderFactory - Class in io.github.qubitpi.athena.metastore.graphql.query
-
GraphQLQueryProviderFactory
is a design pattern that abstracts away fromMetaStore
theGraphQLQueryProvider
implementation choices.
I
- INVALID_GRAPHQL_REQUEST - Enum constant in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
When an invalid GraphQL query is seen.
- io.github.qubitpi.athena.application - package io.github.qubitpi.athena.application
- io.github.qubitpi.athena.config - package io.github.qubitpi.athena.config
- io.github.qubitpi.athena.example.books.application - package io.github.qubitpi.athena.example.books.application
- io.github.qubitpi.athena.file - package io.github.qubitpi.athena.file
- io.github.qubitpi.athena.file.identifier - package io.github.qubitpi.athena.file.identifier
- io.github.qubitpi.athena.filestore - package io.github.qubitpi.athena.filestore
- io.github.qubitpi.athena.filestore.swift - package io.github.qubitpi.athena.filestore.swift
- io.github.qubitpi.athena.metadata - package io.github.qubitpi.athena.metadata
- io.github.qubitpi.athena.metastore - package io.github.qubitpi.athena.metastore
- io.github.qubitpi.athena.metastore.graphql - package io.github.qubitpi.athena.metastore.graphql
- io.github.qubitpi.athena.metastore.graphql.query - package io.github.qubitpi.athena.metastore.graphql.query
- io.github.qubitpi.athena.web.endpoints - package io.github.qubitpi.athena.web.endpoints
- io.github.qubitpi.athena.web.graphql - package io.github.qubitpi.athena.web.graphql
J
- JacksonParser - Class in io.github.qubitpi.athena.web.graphql
-
JacksonParser
parses GraphQL query using Jackson internally. - JacksonParser() - Constructor for class io.github.qubitpi.athena.web.graphql.JacksonParser
- JSON_DESERIALIZATION_ERROR - Enum constant in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
When an invalid JSON is seen.
- JsonDocumentParser - Interface in io.github.qubitpi.athena.web.graphql
-
JsonDocumentParser
is used exclusively byMetaServlet
and is responsible for extracting metadata request info from POST request body, such as file ID and metadata fields that client is asking for.
L
- LayeredFileSystemConfig - Class in io.github.qubitpi.athena.config
-
A class to hold and fetch configuration values from the environment and runtime.
- LayeredFileSystemConfig() - Constructor for class io.github.qubitpi.athena.config.LayeredFileSystemConfig
-
Constructor.
- loadConfigurations(String) - Method in class io.github.qubitpi.athena.config.ConfigResourceLoader
-
Load configurations matching a resource name from the class path and parse into Configuration objects.
- logFormat(Object...) - Method in interface io.github.qubitpi.athena.config.MessageFormatter
-
Formats a message for writing to the log.
M
- MessageFormatter - Interface in io.github.qubitpi.athena.config
-
MessageFormatter
provides shared functionality to provide formatted logging and messaging. - META_DATA_NOT_FOUND - Enum constant in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
When meta data not found.
- MetaData - Class in io.github.qubitpi.athena.metadata
- MetaServlet - Class in io.github.qubitpi.athena.web.endpoints
-
Endpoint for POSTing and GETing file metadata.
- MetaServlet(MetaStore, JsonDocumentParser) - Constructor for class io.github.qubitpi.athena.web.endpoints.MetaServlet
-
DI constructor.
- MetaStore - Interface in io.github.qubitpi.athena.metastore
-
MetaStore
is a GraphQL abstraction layer between Athena application and a custom file metadata database; it persists metadata info into the database as well as reading it from that database. - MISSING_MAP_KEY - Enum constant in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
When a
Map
is missing a required key. - MP4 - Enum constant in enum class io.github.qubitpi.athena.metadata.FileType
-
.mp4 or .MP4 files.
- mutation(String, MetaData) - Method in interface io.github.qubitpi.athena.metastore.graphql.query.GraphQLQueryProvider
-
Constructs and returns a GraphQL file metadata Mutation document given a
MetaData
object to be saved and a specified file ID associated with the metadata. - MySQLDataSourceProvider() - Constructor for class io.github.qubitpi.athena.example.books.application.BooksBinderFactory.MySQLDataSourceProvider
O
- of(ExecutionResult) - Static method in class io.github.qubitpi.athena.metadata.MetaData
-
Given a GraphQL query result, constructs an athena representation of a file metadata contained in that result.
- of(Map<String, Object>) - Static method in class io.github.qubitpi.athena.metadata.MetaData
-
Given a set of key-value pairs, constructs an athena representation of a file metadata whose states are based on the specified key-value pairs.
- of(FormDataContentDisposition) - Static method in class io.github.qubitpi.athena.metadata.MetaData
-
Given a form-data content disposition header from a file upload request, constructs an athena representation of the uploaded file metadata.
P
- PDF - Enum constant in enum class io.github.qubitpi.athena.metadata.FileType
-
PDF file.
- post(String) - Method in class io.github.qubitpi.athena.web.endpoints.MetaServlet
-
Query metadata via GraphQL POST.
Q
- query(String, List<String>) - Method in interface io.github.qubitpi.athena.metastore.graphql.query.GraphQLQueryProvider
-
Constructs and returns a GraphQL file metadata Query document given the specified file ID associated with the requested metadata and the metadata fields.
R
- resetProperty(String, String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
-
Updates a property from the user-defined runtime configuration.
- ResourceConfig - Class in io.github.qubitpi.athena.application
-
The resource configuration for the Athena web applications.
- ResourceConfig() - Constructor for class io.github.qubitpi.athena.application.ResourceConfig
-
DI Constructor.
S
- saveMetaData(String, MetaData) - Method in interface io.github.qubitpi.athena.metastore.MetaStore
-
Persists a file metadata into database.
- saveMetaData(String, MetaData) - Method in class io.github.qubitpi.athena.metastore.graphql.GraphQLMetaStore
- setProperty(String, String) - Method in interface io.github.qubitpi.athena.config.SystemConfig
-
Sets property value for a key.
- SQLMutationDataFetcher - Class in io.github.qubitpi.athena.example.books.application
-
SQLMutationDataFetcher
saves file meta data into a SQL data storage via aDataSource
. - SQLMutationDataFetcher(DataSource) - Constructor for class io.github.qubitpi.athena.example.books.application.SQLMutationDataFetcher
-
Constructor.
- SQLQueryDataFetcher - Class in io.github.qubitpi.athena.example.books.application
-
SQLQueryDataFetcher
fetches file meta data from a SQL data storage via aDataSource
. - SQLQueryDataFetcher(DataSource) - Constructor for class io.github.qubitpi.athena.example.books.application.SQLQueryDataFetcher
-
Constructor.
- SwiftFileStore - Class in io.github.qubitpi.athena.filestore.swift
-
An OpenStack Swift implementation of
FileStore
. - SwiftFileStore(Account, FileIdGenerator) - Constructor for class io.github.qubitpi.athena.filestore.swift.SwiftFileStore
-
DI constructor.
- SYSTEM_CONFIG_LOADING_ERROR_MESSAGE - Enum constant in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
When
SystemConfig
initialization fails. - SystemConfig - Interface in io.github.qubitpi.athena.config
-
SystemConfig
is an interface for retrieving configuration values, allowing for implicit type conversion and use of a runtime properties interface to override configured settings. - SystemConfigFactory - Class in io.github.qubitpi.athena.config
-
SystemConfigFactory
provides aSystemConfig
instance.
T
U
- upload(File) - Method in interface io.github.qubitpi.athena.filestore.FileStore
-
Persists a file into object storage database.
- upload(File) - Method in class io.github.qubitpi.athena.filestore.swift.SwiftFileStore
- uploadFile(InputStream, FormDataContentDisposition) - Method in class io.github.qubitpi.athena.web.endpoints.FileServlet
-
Persists a file to object storage.
V
- valueOf(String) - Static method in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.qubitpi.athena.metadata.FileType
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class io.github.qubitpi.athena.config.ErrorMessageFormat
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.qubitpi.athena.metadata.FileType
-
Returns an array containing the constants of this enum class, in the order they are declared.
All Classes and Interfaces|All Packages|Constant Field Values