Hi Timur, To create a new provider, the first thing you need to do is to create the API for that provider. That API will be the one directly talking to the REST service.
The common advice is to take a look at some of the latest providers being added, because we are still missing a detailed documentation on how to write an entire new provider. Here is a checklist, though: * First you need to create an implementation of ApiMetadata describing the target API service. * You have to create the API interface, with its methods annotated accordingly so the requests are properly generated. * Once that is done, a Guice module has to be added to configure the API and the injector that will allow all Guice magic to happen. * Once that is done, you will have to add Expect and Live tests for the API, to make sure everything is working fine. You can take a look at the existing providers, or, for example, read the comments in the CloudSigma v2 pull request [1]. It hasn't been merged yet, but you'll find there some tips and things to take into account when adding a new api. HTH, Ignasi [1] https://github.com/jclouds/jclouds-labs/pull/12 On 30 July 2013 14:26, Timur Sungur <[email protected]> wrote: > Hi, > > I will create a general provider implementation using jclouds for the > "providers" which use orion. The authentication is based on basic HTTP > authentication and server API supports REST. > > I created the template using maven archetype. I'm checking related > examples but they provide limited information due to lack of > documentation. As far as I understood created project provides a > client API for CRUD operations and a a key API for authentication. I > want to follow general implementation style which has been used in the > other provider implementations. > > Could you please explain me briefly the steps for a provider > implementation or the general code structure? The authentication needs > to be based on basic HTTP authentication. > > Regards, > > Timur
