I'm not familiar with the APIs of other storage offerings like Google Drive
or Dropbox, but I'm not sure if they should fall in the same category. My
little knowledge suggests thay they don't have the same purpose. "Object
storage" and "document storage" (which is the topic of your thesis) sound
like different things, with different semantics, and jclouds right now
provides just an object storage portable abstraction.
To follow up on what Ignasi said, I think there are two questions here:
1) Can jclouds' BlobStore view be implemented on top of Dropbox/Google
Drive/etc.?
2) Does BlobStore provide the kind of functionality that you think
should be provided by the kind of API you have in mind?
I'm not an expert, but simply based on casual used of things like
Dropbox I suspect the answer to the first question may well be "yes":
Dropbox should e.g. certainly supporting putting and retrieving a
blob, although I'm less sure how many options around content types,
user metadata, pre-signed download URLs etc. you'll have. But if
you're interested in trying it out, I'd certainly encourage you to
give it a go.
I suspect, though, that the second question is going to be more
fundamental here: what do you consider the key features of a "document
storage system" to be, and how well do they match with what jclouds'
BlobStore view supports?
If you feel that there are a couple of things (things like
collaboration options, edit mode etc. are ones I can imagine off the
top of my head) that a DocStore needs that BlobStore does not provide,
you have a couple of options within jclouds:
1) Implement a jclouds API and provider for your service of choice. We
have a couple of APIs/providers that don't (yet) implement any
abstractions, simply because that kind of service isn't common enough
for jclouds to consider an abstraction layer. The Chef API is an
example.
2) Implement one or more jclouds APIs and providers for multiple
services, and suggest an abstraction layer to unify those. Obviously,
this is a bunch more work, but perhaps gets closer to your intended
goal.
Either way, we're more than happy to help if you're interested in
picking this up!
ap