Skip to content

Commit fe14864

Browse files
author
danf
committed
Add Repository update support
see: RTFACT-7576
1 parent 21b28cd commit fe14864

21 files changed

+184
-64
lines changed

api/src/main/java/com/jfrog/bintray/client/api/BintrayCallException.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.jfrog.bintray.client.api;
22

3-
import com.jfrog.bintray.client.api.details.ObjectMapperHelper;
43
import org.apache.commons.io.IOUtils;
54
import org.apache.http.HttpResponse;
65
import org.apache.http.HttpStatus;
@@ -36,7 +35,7 @@ public BintrayCallException(HttpResponse response) {
3635
if (response.getEntity() != null && statusCode != 405 && statusCode != 500) {
3736
try {
3837
entity = IOUtils.toString(response.getEntity().getContent());
39-
ObjectMapper mapper = ObjectMapperHelper.objectMapper;
38+
ObjectMapper mapper = ObjectMapperHelper.get();
4039
JsonNode node = mapper.readTree(entity);
4140
message = node.get("message").getTextValue();
4241
} catch (IOException | NullPointerException e) {
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package com.jfrog.bintray.client.api;
2+
3+
/**
4+
* Holds Bintray REST API related constants
5+
*
6+
* @author Dan Feldman
7+
*/
8+
public interface BintrayClientConstatnts {
9+
10+
String API_USERS = "users/";
11+
String API_REPOS = "repos/";
12+
String API_PKGS = "packages/";
13+
String API_VER = "versions/";
14+
String API_GPG = "gpg/";
15+
String API_CONTENT = "content/";
16+
17+
String API_PUBLISH = "/publish";
18+
String API_ATTR = "/attributes";
19+
20+
String GPG_SIGN_HEADER = "X-GPG-PASSPHRASE";
21+
}

api/src/main/java/com/jfrog/bintray/client/api/details/ObjectMapperHelper.java renamed to api/src/main/java/com/jfrog/bintray/client/api/ObjectMapperHelper.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.jfrog.bintray.client.api.details;
1+
package com.jfrog.bintray.client.api;
22

33
import org.codehaus.jackson.JsonFactory;
44
import org.codehaus.jackson.map.DeserializationConfig;
@@ -13,7 +13,9 @@
1313
*/
1414
public class ObjectMapperHelper {
1515

16-
public static final ObjectMapper objectMapper = buildDetailsMapper();
16+
public static ObjectMapper get() {
17+
return buildDetailsMapper();
18+
}
1719

1820
private static ObjectMapper buildDetailsMapper() {
1921
ObjectMapper mapper = new ObjectMapper(new JsonFactory());

api/src/main/java/com/jfrog/bintray/client/api/details/Attribute.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.jfrog.bintray.client.api.details;
22

33

4+
import com.jfrog.bintray.client.api.ObjectMapperHelper;
45
import org.codehaus.jackson.annotate.*;
56
import org.codehaus.jackson.map.ObjectMapper;
67
import org.codehaus.jackson.type.TypeReference;
@@ -52,7 +53,7 @@ public Attribute(@JsonProperty("name") String name, @JsonProperty("type") Type t
5253
}
5354

5455
public static ObjectMapper getObjectMapper() {
55-
return ObjectMapperHelper.objectMapper;
56+
return ObjectMapperHelper.get();
5657
}
5758

5859
/**
@@ -64,7 +65,7 @@ public static ObjectMapper getObjectMapper() {
6465
*/
6566
@JsonIgnore
6667
public static String getJsonFromAttributeList(List<Attribute> attributeDetails) throws IOException {
67-
ObjectMapper mapper = ObjectMapperHelper.objectMapper;
68+
ObjectMapper mapper = ObjectMapperHelper.get();
6869
String jsonContent;
6970
try {
7071
jsonContent = mapper.writeValueAsString(attributeDetails);
@@ -77,7 +78,7 @@ public static String getJsonFromAttributeList(List<Attribute> attributeDetails)
7778

7879
@JsonIgnore
7980
public static List<Attribute> getAttributeListFromJson(InputStream inputStream) throws IOException {
80-
ObjectMapper mapper = ObjectMapperHelper.objectMapper;
81+
ObjectMapper mapper = ObjectMapperHelper.get();
8182
List<Attribute> attributes;
8283
try {
8384
attributes = mapper.readValue(inputStream, new TypeReference<List<Attribute>>() {

api/src/main/java/com/jfrog/bintray/client/api/details/PackageDetails.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.jfrog.bintray.client.api.details;
22

3+
import com.jfrog.bintray.client.api.ObjectMapperHelper;
34
import org.codehaus.jackson.annotate.JsonCreator;
45
import org.codehaus.jackson.annotate.JsonIgnore;
56
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
@@ -82,7 +83,7 @@ public PackageDetails(String name) {
8283
}
8384

8485
public static ObjectMapper getObjectMapper() {
85-
return ObjectMapperHelper.objectMapper;
86+
return ObjectMapperHelper.get();
8687
}
8788

8889
public PackageDetails name(String name) {

api/src/main/java/com/jfrog/bintray/client/api/details/RepositoryDetails.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.jfrog.bintray.client.api.details;
22

3+
import com.jfrog.bintray.client.api.ObjectMapperHelper;
34
import org.codehaus.jackson.annotate.JsonIgnore;
45
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
56
import org.codehaus.jackson.annotate.JsonProperty;
@@ -42,7 +43,7 @@ public class RepositoryDetails {
4243
Boolean updateExisting; //Property is not used in the Bintray API but Artifactory uses is in it's Bintray integration
4344

4445
public static ObjectMapper getObjectMapper() {
45-
return ObjectMapperHelper.objectMapper;
46+
return ObjectMapperHelper.get();
4647
}
4748

4849
@JsonIgnore

api/src/main/java/com/jfrog/bintray/client/api/details/SubjectDetails.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.jfrog.bintray.client.api.details;
22

3+
import com.jfrog.bintray.client.api.ObjectMapperHelper;
34
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
45
import org.codehaus.jackson.annotate.JsonProperty;
56
import org.codehaus.jackson.map.ObjectMapper;
@@ -35,7 +36,7 @@ public class SubjectDetails {
3536
Long quotaUsedBytes;
3637

3738
public static ObjectMapper getObjectMapper() {
38-
return ObjectMapperHelper.objectMapper;
39+
return ObjectMapperHelper.get();
3940
}
4041

4142
public String getName() {

api/src/main/java/com/jfrog/bintray/client/api/details/VersionDetails.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.jfrog.bintray.client.api.details;
22

3+
import com.jfrog.bintray.client.api.ObjectMapperHelper;
34
import org.codehaus.jackson.annotate.JsonIgnore;
45
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
56
import org.codehaus.jackson.annotate.JsonProperty;
@@ -62,7 +63,7 @@ public VersionDetails(String name) {
6263
}
6364

6465
public static ObjectMapper getObjectMapper() {
65-
return ObjectMapperHelper.objectMapper;
66+
return ObjectMapperHelper.get();
6667
}
6768

6869
public VersionDetails description(String description) {

api/src/main/java/com/jfrog/bintray/client/api/handle/RepositoryHandle.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.jfrog.bintray.client.api.BintrayCallException;
44
import com.jfrog.bintray.client.api.details.PackageDetails;
5+
import com.jfrog.bintray.client.api.details.RepositoryDetails;
56
import com.jfrog.bintray.client.api.model.Repository;
67

78
import java.io.IOException;
@@ -15,6 +16,8 @@ public interface RepositoryHandle extends Handle<Repository> {
1516

1617
Repository get() throws IOException, BintrayCallException;
1718

19+
RepositoryHandle update(RepositoryDetails repositoryDetails) throws IOException, BintrayCallException;
20+
1821
PackageHandle pkg(String name);
1922

2023
PackageHandle createPkg(PackageDetails packageDetails) throws IOException, BintrayCallException;

impl/src/main/java/com/jfrog/bintray/client/impl/handle/PackageHandleImpl.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package com.jfrog.bintray.client.impl.handle;
22

33
import com.jfrog.bintray.client.api.BintrayCallException;
4+
import com.jfrog.bintray.client.api.ObjectMapperHelper;
45
import com.jfrog.bintray.client.api.details.Attribute;
5-
import com.jfrog.bintray.client.api.details.ObjectMapperHelper;
66
import com.jfrog.bintray.client.api.details.PackageDetails;
77
import com.jfrog.bintray.client.api.details.VersionDetails;
88
import com.jfrog.bintray.client.api.handle.PackageHandle;
@@ -28,6 +28,8 @@
2828
import java.util.List;
2929
import java.util.Map;
3030

31+
import static com.jfrog.bintray.client.api.BintrayClientConstatnts.API_PKGS;
32+
3133
/**
3234
* @author Dan Feldman
3335
*/
@@ -60,7 +62,7 @@ public Pkg get() throws IOException, BintrayCallException {
6062
HttpResponse response = bintrayHandle.get(getCurrentPackageUri(), null);
6163
PackageDetails pkgDetails;
6264
String jsonContentStream = IOUtils.toString(response.getEntity().getContent());
63-
ObjectMapper mapper = ObjectMapperHelper.objectMapper;
65+
ObjectMapper mapper = ObjectMapperHelper.get();
6466
try {
6567
pkgDetails = mapper.readValue(jsonContentStream, PackageDetails.class);
6668
} catch (IOException e) {
@@ -157,7 +159,7 @@ public void addQuery(AttributesSearchQueryImpl query) {
157159
* @throws BintrayCallException
158160
*/
159161
public List<Version> attributeSearch() throws BintrayCallException {
160-
ObjectMapper mapper = ObjectMapperHelper.objectMapper;
162+
ObjectMapper mapper = ObjectMapperHelper.get();
161163
StringWriter writer = new StringWriter();
162164
try {
163165
mapper.writeValue(writer, searchQuery);
@@ -191,7 +193,7 @@ public List<Version> attributeSearch() throws BintrayCallException {
191193

192194
@Override
193195
public String getCurrentPackageUri() {
194-
return String.format("packages/%s/%s/%s", repositoryHandle.owner().name(), repositoryHandle.name(), name);
196+
return String.format(API_PKGS + "%s/%s/%s", repositoryHandle.owner().name(), repositoryHandle.name(), name);
195197
}
196198

197199
@Override

0 commit comments

Comments
 (0)