http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApi.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApi.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApi.java deleted file mode 100644 index dad80d8..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApi.java +++ /dev/null @@ -1,426 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.extensions.lbaas.v1; - -import javax.inject.Named; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; - -import org.jclouds.Fallbacks.EmptyPagedIterableOnNotFoundOr404; -import org.jclouds.Fallbacks.FalseOnNotFoundOr404; -import org.jclouds.Fallbacks.NullOnNotFoundOr404; -import org.jclouds.collect.PagedIterable; -import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.HealthMonitor; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.HealthMonitors; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Member; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Members; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Pool; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Pools; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.VIP; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.VIPs; -import org.jclouds.openstack.neutron.v2.extensions.ExtensionNamespaces; -import org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1.EmptyHealthMonitorsFallback; -import org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1.EmptyMembersFallback; -import org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1.EmptyPoolsFallback; -import org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1.EmptyVIPsFallback; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.HealthMonitorsToPagedIterable; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.MembersToPagedIterable; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.ParseHealthMonitors; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.ParseMembers; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.ParsePools; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.ParseVIPs; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.PoolsToPagedIterable; -import org.jclouds.openstack.neutron.v2.functions.lbaas.v1.VIPsToPagedIterable; -import org.jclouds.openstack.v2_0.ServiceType; -import org.jclouds.openstack.v2_0.options.PaginationOptions; -import org.jclouds.openstack.v2_0.services.Extension; -import org.jclouds.rest.annotations.Fallback; -import org.jclouds.rest.annotations.Payload; -import org.jclouds.rest.annotations.PayloadParam; -import org.jclouds.rest.annotations.RequestFilters; -import org.jclouds.rest.annotations.ResponseParser; -import org.jclouds.rest.annotations.SelectJson; -import org.jclouds.rest.annotations.Transform; -import org.jclouds.rest.annotations.WrapWith; - -import com.google.common.annotations.Beta; - -/** - * Provides access to load-balancing operations for the OpenStack Networking (Neutron) v2 API. - * <p/> - * LBaaS v1 is an extension to load-balance the traffic between instances and external networks. - */ -@Beta -@Extension(of = ServiceType.NETWORK, namespace = ExtensionNamespaces.LBAAS) -@Path("/lb") -@RequestFilters(AuthenticateRequest.class) -@Consumes(MediaType.APPLICATION_JSON) -public interface LBaaSApi { - - /** - * Returns a list of VIPs to which the tenant has access. Default policy settings return only - * those VIPs that are owned by the tenant who submits the request, unless the request is submitted by an - * user with administrative rights. - * - * @return the list of all VIP references configured for the tenant. - */ - @Named("vip:list") - @GET - @Path("/vips") - @Transform(VIPsToPagedIterable.class) - @ResponseParser(ParseVIPs.class) - @Fallback(EmptyPagedIterableOnNotFoundOr404.class) - PagedIterable<VIP> listVIPs(); - - /** - * @return the list of all VIP references configured for the tenant. - */ - @Named("vip:list") - @GET - @Path("/vips") - @ResponseParser(ParseVIPs.class) - @Fallback(EmptyVIPsFallback.class) - VIPs listVIPs(PaginationOptions options); - - /** - * Returns the details for a specific VIP. - * - * @param id the id of the VIP to return. - * @return VIP or null if not found. - */ - @Named("vip:get") - @GET - @Path("/vips/{id}") - @SelectJson("vip") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - VIP getVIP(@PathParam("id") String id); - - /** - * Creates a new VIP. - * - * @param vip describes the VIP to be created. - * @return a reference of the newly-created VIP. - */ - @Named("vip:create") - @POST - @Path("/vips") - @SelectJson("vip") - VIP createVIP(@WrapWith("vip") VIP.CreateVIP vip); - - /** - * Update a VIP. - * - * @param id the id of the VIP to update. - * @param vip the VIP's attributes to update. - * @return a reference of the updated VIP. - */ - @Named("vip:update") - @PUT - @Path("/vips/{id}") - @SelectJson("vip") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - VIP updateVIP(@PathParam("id") String id, @WrapWith("vip") VIP.UpdateVIP vip); - - /** - * Deletes the specified VIP. - * - * @param id the id of the VIP to delete. - * @return true if delete successful, false if not. - */ - @Named("vip:delete") - @DELETE - @Path("/vips/{id}") - @Fallback(FalseOnNotFoundOr404.class) - boolean deleteVIP(@PathParam("id") String id); - - /** - * Returns a list of Pools to which the tenant has access. Default policy settings return only - * those Pools that are owned by the tenant who submits the request, unless the request is submitted by an - * user with administrative rights. - * - * @return the list of all Pool references configured for the tenant. - */ - @Named("pool:list") - @GET - @Path("/pools") - @Transform(PoolsToPagedIterable.class) - @ResponseParser(ParsePools.class) - @Fallback(EmptyPagedIterableOnNotFoundOr404.class) - PagedIterable<Pool> listPools(); - - /** - * @return the list of all Pool references configured for the tenant. - */ - @Named("pool:list") - @GET - @Path("/pools") - @ResponseParser(ParsePools.class) - @Fallback(EmptyPoolsFallback.class) - Pools listPools(PaginationOptions options); - - /** - * Returns the details for a specific Pool. - * - * @param id the id of the Pool to return. - * @return Pool or null if not found. - */ - @Named("pool:get") - @GET - @Path("/pools/{id}") - @SelectJson("pool") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - Pool getPool(@PathParam("id") String id); - - /** - * Creates a new Pool. - * - * @param pool describes the Pool to be created. - * @return a reference of the newly-created Pool. - */ - @Named("pool:create") - @POST - @Path("/pools") - @SelectJson("pool") - Pool createPool(@WrapWith("pool") Pool.CreatePool pool); - - /** - * Update a Pool. - * - * @param id the id of the Pool to update. - * @param pool the Pool's attributes to update. - * @return a reference of the updated Pool. - */ - @Named("pool:update") - @PUT - @Path("/pools/{id}") - @SelectJson("pool") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - Pool updatePool(@PathParam("id") String id, @WrapWith("pool") Pool.UpdatePool pool); - - /** - * Deletes the specified Pool. - * - * @param id the id of the Pool to delete. - * @return true if delete successful, false if not. - */ - @Named("pool:delete") - @DELETE - @Path("/pools/{id}") - @Fallback(FalseOnNotFoundOr404.class) - boolean deletePool(@PathParam("id") String id); - - /** - * Returns a list of Members to which the tenant has access. Default policy settings return only - * those Members that are owned by the tenant who submits the request, unless the request is submitted by an - * user with administrative rights. - * - * @return the list of all Member references configured for the tenant. - */ - @Named("member:list") - @GET - @Path("/members") - @Transform(MembersToPagedIterable.class) - @ResponseParser(ParseMembers.class) - @Fallback(EmptyPagedIterableOnNotFoundOr404.class) - PagedIterable<Member> listMembers(); - - /** - * @return the list of all Member references configured for the tenant. - */ - @Named("member:list") - @GET - @Path("/members") - @ResponseParser(ParseMembers.class) - @Fallback(EmptyMembersFallback.class) - Members listMembers(PaginationOptions options); - - /** - * Returns the details for a specific Member. - * - * @param id the id of the Member to return. - * @return Member or null if not found. - */ - @Named("member:get") - @GET - @Path("/members/{id}") - @SelectJson("member") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - Member getMember(@PathParam("id") String id); - - /** - * Creates a new Member. - * - * @param member describes the Member to be created. - * @return a reference of the newly-created Member. - */ - @Named("member:create") - @POST - @Path("/members") - @SelectJson("member") - Member createMember(@WrapWith("member") Member.CreateMember member); - - /** - * Update a Member. - * - * @param id the id of the Member to update. - * @param member the Member's attributes to update. - * @return a reference of the updated Member. - */ - @Named("member:update") - @PUT - @Path("/members/{id}") - @SelectJson("member") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - Member updateMember(@PathParam("id") String id, @WrapWith("member") Member.UpdateMember member); - - /** - * Deletes the specified Member. - * - * @param id the id of the Member to delete. - * @return true if delete successful, false if not. - */ - @Named("member:delete") - @DELETE - @Path("/members/{id}") - @Fallback(FalseOnNotFoundOr404.class) - boolean deleteMember(@PathParam("id") String id); - - /** - * Returns a list of HealthMonitors to which the tenant has access. Default policy settings return only - * those HealthMonitors that are owned by the tenant who submits the request, unless the request is submitted by an - * user with administrative rights. - * - * @return the list of all HealthMonitor references configured for the tenant. - */ - @Named("health_monitor:list") - @GET - @Path("/health_monitors") - @Transform(HealthMonitorsToPagedIterable.class) - @ResponseParser(ParseHealthMonitors.class) - @Fallback(EmptyPagedIterableOnNotFoundOr404.class) - PagedIterable<HealthMonitor> listHealthMonitors(); - - /** - * @return the list of all HealthMonitor references configured for the tenant. - */ - @Named("health_monitor:list") - @GET - @Path("/health_monitors") - @ResponseParser(ParseHealthMonitors.class) - @Fallback(EmptyHealthMonitorsFallback.class) - HealthMonitors listHealthMonitors(PaginationOptions options); - - /** - * Returns the details for a specific HealthMonitor. - * - * @param id the id of the HealthMonitor to return. - * @return Health Monitor or null if not found. - */ - @Named("health_monitor:get") - @GET - @Path("/health_monitors/{id}") - @SelectJson("health_monitor") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - HealthMonitor getHealthMonitor(@PathParam("id") String id); - - /** - * Creates a new HealthMonitor. - * - * @param healthMonitor describes the HealthMonitor to be created. - * @return a reference of the newly-created HealthMonitor. - */ - @Named("health_monitor:create") - @POST - @Path("/health_monitors") - @SelectJson("health_monitor") - HealthMonitor createHealthMonitor(@WrapWith("health_monitor") HealthMonitor.CreateHealthMonitor healthMonitor); - - /** - * Update a HealthMonitor. - * - * @param id the id of the HealthMonitor to update. - * @param healthMonitor the HealthMonitor's attributes to update. - * @return a reference of the updated HealthMonitor. - */ - @Named("health_monitor:update") - @PUT - @Path("/health_monitors/{id}") - @SelectJson("health_monitor") - @Fallback(NullOnNotFoundOr404.class) - @Nullable - HealthMonitor updateHealthMonitor(@PathParam("id") String id, - @WrapWith("health_monitor") HealthMonitor.UpdateHealthMonitor healthMonitor); - - /** - * Deletes the specified Health Monitor. - * - * @param id the id of the Health Monitor to delete. - * @return true if delete successful, false if not. - */ - @Named("health_monitor:delete") - @DELETE - @Path("/health_monitors/{id}") - @Fallback(FalseOnNotFoundOr404.class) - boolean deleteHealthMonitor(@PathParam("id") String id); - - /** - * Associate a HealthMonitor to a Pool. - * - * @param poolId the id of the Pool to associate. - * @param healthMonitorId the id of the HealthMonitor to associate. - * @return the newly associated HealthMonitor. - */ - @Named("pool:associate_health_monitor") - @POST - @Path("/pools/{pool-id}/health_monitors") - @SelectJson("health_monitor") - @Payload("%7B\"health_monitor\":%7B\"id\":\"{healthMonitorId}\"%7D%7D") - @Produces(MediaType.APPLICATION_JSON) - HealthMonitor associateHealthMonitor(@PathParam("pool-id") String poolId, - @PayloadParam("healthMonitorId") String healthMonitorId); - - /** - * Disassociate a HealthMonitor from a Pool. - * - * @param poolId the id of the Pool to disassociate. - * @param healthMonitorId the id of the HealthMonitor to disassociate. - * @return true if disassociate successful, false if not. - */ - @Named("pool:disassociate_health_monitor") - @DELETE - @Path("/pools/{pool-id}/health_monitors/{health-monitor-id}") - @Fallback(FalseOnNotFoundOr404.class) - boolean disassociateHealthMonitor(@PathParam("pool-id") String poolId, - @PathParam("health-monitor-id") String healthMonitorId); - -}
http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyFloatingIPsFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyFloatingIPsFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyFloatingIPsFallback.java deleted file mode 100644 index ede9046..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyFloatingIPsFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.FloatingIPs; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyFloatingIPsFallback implements Fallback<FloatingIPs> { - @Override - public FloatingIPs createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return FloatingIPs.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyNetworksFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyNetworksFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyNetworksFallback.java deleted file mode 100644 index 8410afb..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyNetworksFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.Networks; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyNetworksFallback implements Fallback<Networks> { - @Override - public Networks createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return Networks.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyPortsFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyPortsFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyPortsFallback.java deleted file mode 100644 index ac2e0db..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyPortsFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.Ports; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyPortsFallback implements Fallback<Ports> { - @Override - public Ports createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return Ports.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRoutersFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRoutersFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRoutersFallback.java deleted file mode 100644 index 8b74be2..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRoutersFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.Routers; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyRoutersFallback implements Fallback<Routers> { - @Override - public Routers createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return Routers.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRulesFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRulesFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRulesFallback.java deleted file mode 100644 index 4556f74..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptyRulesFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.Rules; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyRulesFallback implements Fallback<Rules> { - @Override - public Rules createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return Rules.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySecurityGroupsFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySecurityGroupsFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySecurityGroupsFallback.java deleted file mode 100644 index 70a3e37..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySecurityGroupsFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.SecurityGroups; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptySecurityGroupsFallback implements Fallback<SecurityGroups> { - @Override - public SecurityGroups createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return SecurityGroups.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySubnetsFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySubnetsFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySubnetsFallback.java deleted file mode 100644 index 8f7a94a..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/EmptySubnetsFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.Subnets; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptySubnetsFallback implements Fallback<Subnets> { - @Override - public Subnets createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return Subnets.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyHealthMonitorsFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyHealthMonitorsFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyHealthMonitorsFallback.java deleted file mode 100644 index 8364fba..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyHealthMonitorsFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.HealthMonitors; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyHealthMonitorsFallback implements Fallback<HealthMonitors> { - @Override - public HealthMonitors createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return HealthMonitors.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyMembersFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyMembersFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyMembersFallback.java deleted file mode 100644 index 9cb8084..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyMembersFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Members; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyMembersFallback implements Fallback<Members> { - @Override - public Members createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return Members.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyPoolsFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyPoolsFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyPoolsFallback.java deleted file mode 100644 index 0c2ce99..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyPoolsFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Pools; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyPoolsFallback implements Fallback<Pools> { - @Override - public Pools createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return Pools.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyVIPsFallback.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyVIPsFallback.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyVIPsFallback.java deleted file mode 100644 index 4dfae2d..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/fallbacks/lbaas/v1/EmptyVIPsFallback.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jclouds.openstack.neutron.v2.fallbacks.lbaas.v1; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static org.jclouds.http.HttpUtils.contains404; -import static org.jclouds.util.Throwables2.getFirstThrowableOfType; - -import org.jclouds.Fallback; -import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.VIPs; -import org.jclouds.rest.ResourceNotFoundException; - -public class EmptyVIPsFallback implements Fallback<VIPs> { - @Override - public VIPs createOrPropagate(Throwable t) throws Exception { - if ((getFirstThrowableOfType(checkNotNull(t, "throwable"), ResourceNotFoundException.class) != null) - || contains404(t)) { - return VIPs.EMPTY; - } - throw propagate(t); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/NetworkApi.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/NetworkApi.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/NetworkApi.java deleted file mode 100644 index 08e5586..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/NetworkApi.java +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.features; - -import javax.inject.Named; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; - -import org.jclouds.Fallbacks; -import org.jclouds.Fallbacks.EmptyPagedIterableOnNotFoundOr404; -import org.jclouds.collect.PagedIterable; -import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; -import org.jclouds.openstack.neutron.v2.domain.Network; -import org.jclouds.openstack.neutron.v2.domain.Networks; -import org.jclouds.openstack.neutron.v2.fallbacks.EmptyNetworksFallback; -import org.jclouds.openstack.neutron.v2.functions.NetworksToPagedIterable; -import org.jclouds.openstack.neutron.v2.functions.ParseNetworks; -import org.jclouds.openstack.v2_0.options.PaginationOptions; -import org.jclouds.rest.annotations.Fallback; -import org.jclouds.rest.annotations.RequestFilters; -import org.jclouds.rest.annotations.ResponseParser; -import org.jclouds.rest.annotations.SelectJson; -import org.jclouds.rest.annotations.Transform; -import org.jclouds.rest.annotations.WrapWith; - -import com.google.common.annotations.Beta; -import com.google.common.collect.FluentIterable; -import com.google.common.collect.ImmutableList; - -/** - * Provides access to Network operations for the OpenStack Networking (Neutron) v2 API. - * <p/> - * Each tenant can define one or more networks. A network is a virtual isolated layer-2 broadcast domain reserved to the - * tenant. A tenant can create several ports for a network, and plug virtual interfaces into these ports. - * - * @see <a href= - * "http://docs.openstack.org/api/openstack-network/2.0/content/Networks.html">api doc</a> - */ -@Beta -@Path("/networks") -@RequestFilters(AuthenticateRequest.class) -@Consumes(MediaType.APPLICATION_JSON) -@Produces(MediaType.APPLICATION_JSON) -public interface NetworkApi { - - /** - * Returns all networks currently defined in Neutron for the current tenant. - * - * @return the list of all networks configured for the tenant - */ - @Named("network:list") - @GET - @ResponseParser(ParseNetworks.class) - @Transform(NetworksToPagedIterable.class) - @Fallback(EmptyPagedIterableOnNotFoundOr404.class) - PagedIterable<Network> list(); - - /** - * @see <a href="http://docs.openstack.org/api/openstack-network/2.0/content/pagination.html">api doc</a> - */ - @Named("network:list") - @GET - @ResponseParser(ParseNetworks.class) - @Fallback(EmptyNetworksFallback.class) - Networks list(PaginationOptions options); - - /** - * Return a specific network - * - * @param id the id of the network to return - * @return Network or null if not found - */ - @Named("network:get") - @GET - @Path("/{id}") - @SelectJson("network") - @Fallback(Fallbacks.NullOnNotFoundOr404.class) - @Nullable - Network get(@PathParam("id") String id); - - /** - * Create a new network with the specified type - * - * @param network Describes the network to be created. - * @return a reference of the newly-created network - */ - @Named("network:create") - @POST - @SelectJson("network") - Network create(@WrapWith("network") Network.CreateNetwork network); - - /** - * Create multiple networks - * - * @param networks the bulk of networks to create - * @return list of references of the newly-created networks - */ - @Named("network:createBulk") - @POST - @SelectJson("networks") - FluentIterable<Network> createBulk(@WrapWith("networks") ImmutableList<Network.CreateNetwork> networks); - - /** - * Update a network - * - * @param id the id of the network to update - * @param network the network to update - * @return true if update successful, false if not - */ - @Named("network:update") - @PUT - @Path("/{id}") - @SelectJson("network") - @Fallback(Fallbacks.NullOnNotFoundOr404.class) - @Nullable - Network update(@PathParam("id") String id, @WrapWith("network") Network.UpdateNetwork network); - - /** - * Deletes the specified network - * - * @param id the id of the network to delete - * @return true if delete was successful, false if not - */ - @Named("network:delete") - @DELETE - @Path("/{id}") - @Fallback(Fallbacks.FalseOnNotFoundOr404.class) - boolean delete(@PathParam("id") String id); -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/PortApi.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/PortApi.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/PortApi.java deleted file mode 100644 index 6466a90..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/PortApi.java +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.features; - -import com.google.common.annotations.Beta; -import com.google.common.collect.FluentIterable; -import org.jclouds.Fallbacks; -import org.jclouds.Fallbacks.EmptyPagedIterableOnNotFoundOr404; -import org.jclouds.collect.PagedIterable; -import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; -import org.jclouds.openstack.neutron.v2.domain.Port; -import org.jclouds.openstack.neutron.v2.domain.Ports; -import org.jclouds.openstack.neutron.v2.fallbacks.EmptyPortsFallback; -import org.jclouds.openstack.neutron.v2.functions.ParsePorts; -import org.jclouds.openstack.neutron.v2.functions.PortsToPagedIterable; -import org.jclouds.openstack.v2_0.options.PaginationOptions; -import org.jclouds.rest.annotations.Fallback; -import org.jclouds.rest.annotations.RequestFilters; -import org.jclouds.rest.annotations.ResponseParser; -import org.jclouds.rest.annotations.SelectJson; -import org.jclouds.rest.annotations.Transform; -import org.jclouds.rest.annotations.WrapWith; - -import javax.inject.Named; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.core.MediaType; -import java.util.List; - -/** - * Provides access to Port operations for the OpenStack Networking (Neutron) v2 API. - * <p/> - * A port represents a virtual switch port on a logical network switch where all the interfaces attached to a given network are connected. - * <p/> - * A port has an administrative state which is either 'DOWN' or 'ACTIVE'. Ports which are administratively down will not be able to receive/send traffic. - * @see <a href= - * "http://docs.openstack.org/api/openstack-network/2.0/content/Ports.html">api doc</a> - */ -@Beta -@Path("/ports") -@RequestFilters(AuthenticateRequest.class) -@Consumes(MediaType.APPLICATION_JSON) -public interface PortApi { - - /** - * Returns the list of all ports currently defined in Neutron for the current tenant. The list provides the unique - * identifier of each network configured for the tenant. - * - * @return the list of all port references configured for the tenant - */ - @Named("port:list") - @GET - @Transform(PortsToPagedIterable.class) - @ResponseParser(ParsePorts.class) - @Fallback(EmptyPagedIterableOnNotFoundOr404.class) - PagedIterable<Port> list(); - - /** - * @see <a href="http://docs.openstack.org/api/openstack-network/2.0/content/pagination.html">api doc</a> - */ - @Named("port:list") - @GET - @ResponseParser(ParsePorts.class) - @Fallback(EmptyPortsFallback.class) - Ports list(PaginationOptions options); - - /** - * Returns the specific port - * - * @param id the id of the port to return - * @return Port or null if not found - */ - @Named("port:get") - @GET - @Path("/{id}") - @SelectJson("port") - @Fallback(Fallbacks.NullOnNotFoundOr404.class) - @Nullable - Port get(@PathParam("id") String id); - - /** - * Create a new port in the specified network - * - * @param port the port details - * @return a reference of the newly-created port - */ - @Named("port:create") - @POST - @SelectJson("port") - Port create(@WrapWith("port") Port.CreatePort port); - - /** - * Create multiple ports - * - * @param ports the bulk of ports to create - * @return list of references of the newly-created ports - */ - @Named("port:createBulk") - @POST - @SelectJson("ports") - FluentIterable<Port> createBulk(@WrapWith("ports") List<Port.CreatePort> ports); - - /** - * Update a port - * - * @param id the id of the port to update - * @param port CreatePort with just the attributes to update - * @return true if update successful, false if not - */ - @Named("port:update") - @PUT - @Path("/{id}") - @SelectJson("port") - @Fallback(Fallbacks.NullOnNotFoundOr404.class) - Port update(@PathParam("id") String id, @WrapWith("port") Port.UpdatePort port); - - /** - * Delete a port - * - * @param id the id of the port to delete - * @return true if delete successful, false if not - */ - @Named("port:delete") - @DELETE - @Path("/{id}") - @Fallback(Fallbacks.FalseOnNotFoundOr404.class) - boolean delete(@PathParam("id") String id); -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/SubnetApi.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/SubnetApi.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/SubnetApi.java deleted file mode 100644 index 7b6f54e..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/features/SubnetApi.java +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.features; - -import com.google.common.collect.FluentIterable; -import org.jclouds.Fallbacks; -import org.jclouds.Fallbacks.EmptyPagedIterableOnNotFoundOr404; -import org.jclouds.collect.PagedIterable; -import org.jclouds.javax.annotation.Nullable; -import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest; -import org.jclouds.openstack.neutron.v2.domain.Subnet; -import org.jclouds.openstack.neutron.v2.domain.Subnets; -import org.jclouds.openstack.neutron.v2.fallbacks.EmptySubnetsFallback; -import org.jclouds.openstack.neutron.v2.functions.ParseSubnets; -import org.jclouds.openstack.neutron.v2.functions.SubnetsToPagedIterable; -import org.jclouds.openstack.v2_0.options.PaginationOptions; -import org.jclouds.rest.annotations.Fallback; -import org.jclouds.rest.annotations.RequestFilters; -import org.jclouds.rest.annotations.ResponseParser; -import org.jclouds.rest.annotations.SelectJson; -import org.jclouds.rest.annotations.Transform; -import org.jclouds.rest.annotations.WrapWith; - -import javax.inject.Named; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import java.util.List; - -/** - * Provides access to Subnet operations for the OpenStack Networking (Neutron) v2 API. - * - * @see <a href= - * "http://docs.openstack.org/api/openstack-network/2.0/content/Subnets.html">api doc</a> - */ -@Path("/subnets") -@RequestFilters(AuthenticateRequest.class) -@Consumes(MediaType.APPLICATION_JSON) -@Produces(MediaType.APPLICATION_JSON) -public interface SubnetApi { - - /** - * Returns the list of all subnets currently defined in Neutron for the current tenant. The list provides the unique - * identifier of each subnet configured for the tenant. - * - * @return the list of all subnet references configured for the tenant - */ - @Named("subnet:list") - @GET - @ResponseParser(ParseSubnets.class) - @Transform(SubnetsToPagedIterable.class) - @Fallback(EmptyPagedIterableOnNotFoundOr404.class) - PagedIterable<Subnet> list(); - - /** - * @see <a href="http://docs.openstack.org/api/openstack-network/2.0/content/pagination.html">api doc</a> - */ - @Named("subnet:list") - @GET - @ResponseParser(ParseSubnets.class) - @Fallback(EmptySubnetsFallback.class) - Subnets list(PaginationOptions options); - - /** - * Returns the specific Subnet. - * - * @param id the id of the subnet to return - * @return Subnet or null if not found - */ - @Named("subnet:get") - @GET - @Path("/{id}") - @SelectJson("subnet") - @Fallback(Fallbacks.NullOnNotFoundOr404.class) - @Nullable - Subnet get(@PathParam("id") String id); - - /** - * Create a subnet within a specified network - * - * @param subnet the subnet to be created - * @return a reference of the newly-created subnet - */ - @Named("subnet:create") - @POST - @SelectJson("subnet") - Subnet create(@WrapWith("subnet") Subnet.CreateSubnet subnet); - - /** - * Create multiple subnets - * - * @param subnets the bulk of subnets to create - * @return list of references of the newly-created subnets - */ - @Named("subnet:createBulk") - @POST - @SelectJson("subnets") - FluentIterable<Subnet> createBulk(@WrapWith("subnets") List<Subnet.CreateSubnet> subnets); - - /** - * Update a subnet - * - * @param id the id of the subnet to update - * @return true if update was successful, false if not - */ - @Named("subnet:update") - @PUT - @Path("/{id}") - @SelectJson("subnet") - @Fallback(Fallbacks.NullOnNotFoundOr404.class) - Subnet update(@PathParam("id") String id, @WrapWith("subnet") Subnet.UpdateSubnet subnet); - - /** - * Delete a subnet - * - * @param id the id of the subnet to delete - * @return true if delete successful, false if not - */ - @Named("subnet:delete") - @DELETE - @Path("/{id}") - @Fallback(Fallbacks.FalseOnNotFoundOr404.class) - boolean delete(@PathParam("id") String id); -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/FloatingIPsToPagedIterable.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/FloatingIPsToPagedIterable.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/FloatingIPsToPagedIterable.java deleted file mode 100644 index 4d54d1f..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/FloatingIPsToPagedIterable.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import com.google.common.base.Function; -import com.google.common.base.Optional; -import org.jclouds.collect.IterableWithMarker; -import org.jclouds.collect.internal.Arg0ToPagedIterable; -import org.jclouds.openstack.neutron.v2.NeutronApi; -import org.jclouds.openstack.neutron.v2.domain.FloatingIP; -import org.jclouds.openstack.neutron.v2.extensions.FloatingIPApi; -import org.jclouds.openstack.v2_0.options.PaginationOptions; - -import javax.inject.Inject; - -import static com.google.common.base.Preconditions.checkNotNull; - -/** - * Ensures Floating IPs works as PagedIterable. - */ -public class FloatingIPsToPagedIterable extends Arg0ToPagedIterable.FromCaller<FloatingIP, FloatingIPsToPagedIterable> { - - private final NeutronApi api; - - @Inject - protected FloatingIPsToPagedIterable(NeutronApi api) { - this.api = checkNotNull(api, "api"); - } - - @Override - protected Function<Object, IterableWithMarker<FloatingIP>> markerToNextForArg0(Optional<Object> arg0) { - String region = arg0.isPresent() ? arg0.get().toString() : null; - final FloatingIPApi floatingIPApi = api.getFloatingIPApi(region).get(); - return new Function<Object, IterableWithMarker<FloatingIP>>() { - - @SuppressWarnings("unchecked") - @Override - public IterableWithMarker<FloatingIP> apply(Object input) { - PaginationOptions paginationOptions = PaginationOptions.class.cast(input); - return IterableWithMarker.class.cast(floatingIPApi.list(paginationOptions)); - } - - @Override - public String toString() { - return "listfloatingIPs()"; - } - }; - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/NetworksToPagedIterable.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/NetworksToPagedIterable.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/NetworksToPagedIterable.java deleted file mode 100644 index c898381..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/NetworksToPagedIterable.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import com.google.common.base.Function; -import com.google.common.base.Optional; -import org.jclouds.collect.IterableWithMarker; -import org.jclouds.collect.internal.Arg0ToPagedIterable; -import org.jclouds.openstack.neutron.v2.NeutronApi; -import org.jclouds.openstack.neutron.v2.domain.Network; -import org.jclouds.openstack.neutron.v2.features.NetworkApi; -import org.jclouds.openstack.v2_0.options.PaginationOptions; - -import javax.inject.Inject; - -import static com.google.common.base.Preconditions.checkNotNull; - -/** - * Makes Networks work as a PagedIterable. - */ -public class NetworksToPagedIterable extends Arg0ToPagedIterable.FromCaller<Network, NetworksToPagedIterable> { - - private final NeutronApi api; - - @Inject - protected NetworksToPagedIterable(NeutronApi api) { - this.api = checkNotNull(api, "api"); - } - - @Override - protected Function<Object, IterableWithMarker<Network>> markerToNextForArg0(Optional<Object> arg0) { - String region = arg0.isPresent() ? arg0.get().toString() : null; - final NetworkApi networkApi = api.getNetworkApi(region); - return new Function<Object, IterableWithMarker<Network>>() { - - @SuppressWarnings("unchecked") - @Override - public IterableWithMarker<Network> apply(Object input) { - PaginationOptions paginationOptions = PaginationOptions.class.cast(input); - return IterableWithMarker.class.cast(networkApi.list(paginationOptions)); - } - - @Override - public String toString() { - return "listNetworks()"; - } - }; - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseFloatingIPs.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseFloatingIPs.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseFloatingIPs.java deleted file mode 100644 index 6529627..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseFloatingIPs.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import com.google.inject.TypeLiteral; -import org.jclouds.http.functions.ParseJson; -import org.jclouds.json.Json; -import org.jclouds.openstack.neutron.v2.domain.FloatingIPs; - -import javax.inject.Inject; -import javax.inject.Singleton; - -/** - * Used by jclouds to provide more specific collections and fallbacks. - */ -@Singleton -public class ParseFloatingIPs extends ParseJson<FloatingIPs> { - - @Inject - public ParseFloatingIPs(Json json) { - super(json, TypeLiteral.get(FloatingIPs.class)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseNetworks.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseNetworks.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseNetworks.java deleted file mode 100644 index 0f9b8aa..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseNetworks.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - - -import com.google.inject.TypeLiteral; -import org.jclouds.http.functions.ParseJson; -import org.jclouds.json.Json; -import org.jclouds.openstack.neutron.v2.domain.Networks; - -import javax.inject.Inject; -import javax.inject.Singleton; - -/** - * Used by jclouds to provide more specific collections and fallbacks. - */ -@Singleton -public class ParseNetworks extends ParseJson<Networks> { - - @Inject - public ParseNetworks(Json json) { - super(json, TypeLiteral.get(Networks.class)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParsePorts.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParsePorts.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParsePorts.java deleted file mode 100644 index ab169dd..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParsePorts.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import com.google.inject.TypeLiteral; -import org.jclouds.http.functions.ParseJson; -import org.jclouds.json.Json; -import org.jclouds.openstack.neutron.v2.domain.Ports; - -import javax.inject.Inject; -import javax.inject.Singleton; - -/** - * Used by jclouds to provide more specific collections and fallbacks. - */ -@Singleton -public class ParsePorts extends ParseJson<Ports> { - - @Inject - public ParsePorts(Json json) { - super(json, TypeLiteral.get(Ports.class)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRouters.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRouters.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRouters.java deleted file mode 100644 index f0acde7..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRouters.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import com.google.inject.TypeLiteral; -import org.jclouds.http.functions.ParseJson; -import org.jclouds.json.Json; -import org.jclouds.openstack.neutron.v2.domain.Routers; - -import javax.inject.Inject; -import javax.inject.Singleton; - -/** - * Used by jclouds to provide more specific collections and fallbacks. - */ -@Singleton -public class ParseRouters extends ParseJson<Routers> { - - @Inject - public ParseRouters(Json json) { - super(json, TypeLiteral.get(Routers.class)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRules.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRules.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRules.java deleted file mode 100644 index 954180b..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseRules.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import javax.inject.Inject; -import javax.inject.Singleton; - -import org.jclouds.http.functions.ParseJson; -import org.jclouds.json.Json; -import org.jclouds.openstack.neutron.v2.domain.Rules; - -import com.google.inject.TypeLiteral; - -/** - * Used by jclouds to provide more specific collections and fallbacks. - */ -@Singleton -public class ParseRules extends ParseJson<Rules> { - - @Inject - public ParseRules(Json json) { - super(json, TypeLiteral.get(Rules.class)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSecurityGroups.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSecurityGroups.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSecurityGroups.java deleted file mode 100644 index 3864781..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSecurityGroups.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import javax.inject.Inject; -import javax.inject.Singleton; - -import org.jclouds.http.functions.ParseJson; -import org.jclouds.json.Json; -import org.jclouds.openstack.neutron.v2.domain.SecurityGroups; - -import com.google.inject.TypeLiteral; - -/** - * Used by jclouds to provide more specific collections and fallbacks. - */ -@Singleton -public class ParseSecurityGroups extends ParseJson<SecurityGroups> { - - @Inject - public ParseSecurityGroups(Json json) { - super(json, TypeLiteral.get(SecurityGroups.class)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSubnets.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSubnets.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSubnets.java deleted file mode 100644 index 0c985ee..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/ParseSubnets.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import com.google.inject.TypeLiteral; -import org.jclouds.http.functions.ParseJson; -import org.jclouds.json.Json; -import org.jclouds.openstack.neutron.v2.domain.Subnets; - -import javax.inject.Inject; -import javax.inject.Singleton; - -/** - * Used by jclouds to provide more specific collections and fallbacks. - */ -@Singleton -public class ParseSubnets extends ParseJson<Subnets> { - - @Inject - public ParseSubnets(Json json) { - super(json, TypeLiteral.get(Subnets.class)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/PortsToPagedIterable.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/PortsToPagedIterable.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/PortsToPagedIterable.java deleted file mode 100644 index cad5517..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/PortsToPagedIterable.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import com.google.common.base.Function; -import com.google.common.base.Optional; -import org.jclouds.collect.IterableWithMarker; -import org.jclouds.collect.internal.Arg0ToPagedIterable; -import org.jclouds.openstack.neutron.v2.NeutronApi; -import org.jclouds.openstack.neutron.v2.domain.Port; -import org.jclouds.openstack.neutron.v2.features.PortApi; -import org.jclouds.openstack.v2_0.options.PaginationOptions; - -import javax.inject.Inject; - -import static com.google.common.base.Preconditions.checkNotNull; - -/** - * Ensures Ports works as a paged iterable. - */ -public class PortsToPagedIterable extends Arg0ToPagedIterable.FromCaller<Port, PortsToPagedIterable> { - - private final NeutronApi api; - - @Inject - protected PortsToPagedIterable(NeutronApi api) { - this.api = checkNotNull(api, "api"); - } - - @Override - protected Function<Object, IterableWithMarker<Port>> markerToNextForArg0(Optional<Object> arg0) { - String region = arg0.isPresent() ? arg0.get().toString() : null; - final PortApi portApi = api.getPortApi(region); - return new Function<Object, IterableWithMarker<Port>>() { - - @SuppressWarnings("unchecked") - @Override - public IterableWithMarker<Port> apply(Object input) { - PaginationOptions paginationOptions = PaginationOptions.class.cast(input); - return IterableWithMarker.class.cast(portApi.list(paginationOptions)); - } - - @Override - public String toString() { - return "listPortsInDetail()"; - } - }; - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/RouterToPagedIterable.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/RouterToPagedIterable.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/RouterToPagedIterable.java deleted file mode 100644 index 5ce4def..0000000 --- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/main/java/org/jclouds/openstack/neutron/v2/functions/RouterToPagedIterable.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.openstack.neutron.v2.functions; - -import static com.google.common.base.Preconditions.checkNotNull; - -import javax.inject.Inject; - -import org.jclouds.collect.IterableWithMarker; -import org.jclouds.collect.internal.Arg0ToPagedIterable; -import org.jclouds.openstack.neutron.v2.NeutronApi; -import org.jclouds.openstack.neutron.v2.domain.Router; -import org.jclouds.openstack.neutron.v2.extensions.RouterApi; -import org.jclouds.openstack.v2_0.options.PaginationOptions; - -import com.google.common.base.Function; -import com.google.common.base.Optional; - -/** - * Ensures Routers works as PagedIterable. - */ -public class RouterToPagedIterable extends Arg0ToPagedIterable.FromCaller<Router, RouterToPagedIterable> { - - private final NeutronApi api; - - @Inject - protected RouterToPagedIterable(NeutronApi api) { - this.api = checkNotNull(api, "api"); - } - - @Override - protected Function<Object, IterableWithMarker<Router>> markerToNextForArg0(Optional<Object> arg0) { - String region = arg0.isPresent() ? arg0.get().toString() : null; - final RouterApi routerApi = api.getRouterApi(region).get(); - return new Function<Object, IterableWithMarker<Router>>() { - - @SuppressWarnings("unchecked") - @Override - public IterableWithMarker<Router> apply(Object input) { - PaginationOptions paginationOptions = PaginationOptions.class.cast(input); - return IterableWithMarker.class.cast(routerApi.list(paginationOptions)); - } - - @Override - public String toString() { - return "listRouters()"; - } - }; - } - -}
