Java 用戶端檔案庫包裝在 Java 保存檔中。此檔案位於伺服器上的 server_installation/plugins/util/ucr-plugin-util.jar 位置。 您還可以透過按一下,從伺服器下載該檔案。
public static void loginAs(String baseURL,
String username,
String password)
例如,下列指令將以預設管理者帳戶身分登入:Clients.loginAs("http://ucrserver.example.com:8080/", "admin", "admin")
public static void loginWithToken(String baseURL, String token)
此變異通常用於外掛程式。Clients.application()
import static com.urbancode.release.rest.framework.Clients.*;
Java 用戶端檔案庫基於開放程式碼 REST 保證的檔案庫,並且作為部分方法簽章中之傳回類型而出現的 Response 類別是類別 com.jayway.restassured.response.Response。
public T[] post(T... toCreate)
public T[] post(List<T> toCreate)
public T[] getAll()
public T[] getPage(int start, int end)
public Response put(T... toUpdate)
public Response put(List<T> toUpdate)
public Response delete(T... toDelete)
public Response delete(List<T> toDelete)
public T post()
public T get()
public Response put()
public Response delete()
為了方便起見,額外提供了一種 save() 方法。此方法會執行 put() 或 post(),視是否將用戶端模型的 id 內容設為非空值而定。這樣,您可以使用相同的方法來要求新元素或對現有元素進行更新,視該元素是否已經存在而定。
public T save()
Application myApp = new Application();
myApp.setName("My New Application");
myApp.setTeams(Team.SAMPLE_TEAM);
myApp = myApp.save();
String savedName = myApp.getName();
Application myApp = application().name("My New Application").
teams(Team.SAMPLE_TEAM).save();
String savedName = myApp.name;
public T property(String key, String value)
public T setProperty(String key, String value)
public String getProperty(String key)
Release sampleRelease =
release().id("00000000-0000-0000-0000-000000000036").
format("detail").when().get();
因為 list、detail 和 name 格式是常用格式,所以提供了便捷方法。下列程式碼將使用每一種常用格式來擷取版本範例的 3 份副本:
Release listFormatRelease =
release().id("00000000-0000-0000-0000-000000000036")
.listFormat().when().get();
Release detailFormatRelease =
release().id("00000000-0000-0000-0000-000000000036").
detailFormat().when().get();
Release nameFormatRelease =
release().id("00000000-0000-0000-0000-000000000036").
nameFormat().when().get();
getPage(int start, int end)
start 和 end 參數從 0 開始的參數,並且是內含式參數。例如,如果至少存在兩個應用程式,則下列要求將依照預設排序來擷取前兩個應用程式:
Application[] firstTwoApps = application().getPage(0,1);
Change[] sortedChanges = change().orderBy("release.name").when().getAll();
QueryParams.filter(String field, FilterClass filterClass,
FilterType type, Object... values)
QueryParams.like(String field, String like)
QueryParams.equals(String field, FilterClass filterClass, String match)
例如,要尋找特定時間戳記後建立的所有版本,請使用下列查詢:Release[] createdAfter = release()
.filter("dateCreated", FilterClass.LONG, FilterType.GREATER_THAN, timestamp)
.orderBy("dateCreated")
.when().getAll();
public int getChangeCount(Status status, ChangeType type)
同一 Application 類別還提供了下列遠端作業,以在一個指令中將多個變更與一個應用程式建立關聯:
public Response updateChanges(Change... changes)
如需可用遠端作業的更多詳細資料,請參閱 REST 指令。