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

removed async classes from openstack-glance #53

Merged
merged 1 commit into from
Apr 10, 2013
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,9 @@
*/
package org.jclouds.openstack.glance.v1_0;

import java.io.Closeable;
import java.util.Set;

import org.jclouds.javax.annotation.Nullable;
import org.jclouds.location.Zone;
import org.jclouds.location.functions.ZoneToEndpoint;
Expand All @@ -30,14 +32,13 @@
import com.google.inject.Provides;

/**
* Provides synchronous access to Glance.
* Provides access to Glance.
* <p/>
*
* @see GlanceAsyncApi
* @see <a href="http://glance.openstack.org/glanceapi.html">api doc</a>
* @author Adrian Cole
*/
public interface GlanceApi {
public interface GlanceApi extends Closeable {
/**
*
* @return the Zone codes configured
Expand All @@ -47,14 +48,14 @@ public interface GlanceApi {
Set<String> getConfiguredZones();

/**
* Provides synchronous access to Extension features.
* Provides access to Extension features.
*/
@Delegate
ExtensionApi getExtensionApiForZone(
@EndpointParam(parser = ZoneToEndpoint.class) @Nullable String zone);

/**
* Provides synchronous access to Image features.
* Provides access to Image features.
*/
@Delegate
ImageApi getImageApiForZone(@EndpointParam(parser = ZoneToEndpoint.class) @Nullable String zone);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,29 +25,23 @@
import java.util.Properties;

import org.jclouds.apis.ApiMetadata;
import org.jclouds.openstack.glance.v1_0.config.GlanceRestClientModule;
import org.jclouds.openstack.glance.v1_0.config.GlanceHttpApiModule;
import org.jclouds.openstack.keystone.v2_0.config.AuthenticationApiModule;
import org.jclouds.openstack.keystone.v2_0.config.CredentialTypes;
import org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule;
import org.jclouds.openstack.keystone.v2_0.config.MappedAuthenticationApiModule;
import org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule.ZoneModule;
import org.jclouds.openstack.v2_0.ServiceType;
import org.jclouds.rest.RestContext;
import org.jclouds.rest.internal.BaseRestApiMetadata;
import org.jclouds.rest.internal.BaseHttpApiMetadata;

import com.google.common.collect.ImmutableSet;
import com.google.common.reflect.TypeToken;
import com.google.inject.Module;

/**
* Implementation of {@link ApiMetadata} for Glance 1.0 API
*
* @author Adrian Cole
*/
public class GlanceApiMetadata extends BaseRestApiMetadata {

public static final TypeToken<RestContext<GlanceApi, GlanceAsyncApi>> CONTEXT_TOKEN = new TypeToken<RestContext<GlanceApi, GlanceAsyncApi>>() {
private static final long serialVersionUID = 1L;
};
public class GlanceApiMetadata extends BaseHttpApiMetadata<GlanceApi> {

@Override
public Builder toBuilder() {
Expand All @@ -63,16 +57,15 @@ protected GlanceApiMetadata(Builder builder) {
}

public static Properties defaultProperties() {
Properties properties = BaseRestApiMetadata.defaultProperties();
Properties properties = BaseHttpApiMetadata.defaultProperties();
properties.setProperty(SERVICE_TYPE, ServiceType.IMAGE);
properties.setProperty(CREDENTIAL_TYPE, CredentialTypes.PASSWORD_CREDENTIALS);
return properties;
}

public static class Builder extends BaseRestApiMetadata.Builder<Builder> {
public static class Builder extends BaseHttpApiMetadata.Builder<GlanceApi, Builder> {

protected Builder() {
super(GlanceApi.class, GlanceAsyncApi.class);
id("openstack-glance")
.name("OpenStack Glance API")
.identityName("${tenantName}:${userName} or ${userName}, if your keystone supports a default tenant")
Expand All @@ -83,10 +76,10 @@ protected Builder() {
.defaultEndpoint("http://localhost:5000/v2.0/")
.defaultProperties(GlanceApiMetadata.defaultProperties())
.defaultModules(ImmutableSet.<Class<? extends Module>>builder()
.add(MappedAuthenticationApiModule.class)
.add(AuthenticationApiModule.class)
.add(KeystoneAuthenticationModule.class)
.add(ZoneModule.class)
.add(GlanceRestClientModule.class).build());
.add(GlanceHttpApiModule.class).build());
}

@Override
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,7 @@
package org.jclouds.openstack.glance.v1_0.config;


import static org.jclouds.reflect.Reflection2.typeToken;

import java.net.URI;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;

Expand All @@ -36,46 +33,29 @@
import org.jclouds.json.config.GsonModule.DateAdapter;
import org.jclouds.json.config.GsonModule.Iso8601DateAdapter;
import org.jclouds.openstack.glance.v1_0.GlanceApi;
import org.jclouds.openstack.glance.v1_0.GlanceAsyncApi;
import org.jclouds.openstack.glance.v1_0.features.ImageApi;
import org.jclouds.openstack.glance.v1_0.features.ImageAsyncApi;
import org.jclouds.openstack.glance.v1_0.handlers.GlanceErrorHandler;
import org.jclouds.openstack.v2_0.domain.Extension;
import org.jclouds.openstack.v2_0.features.ExtensionApi;
import org.jclouds.openstack.v2_0.features.ExtensionAsyncApi;
import org.jclouds.openstack.v2_0.functions.PresentWhenExtensionAnnotationNamespaceEqualsAnyNamespaceInExtensionsSet;
import org.jclouds.rest.ConfiguresRestClient;
import org.jclouds.rest.config.RestClientModule;
import org.jclouds.rest.ConfiguresHttpApi;
import org.jclouds.rest.config.HttpApiModule;
import org.jclouds.rest.functions.ImplicitOptionalConverter;

import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableMultimap;
import com.google.common.collect.Multimap;
import com.google.common.reflect.TypeToken;
import com.google.inject.Provides;

/**
* Configures the Glance connection.
*
* @author Adrian Cole
*/
@ConfiguresRestClient
public class GlanceRestClientModule<S extends GlanceApi, A extends GlanceAsyncApi> extends RestClientModule<S, A> {

public static final Map<Class<?>, Class<?>> DELEGATE_MAP = ImmutableMap.<Class<?>, Class<?>> builder()
.put(ExtensionApi.class, ExtensionAsyncApi.class)
.put(ImageApi.class, ImageAsyncApi.class)
.build();

public GlanceRestClientModule() {
super(TypeToken.class.cast(typeToken(GlanceApi.class)), TypeToken.class.cast(typeToken(GlanceAsyncApi.class)), DELEGATE_MAP);
}
@ConfiguresHttpApi
public class GlanceHttpApiModule extends HttpApiModule<GlanceApi> {

protected GlanceRestClientModule(TypeToken<S> syncClientType, TypeToken<A> asyncClientType, Map<Class<?>, Class<?>> sync2Async) {
super(syncClientType, asyncClientType, sync2Async);
public GlanceHttpApiModule() {
}

@Override
Expand Down
Loading