Git Product home page Git Product logo

libcloudproviders's Introduction

Repository has been archived

Ongoing development of libcloudproviders is happening on the GNOME repository at https://gitlab.gnome.org/World/libcloudproviders

cloudproviders integration API

libcloudproviders is a DBus API that allows cloud storage sync clients to expose their services. Clients such as file managers and desktop environments can then provide integrated access to the cloud providers services.

cloudproviderd

cloudproviderd is a daemon which keeps track of existing cloud providers and their accounts. It provides the org.freedesktop.CloudProviderManager DBus object to interact with.

libcloudprovider

libcloudproviders is a glib based library that makes it easier to implement a cloud provider server or client.

Implementing support for sync clients

Any cloud provider clients need to own a DBus name and export a org.freedesktop.DBus.ObjectManager object to it. For each account the cloud provider needs to export an individual object implementing the org.freedesktop.CloudProvider.Account1 interface and register it with the object manager.

An example implementation using libcloudprovider can be found in test/testcloudproviderserver.c.

Implementing support for integrators

Integrators should connect via to the org.freedesktop.CloudProviderManager object and call the GetCloudProviders method on the org.freedesktop.CloudProvider.Manager1 interface. That method will return a tuple of the registered cloud providers bus name and the object path of their object manager.

With the bus name and object path they can query the object manager for a list of accounts and can then interact with these though the org.freedesktop.CloudProvider.Account1 interface.

An example implementation using libcloudprovider can be found in test/testcloudproviderclient.c.

libcloudproviders's People

Contributors

juliushaertl avatar

Stargazers

Martin Giger avatar Kuravi H avatar  avatar Eliseo Martelli avatar

Watchers

James Cloos avatar  avatar  avatar  avatar

libcloudproviders's Issues

Consider archiving this repository ?

I saw that this repository was now maintained on the GNOME gitlab, so I think you should archive this repository and put a link pointing to the gitlab repository.

I'm just saying this to help new people to find the gitlab repository as googling "libcloudprovider" yields this repository first.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.