Giter Club home page Giter Club logo

ning-api-java's Introduction

Overview

ning-api-java is a Java client for accessing the Ning API.

The Ning API is a RESTful API that allows developers to access the content on their Ning Networks. The Ning API Documentation contains a complete API reference and tutorials.

Support

If you need help with using this library, you can find us on the Ning Build Network. If you find an issue with this library, please file a bug on our issues page.

Example Usage

See the /src/test directory for examples of how to use this library.

Integration Tests

This project contains integration tests to verify the functionality of the Ning API. You can run them yourself by updating /src/test/testng.xml with the details of your Ning Site and your Ning API credentials.

These tests will create content on your site, it is recommended you run these tests on a test Ning site.

Once you have updated /src/test/testng.xml you can run the tests using:

mvn verify

This command will build, package, and run the integration tests. You can find a detailed report of the results in /target/failsafe-reports/.

ning-api-java's People

Contributors

jeromebenois avatar brianm avatar cowtowncoder avatar

Stargazers

Michael Corrado avatar Justin Farrow avatar Angus H. avatar buhe avatar Vijay Ganduri avatar Santiago Angel avatar Chih-Hung Lin avatar  avatar Devin Sevilla avatar Sunny Gleason avatar Werner Keil avatar  avatar  avatar

Watchers

Pierre-Alexandre Meyer avatar Tim Galyean avatar  avatar Mita Mahadevan avatar  avatar James Cloos avatar Kevin Postlewaite avatar Nitin Kalra avatar  avatar

ning-api-java's Issues

Update to use 'topTags' instead of 'tags' for reads

Newest XAPI server uses 'topTags' as the canonical name of readable tags; and while 'tags' is still an acceptable alias, it will be removed in near future, so it makes sense to change client to use the proper field name.

Add async (non-blocking) alternatives for read operations

Since client uses http-client that is based on non-blocking operations, it would be good to expose functionality with non-blocking methods as well: current methods are blocking to keep API simple, but it should be possible to add alternative methods too.
Such methods have benefit of being easier to parallelize, to allow concurrent calls to be made and often reduce end-to-end latency.

Carve out OAuth client code, submit to async-http-client

Currently we embed simple custom implementation of OAuth client side code; this because none of existing OAuth libraries supported async http client. Now that async http client is reasonably stable (as well as our OAuth code), it should be possible to generalize OAuth client, carve it out, and contribute to http client for others to use.

Add configuration setting to choose http or https

Currently API has fixed setting for whether to use http or https (ssl) for access. It should be possible to configure this using NingClientConfig object, defining baseline setting and overrides.

Support accessing "secondary" data (author.fullName)

External API supports accessing of 'secondary' data by using notation like 'author.fullName'. Results in this case contain "resources", identified by internal id, so that for example Photo resource has property 'author' with author id; and then "resources" map will have entry with that key, and value(s) (fullName in this case).

Java client does not yet support this style of access; it would be good to add support. Challenges include the fact resources can be of different types (not just User instances but other types in some cases), so data binding needs to be done lazily (deferred, based on access) or at least using custom resolution of type.

Add support for Topic type

Although /Topic resource is support to by xapi service, api client does not yet expose it. Should be easy to add support.

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.