I am doing my phd in cloud app portability and looking into cloud APIs. Since there are already similar solutions for cloud storage, message queuing, dtabases I am looking into applying the jClouds design into other cloud services such as: payment service, image manipulation service etc. Such services are gaining popularity in PaaS marketplaces ( Heroku, engineyard, Amazon) and thought it would be nice to create a cloud API (similar to jcouds) for each of those services.
But first I am trying to fully understand the rationale of jClouds design. So you ll be hearing from me quite often since I sitll have quite some questions related to the detailed design. I hope I m not spamming. :) On 18 February 2014 11:31, Andrew Phillips <[email protected]> wrote: > I see that the BaseBlobStore and BaseProviderMetadata classes can have some >> implemented methods. But then what is the use of the interface on top of >> that? >> > > The Base* classes are intended mainly as convenience classes for > *implementers* of providers. The implemented methods you've found provide > common functionality that otherwise would probably have to be > re-implemented in very similar ways in each provider. > > The interfaces are intended to be used/programmed against by *users*. So > users would pretty much always be recommended to write: > > BlobStore blobStore = ctx.getBlobStore(); > > rather than > > BaseBlobStore blobStore = (BaseBlobStore) ctx.getBlobStore(); // > arararrgh!! > > Are you looking to implement your own blobstore provider, by any chance? > > ap >
