Skip to content
This repository was archived by the owner on Mar 25, 2018. It is now read-only.

Remove AsyncApi #1501

@codefromthecrypt

Description

@codefromthecrypt

per thread in https://groups.google.com/forum/?fromgroups=#!topic/jclouds-dev/iQXXZFeVq2Y we should remove the AsyncApi from jclouds providers in v1.7.

It ideally should be possible for apis new to v1.6 to be developed without Async as well.

Here are the tasks for 1.6:

  • add ability to automatically implement Closeable on top-level Api (or Client) interfaces.
  • implement Closeable on all existing top-level Api (or Client) interfaces.
  • deprecate all existing top-level AsyncApi (or AsyncClient) interfaces.
  • add ContextBuilder.buildApi(TopLevelApi.class)
  • remove AsyncApi from at least one module new to 1.6 to prove the concept works.
  • migrate internal code from some module that uses an AsyncApi (or AsyncClient) to another approach
  • create an example that shows how to do this in jclouds/jclouds-examples
  • document links to some advice on using jclouds in concurrent environments.

Here are the tasks for 1.7:

  • remove all existing top-level AsyncApi (or AsyncClient) interfaces.
  • remove RestContext and all things that refer to generic type params <S, A>
  • clean up code that formerly had to deal with AsyncApis

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions