提交 1bf7bd15 编写于 作者: T Tomasz Bak

Rename package from "typedclient" to "proxy" in ribbon-client-extensions module.

上级 c9eca011
package com.netflix.ribbonclientextensions;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
import com.netflix.ribbonclientextensions.typedclient.RibbonDynamicProxy;
import com.netflix.ribbonclientextensions.proxy.RibbonDynamicProxy;
public final class Ribbon {
......
......@@ -13,22 +13,22 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
import com.netflix.ribbonclientextensions.typedclient.annotation.ResourceGroupSpec;
import com.netflix.ribbonclientextensions.proxy.annotation.ResourceGroupSpec;
import static com.netflix.ribbonclientextensions.typedclient.annotation.ResourceGroupSpec.*;
import static com.netflix.ribbonclientextensions.proxy.annotation.ResourceGroupSpec.*;
/**
* @author Tomasz Bak
*/
public class ClassTemplate<T> {
class ClassTemplate<T> {
private final Class<T> clientInterface;
private final String resourceGroupName;
private final Class<? extends HttpResourceGroup> resourceGroupClass;
public ClassTemplate(Class<T> clientInterface) {
ClassTemplate(Class<T> clientInterface) {
this.clientInterface = clientInterface;
ResourceGroupSpec annotation = clientInterface.getAnnotation(ResourceGroupSpec.class);
......@@ -65,7 +65,7 @@ public class ClassTemplate<T> {
private void verify() {
if (resourceGroupName != null && resourceGroupClass != null) {
throw new RibbonTypedClientException("Both resource group name and class defined with @ResourceGroupSpec");
throw new RibbonProxyException("Both resource group name and class defined with @ResourceGroupSpec");
}
}
}
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.CacheProvider;
import com.netflix.ribbonclientextensions.evache.EvCacheOptions;
......@@ -26,11 +26,11 @@ import java.util.Map;
/**
* @author Tomasz Bak
*/
public class EvCacheProviderPool {
class EvCacheProviderPool {
private final Map<CacheId, EvCacheProvider<?>> pool;
public EvCacheProviderPool(MethodTemplate[] methodTemplates) {
EvCacheProviderPool(MethodTemplate[] methodTemplates) {
pool = createEvCachePool(methodTemplates);
}
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
......@@ -22,10 +22,10 @@ import static java.lang.String.*;
/**
* @author Tomasz Bak
*/
public class HttpResourceGroupFactory<T> {
class HttpResourceGroupFactory<T> {
private final ClassTemplate<T> classTemplate;
public HttpResourceGroupFactory(ClassTemplate<T> classTemplate) {
HttpResourceGroupFactory(ClassTemplate<T> classTemplate) {
this.classTemplate = classTemplate;
}
......@@ -36,7 +36,7 @@ public class HttpResourceGroupFactory<T> {
return new HttpResourceGroup(name);
}
if (resourceClass == null) {
throw new RibbonTypedClientException(format(
throw new RibbonProxyException(format(
"ResourceGroup not defined for interface %s - must be provided by annotation or passed explicitly during dynamic proxy creation",
classTemplate.getClientInterface()));
}
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.evcache.EVCacheTranscoder;
import com.netflix.ribbonclientextensions.CacheProvider;
......@@ -22,17 +22,17 @@ import com.netflix.ribbonclientextensions.RibbonRequest;
import com.netflix.ribbonclientextensions.evache.EvCacheOptions;
import com.netflix.ribbonclientextensions.http.HttpResponseValidator;
import com.netflix.ribbonclientextensions.hystrix.FallbackHandler;
import com.netflix.ribbonclientextensions.typedclient.annotation.CacheProviders;
import com.netflix.ribbonclientextensions.typedclient.annotation.CacheProviders.Provider;
import com.netflix.ribbonclientextensions.typedclient.annotation.Content;
import com.netflix.ribbonclientextensions.typedclient.annotation.ContentTransformerClass;
import com.netflix.ribbonclientextensions.typedclient.annotation.EvCache;
import com.netflix.ribbonclientextensions.typedclient.annotation.Http;
import com.netflix.ribbonclientextensions.typedclient.annotation.Http.Header;
import com.netflix.ribbonclientextensions.typedclient.annotation.Http.HttpMethod;
import com.netflix.ribbonclientextensions.typedclient.annotation.Hystrix;
import com.netflix.ribbonclientextensions.typedclient.annotation.TemplateName;
import com.netflix.ribbonclientextensions.typedclient.annotation.Var;
import com.netflix.ribbonclientextensions.proxy.annotation.CacheProviders;
import com.netflix.ribbonclientextensions.proxy.annotation.CacheProviders.Provider;
import com.netflix.ribbonclientextensions.proxy.annotation.Content;
import com.netflix.ribbonclientextensions.proxy.annotation.ContentTransformerClass;
import com.netflix.ribbonclientextensions.proxy.annotation.EvCache;
import com.netflix.ribbonclientextensions.proxy.annotation.Http;
import com.netflix.ribbonclientextensions.proxy.annotation.Http.Header;
import com.netflix.ribbonclientextensions.proxy.annotation.Http.HttpMethod;
import com.netflix.ribbonclientextensions.proxy.annotation.Hystrix;
import com.netflix.ribbonclientextensions.proxy.annotation.TemplateName;
import com.netflix.ribbonclientextensions.proxy.annotation.Var;
import io.reactivex.netty.serialization.ContentTransformer;
import java.lang.annotation.Annotation;
......@@ -51,11 +51,11 @@ import static java.lang.String.*;
* A few validations are performed as well:
* - a return type must be {@link com.netflix.ribbonclientextensions.RibbonRequest}
* - HTTP method must be always specified explicitly (there are no defaults)
* - only one parameter with {@link com.netflix.ribbonclientextensions.typedclient.annotation.Content} annotation is allowed
* - only one parameter with {@link com.netflix.ribbonclientextensions.proxy.annotation.Content} annotation is allowed
*
* @author Tomasz Bak
*/
public class MethodTemplate {
class MethodTemplate {
private final Method method;
private final String templateName;
private final Http.HttpMethod httpMethod;
......@@ -72,7 +72,7 @@ public class MethodTemplate {
private final Map<String, CacheProvider<?>> cacheProviders;
private final EvCacheOptions evCacheOptions;
public MethodTemplate(Method method) {
MethodTemplate(Method method) {
this.method = method;
MethodAnnotationValues values = new MethodAnnotationValues(method);
templateName = values.templateName;
......@@ -314,7 +314,7 @@ public class MethodTemplate {
if (transcoderClasses.length == 0) {
transcoder = null;
} else if (transcoderClasses.length > 1) {
throw new RibbonTypedClientException("Multiple transcoders defined on method " + method.getName());
throw new RibbonProxyException("Multiple transcoders defined on method " + method.getName());
} else {
transcoder = Utils.newInstance(transcoderClasses[0]);
}
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.CacheProvider;
import com.netflix.ribbonclientextensions.RibbonRequest;
......@@ -36,7 +36,7 @@ import java.util.Map;
/**
* @author Tomasz Bak
*/
public class MethodTemplateExecutor {
class MethodTemplateExecutor {
private static final ContentTransformer<ByteBuf> BYTE_BUF_TRANSFORMER = new ContentTransformer<ByteBuf>() {
@Override
......@@ -52,7 +52,7 @@ public class MethodTemplateExecutor {
private final HttpRequestTemplate<?> httpRequestTemplate;
private final EvCacheProviderPool evCacheProviderPool;
public MethodTemplateExecutor(HttpResourceGroup httpResourceGroup, MethodTemplate methodTemplate, EvCacheProviderPool evCacheProviderPool) {
MethodTemplateExecutor(HttpResourceGroup httpResourceGroup, MethodTemplate methodTemplate, EvCacheProviderPool evCacheProviderPool) {
this.httpResourceGroup = httpResourceGroup;
this.methodTemplate = methodTemplate;
this.evCacheProviderPool = evCacheProviderPool;
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
......
......@@ -14,19 +14,19 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
/**
* @author Tomasz Bak
*/
public class RibbonTypedClientException extends RuntimeException {
public class RibbonProxyException extends RuntimeException {
private static final long serialVersionUID = -1;
public RibbonTypedClientException(String message) {
public RibbonProxyException(String message) {
super(message);
}
public RibbonTypedClientException(String message, Throwable cause) {
public RibbonProxyException(String message, Throwable cause) {
super(message, cause);
}
}
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import java.lang.reflect.Method;
......@@ -47,7 +47,7 @@ final class Utils {
try {
return targetMethod.invoke(object, args);
} catch (Exception ex) {
throw new RibbonTypedClientException(format(
throw new RibbonProxyException(format(
"Failed to execute method %s on object %s",
method.getName(), object.getClass().getSimpleName()), ex);
}
......@@ -57,7 +57,7 @@ final class Utils {
try {
return aClass.newInstance();
} catch (Exception e) {
throw new RibbonTypedClientException("Cannot instantiate object from class " + aClass, e);
throw new RibbonProxyException("Cannot instantiate object from class " + aClass, e);
}
}
}
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import com.netflix.ribbonclientextensions.CacheProviderFactory;
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
......
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import io.reactivex.netty.serialization.ContentTransformer;
......
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import com.netflix.evcache.EVCacheTranscoder;
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import com.netflix.hystrix.HystrixExecutableInfo;
import com.netflix.ribbonclientextensions.http.HttpResponseValidator;
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
......
......@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.annotation;
package com.netflix.ribbonclientextensions.proxy.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
......
......@@ -14,11 +14,11 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import org.junit.Test;
import static com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.*;
import static com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.*;
import static org.junit.Assert.*;
/**
......@@ -47,7 +47,7 @@ public class ClassTemplateTest {
assertNull("resource name not expected", classTemplate.getResourceGroupName());
}
@Test(expected = RibbonTypedClientException.class)
@Test(expected = RibbonProxyException.class)
public void testBothNameAndResourceGroupClassInAnnotation() throws Exception {
new ClassTemplate(BrokenMovieServiceWithResourceGroupNameAndClassAnnotation.class);
}
......
......@@ -14,12 +14,12 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.CacheProvider;
import com.netflix.ribbonclientextensions.evache.EvCacheOptions;
import com.netflix.ribbonclientextensions.evache.EvCacheProvider;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieService;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
......
......@@ -14,13 +14,13 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieServiceWithResourceGroupClassAnnotation;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieServiceWithResourceGroupNameAnnotation;
import com.netflix.ribbonclientextensions.typedclient.sample.ResourceGroupClasses.SampleHttpResourceGroup;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieServiceWithResourceGroupClassAnnotation;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieServiceWithResourceGroupNameAnnotation;
import com.netflix.ribbonclientextensions.proxy.sample.ResourceGroupClasses.SampleHttpResourceGroup;
import org.junit.Test;
import static org.junit.Assert.*;
......@@ -30,7 +30,7 @@ import static org.junit.Assert.*;
*/
public class HttpResourceGroupFactoryTest {
@Test(expected = RibbonTypedClientException.class)
@Test(expected = RibbonProxyException.class)
public void testResourceGroupAnnotationMissing() throws Exception {
ClassTemplate classTemplate = new ClassTemplate(SampleMovieService.class);
new HttpResourceGroupFactory(classTemplate).createResourceGroup();
......
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.CacheProvider;
import com.netflix.ribbonclientextensions.RibbonRequest;
......@@ -7,11 +7,11 @@ import com.netflix.ribbonclientextensions.evache.EvCacheProvider;
import com.netflix.ribbonclientextensions.http.HttpRequestBuilder;
import com.netflix.ribbonclientextensions.http.HttpRequestTemplate;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
import com.netflix.ribbonclientextensions.typedclient.sample.HystrixHandlers.MovieFallbackHandler;
import com.netflix.ribbonclientextensions.typedclient.sample.HystrixHandlers.SampleHttpResponseValidator;
import com.netflix.ribbonclientextensions.typedclient.sample.Movie;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.ShortMovieService;
import com.netflix.ribbonclientextensions.proxy.sample.HystrixHandlers.MovieFallbackHandler;
import com.netflix.ribbonclientextensions.proxy.sample.HystrixHandlers.SampleHttpResponseValidator;
import com.netflix.ribbonclientextensions.proxy.sample.Movie;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.ShortMovieService;
import io.netty.buffer.ByteBuf;
import io.reactivex.netty.protocol.http.client.RawContentSource;
import org.junit.Before;
......@@ -24,7 +24,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
import java.lang.reflect.Method;
import java.util.Map;
import static com.netflix.ribbonclientextensions.typedclient.Utils.*;
import static com.netflix.ribbonclientextensions.proxy.Utils.*;
import static junit.framework.Assert.*;
import static org.easymock.EasyMock.*;
import static org.powermock.api.easymock.PowerMock.createMock;
......
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.CacheProvider;
import com.netflix.ribbonclientextensions.evache.EvCacheOptions;
import com.netflix.ribbonclientextensions.typedclient.sample.EvCacheClasses.SampleEVCacheTranscoder;
import com.netflix.ribbonclientextensions.typedclient.sample.Movie;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.BrokenMovieService;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.HystrixOptionalAnnotationValues;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.typedclient.sample.SampleCacheProviderFactory.SampleCacheProvider;
import com.netflix.ribbonclientextensions.proxy.sample.EvCacheClasses.SampleEVCacheTranscoder;
import com.netflix.ribbonclientextensions.proxy.sample.Movie;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.BrokenMovieService;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.HystrixOptionalAnnotationValues;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.proxy.sample.SampleCacheProviderFactory.SampleCacheProvider;
import org.junit.Test;
import static com.netflix.ribbonclientextensions.typedclient.Utils.*;
import static com.netflix.ribbonclientextensions.proxy.Utils.*;
import static org.junit.Assert.*;
/**
......
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import com.netflix.ribbonclientextensions.RibbonRequest;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
import com.netflix.ribbonclientextensions.typedclient.sample.Movie;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.typedclient.sample.MovieServiceInterfaces.SampleMovieServiceWithResourceGroupNameAnnotation;
import com.netflix.ribbonclientextensions.proxy.sample.Movie;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieService;
import com.netflix.ribbonclientextensions.proxy.sample.MovieServiceInterfaces.SampleMovieServiceWithResourceGroupNameAnnotation;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
......@@ -15,7 +15,7 @@ import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Map;
import static com.netflix.ribbonclientextensions.typedclient.Utils.*;
import static com.netflix.ribbonclientextensions.proxy.Utils.*;
import static org.easymock.EasyMock.*;
import static org.powermock.api.easymock.PowerMock.createMock;
import static org.powermock.api.easymock.PowerMock.*;
......
package com.netflix.ribbonclientextensions.typedclient;
package com.netflix.ribbonclientextensions.proxy;
import org.junit.Test;
......@@ -40,7 +40,7 @@ public class UtilsTest {
assertNotNull(Utils.newInstance(Object.class));
}
@Test(expected = RibbonTypedClientException.class)
@Test(expected = RibbonProxyException.class)
public void testNewInstanceForFailure() throws Exception {
Utils.newInstance(InputStream.class);
}
......
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.sample;
package com.netflix.ribbonclientextensions.proxy.sample;
import com.netflix.evcache.EVCacheTranscoder;
import net.spy.memcached.CachedData;
......
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.sample;
package com.netflix.ribbonclientextensions.proxy.sample;
import com.netflix.hystrix.HystrixExecutableInfo;
import com.netflix.ribbonclientextensions.ServerError;
......
package com.netflix.ribbonclientextensions.typedclient.sample;
package com.netflix.ribbonclientextensions.proxy.sample;
import com.netflix.ribbonclientextensions.RibbonRequest;
import com.netflix.ribbonclientextensions.typedclient.annotation.CacheProviders;
import com.netflix.ribbonclientextensions.typedclient.annotation.CacheProviders.Provider;
import com.netflix.ribbonclientextensions.typedclient.annotation.Content;
import com.netflix.ribbonclientextensions.typedclient.annotation.ContentTransformerClass;
import com.netflix.ribbonclientextensions.typedclient.annotation.EvCache;
import com.netflix.ribbonclientextensions.typedclient.annotation.Http;
import com.netflix.ribbonclientextensions.typedclient.annotation.Http.Header;
import com.netflix.ribbonclientextensions.typedclient.annotation.Http.HttpMethod;
import com.netflix.ribbonclientextensions.typedclient.annotation.Hystrix;
import com.netflix.ribbonclientextensions.typedclient.annotation.ResourceGroupSpec;
import com.netflix.ribbonclientextensions.typedclient.annotation.TemplateName;
import com.netflix.ribbonclientextensions.typedclient.annotation.Var;
import com.netflix.ribbonclientextensions.typedclient.sample.EvCacheClasses.SampleEVCacheTranscoder;
import com.netflix.ribbonclientextensions.typedclient.sample.HystrixHandlers.MovieFallbackHandler;
import com.netflix.ribbonclientextensions.typedclient.sample.HystrixHandlers.SampleHttpResponseValidator;
import com.netflix.ribbonclientextensions.proxy.annotation.CacheProviders;
import com.netflix.ribbonclientextensions.proxy.annotation.CacheProviders.Provider;
import com.netflix.ribbonclientextensions.proxy.annotation.Content;
import com.netflix.ribbonclientextensions.proxy.annotation.ContentTransformerClass;
import com.netflix.ribbonclientextensions.proxy.annotation.EvCache;
import com.netflix.ribbonclientextensions.proxy.annotation.Http;
import com.netflix.ribbonclientextensions.proxy.annotation.Http.Header;
import com.netflix.ribbonclientextensions.proxy.annotation.Http.HttpMethod;
import com.netflix.ribbonclientextensions.proxy.annotation.Hystrix;
import com.netflix.ribbonclientextensions.proxy.annotation.ResourceGroupSpec;
import com.netflix.ribbonclientextensions.proxy.annotation.TemplateName;
import com.netflix.ribbonclientextensions.proxy.annotation.Var;
import com.netflix.ribbonclientextensions.proxy.sample.EvCacheClasses.SampleEVCacheTranscoder;
import com.netflix.ribbonclientextensions.proxy.sample.HystrixHandlers.MovieFallbackHandler;
import com.netflix.ribbonclientextensions.proxy.sample.HystrixHandlers.SampleHttpResponseValidator;
import io.netty.buffer.ByteBuf;
import io.reactivex.netty.protocol.http.client.RawContentSource;
import static com.netflix.ribbonclientextensions.typedclient.sample.ResourceGroupClasses.*;
import static com.netflix.ribbonclientextensions.proxy.sample.ResourceGroupClasses.*;
/**
* @author Tomasz Bak
......
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.sample;
package com.netflix.ribbonclientextensions.proxy.sample;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
......
package com.netflix.ribbonclientextensions.typedclient.sample;
package com.netflix.ribbonclientextensions.proxy.sample;
import com.netflix.ribbonclientextensions.http.HttpResourceGroup;
......
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.netflix.ribbonclientextensions.typedclient.sample;
package com.netflix.ribbonclientextensions.proxy.sample;
import com.netflix.ribbonclientextensions.CacheProvider;
import com.netflix.ribbonclientextensions.CacheProviderFactory;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册