-
Notifications
You must be signed in to change notification settings - Fork 1
Components
jOCCI-api design is modular and can be easily extended if needed. The library internally uses Apache HttpComponents library for HTTP communication implementation and any mention of HTTP specific classes that are not part of jOCCI-api comes from this library.
Package contains:
-
abstract class
Client
Class provides a communication interface composed of 5 methods:
-
list
- retrieves entities' locations from remote server -
describe
- retrieves descriptions of entities from remote server -
create
- creates a new entity on remote server -
delete
- deletes an entity instance or instances from remote server -
trigger
- triggers an action on entities on remote server
Additionally methods
connect
andrefresh
has to be implemented as well to establish a connection and updating OCCI model if needed. -
-
interface
Authentication
An interface representing an authentication method used during the communication.
-
class
EntityBuilder
Helps with creating OCCI structures like
Resource
,Link
,Action
, etc. according to retrieved OCCI model.
Package contains:
-
class
HTTPClient
Extends
Client
and implements its abstract methods. Uses HTTP/HTTPS as communication protocol.
Package contains HTTP authentication methods:
-
abstract class
HTTPAuthentication
Implements an
Authentication
interface and serves as a base class for specific HTTP authentication methods. It allows to load custom CAs either from file or directory and use them during connection initialization. -
class
NoAuthentication
- a dummy class representing no authentication method -
classes
BasicAuthentication
andDigestAuthentication
- for BASIC and DIGEST authentication methods -
class
X509Authentication
- for authentication via X509 certificates -
class
VOMSAuthentication
- for authentication via VOMS certificates -
class
KeystoneAuthentication
- for authentication against OpenStack's Keystone Identity Service