2011-01-27 13 views
0

CRestを使用してRESTful WebサービスとインターフェイスするAndroidアプリケーションを作成しようとしています。CRestを使用して設定可能なエンドポイント

私が抱える問題は、サービスの作成にあります。ツイッターの例では、エンドポイントは静的URL(api.twitter.com)に設定されていますが、私の場合、ユーザーが指定するまでエンドポイントを知ることはできないため、設定が必要です。私がやりたい何

は、この線に沿って何かである:

@EndPoint("http://%s.somedomain.com") 
@ContextPath("/admin") 

public interface ProductService { 
    @Path("/products.json") 
    InputStream getProducts(); 

    @Path("/products/{0}.json") 
    InputStream getProduct(int id); 
} 

は、私は、エンドポイント

答えて

0

が見を持っているサービスの作成時に指定することができる方法はありますあなたは、コードのこの部分を見つけることができます下部にquick startリンク、:

Properties props = new Properties(); 
props.setProperty("service.end-point", "http://127.0.0.1:8080"); 

CRest crest = new CRestBuilder() 
         .overrideDefaultConfigWith(props) 
         .build(); 

次のリリースでは、ビルダーを介して、または修道院のいずれかを介して、それを行うための簡単な方法を持っていますあなたが言及したアノテーション値にプレースホルダを持つイオン。

0

ところでプレースホルダの実装は今http://crest.codegist.org/annotations/api.html

String myInterfaceHost = ...; 

CRest crest = CRest.placeholder("my.interface.host", myInterfaceHost).build(); 

MyInterface myInterface = crest.build(MyInterface.class); 
と一緒に使用し

@EndPoint("http://{my.interface.host}") 
public interface MyInterface { 
    ... 
} 

が、文書化され

関連する問題