Develop Partner Implementation Rest Project

  • Create Maven Java Project.
  • Provide Java Rest implementation based on REST API specification (Automatics API Specification). REST APIs are consumed by Automatics Core and Orchestration.

Providers with REST API Support

  • Partner needs to provide REST based implementation for APIs in device management that is consumed by Automatics orchestration.
  • Other device management APIs consumed by Automatics core can be implemented using Java API or REST.
  • Automatics core provides rest clients for device management and hardware providers like Power Provider, Remote Provider. Partner can provide REST implementation for them based on API specification. Automatics core, by default, will use rest implementation. However, if partners prefers to go with Java API implementation, then in Automatics Properties, update the following properties as shown.

"partner.impl.deviceManager=true”  - When set to true, Automatics expects Java based implementation of device management and it should be configured in partner-applicationContext.xml against bean "deviceProvider".

partner.impl.powerProvider=true”  - When set to true, Automatics expects Java based implementation of power provider and it should be configured in partner-applicationContext.xml against bean "powerProvider".

“partner.impl.deviceConnectionProvider=true”  - When set to true, Automatics expects Java based implementation of device connection provider and it should be configured in partner-applicationContext.xml against bean "deviceConnectionProvider".

Please refer Automatics Properties for all supported properties.


Following providers can be implemented in REST API form.

ProviderRequest PathConsumed By

Implementation Type Expected from Partner

Configuration in Automatics Properties
DeviceManagement

/deviceManagement/validateDevice

/deviceManagement/queryDevices

/deviceManagement/getDeviceInfo

/deviceManagement/getDeviceDetails

Orchestration


REST API Only
DeviceManagement

/deviceManagement/getDeviceDetails

/deviceManagement/getAccountDetails

/deviceManagement/getDeviceProps

/deviceManagement/device/lock

/deviceManagement/device/release

/deviceManagement/device/allocationStatus

/deviceManagement/device/updateAllocationDuration

 Core

REST API or

JAVA API

if partner.impl.deviceManager=false,

Automatics expects, REST API implementation.

if partner.impl.deviceManager=true,

Automatics expects, JAVA API implementation.


PowerProvider

All Power REST APIs

Core

REST API or

JAVA API

if partner.impl.powerProvider=false,

Automatics expects, REST API implementation.

if partner.impl.powerProvider=true,

Automatics expects, JAVA API implementation.

RemoteProviderAll Remote REST APIsCore

REST API or

JAVA API


Issue/Defect Management ProviderREST APIsOrchestration & CoreREST API Only
DeviceConnectionProvider

/deviceConnection/execute

/deviceConnection/copyFile

 Core

REST API or

JAVA API

if partner.impl.deviceConnectionProvider=false,

Automatics expects, REST API implementation.

if partner.impl.deviceConnectionProvider=true,

Automatics expects, JAVA API implementation.




  • No labels