nx_server_plugin_sdk 1.0 Server Plugin SDK

Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
nx::sdk::cloud_storage::IIntegration Class Referenceabstract

`#include <i_integration.h>`

Inheritance diagram for nx::sdk::cloud_storage::IIntegration:

## Public Member Functions
Result< const IString * > | manifest () const
Result< IEngine * > | obtainEngine (const char *url, const IAsyncOperationHandler *asyncOperationHandler)
Public Member Functions inherited from nx::sdk::Interface< IIntegration, nx::sdk::IIntegration >
virtual IRefCountable * | queryInterface (const InterfaceId *id)
Ptr< Interface > | queryInterface ()
Ptr< const Interface > | queryInterface () const
Public Member Functions inherited from nx::sdk::IIntegration
virtual void | setUtilityProvider (IUtilityProvider *utilityProvider)=0
Public Member Functions inherited from nx::sdk::Interface< IIntegration >
virtual IRefCountable * | queryInterface (const InterfaceId *id)
Ptr< Interface > | queryInterface ()
Ptr< const Interface > | queryInterface () const
Public Member Functions inherited from nx::sdk::IRefCountable
virtual | ~IRefCountable ()=default
template<class Interface >
Ptr< Interface > | queryInterface ()
template<class Interface >
Ptr< const Interface > | queryInterface () const
virtual int | addRef () const =0
virtual int | releaseRef () const =0
int | refCountThreadUnsafe () const

## Static Public Member Functions
static auto | interfaceId ()
Static Public Member Functions inherited from nx::sdk::IIntegration
static auto | interfaceId ()
Static Public Member Functions inherited from nx::sdk::IRefCountable
static auto | interfaceId ()

## Protected Member Functions
virtual void | getManifest (Result< const IString *> *outResult) const =0
virtual void | doObtainEngine (const char *url, const IAsyncOperationHandler *asyncOperationHandler, Result< IEngine *> *outResult)=0
Protected Member Functions inherited from nx::sdk::Interface< IIntegration, nx::sdk::IIntegration >
virtual IRefCountable * | queryInterface (const IRefCountable::InterfaceId *id) override
IRefCountable * | queryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId)
Protected Member Functions inherited from nx::sdk::Interface< IIntegration >
IRefCountable * | queryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId)

## Additional Inherited Members
Static Protected Member Functions inherited from nx::sdk::IRefCountable
template<int len>
static const InterfaceId * | makeId (const char(&charArray)[len])
template<int len, int alternativeLen>
static std::vector< const InterfaceId * > | makeIdWithAlternative (const char(&charArray)[len], const char(&alternativeCharArray)[alternativeLen])
template<class TemplateInstance , class TemplateArg , int len>
static const InterfaceId * | makeIdForTemplate (const char(&baseIdCharArray)[len])
static std::vector< const InterfaceId * > | alternativeInterfaceIds (const InterfaceId *id)
static std::vector< const InterfaceId * > | alternativeInterfaceIds (std::vector< const InterfaceId *> ids)

## Detailed Description

The main interface of a Cloud Storage Plugin instance.

## Member Function Documentation

## ◆ manifest()

Result<const IString*> nx::sdk::cloud_storage::IIntegration::manifest | ( |  | ) | const
| inline

Provides a JSON Manifest for this Plugin instance. See the example of such Manifest in stub_cloud_storage_plugin.

## ◆ obtainEngine()

Result<IEngine*> nx::sdk::cloud_storage::IIntegration::obtainEngine | ( | const char * | url,
|  | const IAsyncOperationHandler * | asyncOperationHandler
| ) |  |
| inline

Obtain engine corresponding to the backed url. Now Server won't ask the same plugin for multiple engines, but potentially it may be implemented. Plugin should store engine internally and not recreate it if this function is called more than once with the same url.

The documentation for this class was generated from the following file:

- src/nx/sdk/cloud_storage/i_integration.h