Skip to content

Commit

Permalink
Merge pull request #1 from inka-pallycon/v1.1.0
Browse files Browse the repository at this point in the history
feat : update ApiUrl
  • Loading branch information
nykim0402 authored Mar 31, 2022
2 parents 686be23 + fab3271 commit b16d7e8
Show file tree
Hide file tree
Showing 5 changed files with 78 additions and 22 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.idea/**
/target
15 changes: 14 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.pallycon</groupId>
<artifactId>sample</artifactId>
<version>1.0.0</version>
<version>1.1.0</version>
<name>sample</name>
<description>PallyCon Java Sample Project for Watermark API</description>

Expand Down Expand Up @@ -42,6 +42,19 @@
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>

</dependencies>

<build>
Expand Down
59 changes: 52 additions & 7 deletions src/main/java/com/pallycon/sample/config/ApiUrl.java
Original file line number Diff line number Diff line change
@@ -1,31 +1,76 @@
package com.pallycon.sample.config;

import com.pallycon.sample.watermark.WatermarkApi;
import org.apache.commons.lang3.StringUtils;

/**
* Enum Class for API URL and METHOD
*/
public enum ApiUrl {
PACK_JOB_REGISTER("https://api.pallycon.com/api/v2/pack/", "POST"),
PACK_JOB_LIST("https://api.pallycon.com/api/v2/pack/", "GET"),
SESSION_WATERMARK_URL("https://watermark.pallycon.com/api/v2/session/watermarkUrl/", "GET"),
SESSION_WATERMARK_URL_AKAMAI("https://watermark.pallycon.com/api/v2/session/watermarkUrl/akamai/", "GET"),

SESSION_WATERMARK_URL_GENERATE("https://watermark.pallycon.com/api/v2/session/watermarkUrl/", "GET"),
SESSION_WATERMARK_TOKEN_GENERATE("https://watermark.pallycon.com/api/v2/session/watermarkData/", "GET"),
SESSION_LIST("https://watermark.pallycon.com/api/v2/session/list/", "GET"),

STORAGE_REGISTER("https://api.pallycon.com/api/v2/storage/", "POST"),
STORAGE_UPDATE("https://api.pallycon.com/api/v2/storage/", "PUT"),
STORAGE_LIST("https://api.pallycon.com/api/v2/storage/", "GET")
STORAGE_LIST("https://api.pallycon.com/api/v2/storage/", "GET"),

DETECT_REGISTER("https://api.pallycon.com/api/v2/detect/", "POST", "url"),
DETECT_LIST("https://api.pallycon.com/api/v2/detect/", "GET", "list"),
DETECT_DETAIL("https://api.pallycon.com/api/v2/detect/", "GET", "detail")
;

private String url;
private String method;
private String subUrl;

ApiUrl(String url, String method) {
this.url = url;
this.method = method;
this(url, method, null);
}

public String getUrl() {
return url;
ApiUrl(String url, String method, String subUrl) {
this.url = url;
this.method = method;
this.subUrl = subUrl;
}

public String getMethod() {
return method;
}


public String makeRequestUrl(String apiDataString, WatermarkApi watermarkApi) {
String siteId = watermarkApi.getSiteId();

StringBuffer url = new StringBuffer();
url.append(generateBaseUrl(siteId));
url.append(generateQueryString(apiDataString));

return url.toString();
}

// generate base url for Request url
private String generateBaseUrl(String siteId) {
StringBuffer baseUrl = new StringBuffer(this.url);
baseUrl.append(siteId);
baseUrl.append(generateSubUrl());

return baseUrl.toString();
}

private String generateSubUrl() {
if (StringUtils.isEmpty(this.subUrl)) {
return "";
}

return "/" + this.subUrl;
}

// generate queryString to get added on base url
private String generateQueryString(String apiDataString) {
return "?pallycon-apidata=" + apiDataString;
}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.pallycon.sample.watermark;

import com.pallycon.sample.util.StringEncrypter;
import com.sun.istack.internal.NotNull;
import org.jetbrains.annotations.NotNull;
import org.json.simple.JSONObject;

import java.nio.charset.StandardCharsets;
Expand Down
22 changes: 9 additions & 13 deletions src/test/java/com/pallycon/sample/WatermarkApiImplTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -54,29 +54,25 @@ public void execute() throws Exception {
*/
// makeUrl(result, ApiUrl.PACK_JOB_LIST);
// makeUrl(result, ApiUrl.PACK_JOB_REGISTER);
// makeUrl(result, ApiUrl.SESSION_WATERMARK_URL);
// makeUrl(result, ApiUrl.SESSION_WATERMARK_URL_AKAMAI);
// makeUrl(result, ApiUrl.SESSION_WATERMARK_URL_GENERATE);
// makeUrl(result, ApiUrl.SESSION_WATERMARK_TOKEN_GENERATE);
// makeUrl(result, ApiUrl.SESSION_LIST);
// makeUrl(result, ApiUrl.STORAGE_LIST);
// makeUrl(result, ApiUrl.STORAGE_REGISTER);
// makeUrl(result, ApiUrl.STORAGE_UPDATE);
// makeUrl(result, ApiUrl.DETECT_REGISTER);
// makeUrl(result, ApiUrl.DETECT_LIST);
// makeUrl(result, ApiUrl.DETECT_DETAIL);
}

// can get the result as a type of JSON
private void makeUrl(String result, ApiUrl apiUrl) {
String url = apiUrl.getUrl();
String url = apiUrl.makeRequestUrl(result, watermarkApi);
String method = apiUrl.getMethod();

StringBuffer sb = new StringBuffer();
sb.append(url);
sb.append(watermarkApi.getSiteId());
sb.append("?");
sb.append("pallycon-apidata");
sb.append("=");
sb.append(result);

JSONObject jsonObject = new JSONObject();
jsonObject.put("url", sb.toString());
jsonObject.put("url", url);
jsonObject.put("method", method);
logger.info("url : " + jsonObject.toJSONString());
}
}
}

0 comments on commit b16d7e8

Please sign in to comment.