net
Contents
net은 HSP 에서 확장 라이브러리로 제공하는 API 로 aar 라이브러리 파일과 build.gradle 파일을 수정하여 사용할 수 있다.
라이브러리 추가 방법은 Android 개발 가이드 (http://hone.hanwha.co.kr/hsp/bin/view/android/guide/android-dev-guide/) 링크의 내용을 참조하면 된다.
net 은 HSP 의 Operation 또는 Hub 와 통신을 쉽게 사용하기 위해서 만들어졌으며 서버와 주고 받는 데이터는 HoneMobileContainer을 통해 전달할 수 있다.
MessageContainer Class
public final class HoneMobileContainer <T> implements Serializable {
private String target;
private String path;
private String method = "POST";
private HoneMobileMessage<T> message;
private HoneMobileOptions options;
}
private String target;
private String path;
private String method = "POST";
private HoneMobileMessage<T> message;
private HoneMobileOptions options;
}
HoneMobileMessage Class
public final class HoneMobileMessage<P> implements Serializable {
private Map<String, Object> header;
private P payload;
}
private Map<String, Object> header;
private P payload;
}
HoneMobileMessage Class
public final class HoneMobileOptions<P> implements Serializable {
private int requestTimeout = -1;
private Map<String, Object> attachedFiles;
}
private int requestTimeout = -1;
private Map<String, Object> attachedFiles;
}
MessageContainer
필드 | 필드 | 설명 | 비고 | M/O |
---|---|---|---|---|
target | 서버이름, OP가 미리 정의되어 있어야 함 | M | ||
path | 서비스 URL 구성을 위한 path | M | ||
method | HTTP 전송 방식
| 대소문자 구분 없음 | M | |
message | Header 와 Playload 로 구성되며 서버로 전송되는 실제 패킷. 개발 시에는 서버와 비즈앱 간의 합의된 규격서를 기반으로 작성된다. | O | ||
header | 패킷 공통 정보 | O | ||
payload | 전송 데이터 | O | ||
options | O | |||
requestTimeout | 네트워크 read/connection timeout 값 | O | ||
attachedFiles | Upload할 파일 데이터 | O | ||
request
HSP 의 Operation 또는 Hub 와의 네트워크 통신 기능을 제공한다.
options
필드 | 설명 | 비고 | M/O |
---|---|---|---|
container | 서버로 데이터 전송에 필요한 정보 | HoneMobileContainer | M |
successCallback | 응답 패킷의 내용 전달 | M | |
errorCallback | 오류 메시지 전달 | M | |
statusListener | Request 통신 진행 상황 전달 | OnStatusListener | O |
successCallback
필드 | 설명 | 비고 |
---|---|---|
result | 응답 패킷의 내용 | |
errorCallback
필드 | 필드 | 설명 | 비고 |
---|---|---|---|
e | 오류 객체 | ||
code | 상세 오류 코드 | ||
message | 오류 메시지 | ||
statusListener (Optional)
필드 | 필드 | 설명 | 비고 |
---|---|---|---|
status | Request 통신 진행 상황
| ||
options | 파일 업로드/다운로드 시 제공되는 데이터 사이즈 | ||
totalByte | 전체 데이터 사이즈 | 단위 byte | |
currentByte | 현재 수신된 데이터 사이즈 | 단위 byte | |
Example
Post
데이터 생성 요청
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards"
method = "post"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
}
target = "hub1"
path = "/notice/boards"
method = "post"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
}
Map<String, Object> payload = new HashMap<>();
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("post");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("post");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
파일 업로드 요청
val path = "/data/user/0/com.hanwha.testhonemobile/files/hone_repository/bizAppId/test.png"
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards"
method = "post"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
attachedFiles = hashMapOf<String, Any>().apply {
put("icon", path)
}
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.PROGRESS -> {
var totalByte = options?.totalByte
var currentByte = options?.currentByte
}
Status.FINISH -> {
}
}
}
})
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards"
method = "post"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
attachedFiles = hashMapOf<String, Any>().apply {
put("icon", path)
}
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.PROGRESS -> {
var totalByte = options?.totalByte
var currentByte = options?.currentByte
}
Status.FINISH -> {
}
}
}
})
Map<String, Object> payload = new HashMap<>();
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
String path = "/data/user/0/com.hanwha.testhonemobile/files/hone_repository/bizAppId/test.png";
Map<String, Object> attachedFiles = new HashMap<>();
attachedFiles.put("icon", path);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
options.setAttachedFiles(attachedFiles);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("post");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case PROGRESS:
long totalByte = options.getTotalByte();
long currentByte = options.getCurrentByte();
break;
case FINISH:
break;
}
}
});
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
String path = "/data/user/0/com.hanwha.testhonemobile/files/hone_repository/bizAppId/test.png";
Map<String, Object> attachedFiles = new HashMap<>();
attachedFiles.put("icon", path);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
options.setAttachedFiles(attachedFiles);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("post");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case PROGRESS:
long totalByte = options.getTotalByte();
long currentByte = options.getCurrentByte();
break;
case FINISH:
break;
}
}
});
Get
데이터 전체 조회
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards"
method = "get"
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
target = "hub1"
path = "/notice/boards"
method = "get"
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("get");
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("get");
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
데이터 조회
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards"
method = "get"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("id", 110)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
target = "hub1"
path = "/notice/boards"
method = "get"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("id", 110)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
Map<String, Object> payload = new HashMap<>();
payload.put("id", 110);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("get");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
payload.put("id", 110);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards");
container.setMethod("get");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
파일 다운로드 요청
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards/110/icon.png"
method = "get"
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.PROGRESS -> {
var totalByte = options?.totalByte
var currentByte = options?.currentByte
}
Status.FINISH -> {
}
}
}
})
target = "hub1"
path = "/notice/boards/110/icon.png"
method = "get"
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.PROGRESS -> {
var totalByte = options?.totalByte
var currentByte = options?.currentByte
}
Status.FINISH -> {
}
}
}
})
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110/icon.png");
container.setMethod("get");
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case PROGRESS:
long totalByte = options.getTotalByte();
long currentByte = options.getCurrentByte();
break;
case FINISH:
break;
}
}
});
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110/icon.png");
container.setMethod("get");
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case PROGRESS:
long totalByte = options.getTotalByte();
long currentByte = options.getCurrentByte();
break;
case FINISH:
break;
}
}
});
put
데이터 갱신
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards/110"
method = "put"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
target = "hub1"
path = "/notice/boards/110"
method = "put"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
Map<String, Object> payload = new HashMap<>();
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110");
container.setMethod("put");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110");
container.setMethod("put");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
파일 업로드 요청
val path = "/data/user/0/com.hanwha.testhonemobile/files/hone_repository/bizAppId/icon.png"
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards/110"
method = "put"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
attachedFiles = hashMapOf<String, Any>().apply {
put("icon", path)
}
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.PROGRESS -> {
var totalByte = options?.totalByte
var currentByte = options?.currentByte
}
Status.FINISH -> {
}
}
}
})
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards/110"
method = "put"
message = HoneMobileMessage<Map<String, Any>>().apply {
header = hashMapOf<String, Any?>()
payload = hashMapOf<String, Any>().apply {
put("title", "[공지] Android 15 업그레이드 패치 관련 공지")
put("contents", "Android 15업그레이드 패치 관련 내용입니다.")
put("postedAt", 1704692416000)
}
}
options = HoneMobileOptions().apply {
requestTimeout = 10000
attachedFiles = hashMapOf<String, Any>().apply {
put("icon", path)
}
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.PROGRESS -> {
var totalByte = options?.totalByte
var currentByte = options?.currentByte
}
Status.FINISH -> {
}
}
}
})
Map<String, Object> payload = new HashMap<>();
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
String path = "/data/user/0/com.hanwha.testhonemobile/files/hone_repository/bizAppId/icon.png";
Map<String, Object> attachedFiles = new HashMap<>();
attachedFiles.put("icon", path);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
options.setAttachedFiles(attachedFiles);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110");
container.setMethod("put");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case PROGRESS:
long totalByte = options.getTotalByte();
long currentByte = options.getCurrentByte();
break;
case FINISH:
break;
}
}
});
payload.put("title", "[공지] Android 15 업그레이드 패치 관련 공지 ");
payload.put("contents", " Android 15 업그레이드 패치 관련 내용입니다.");
payload.put("postedAt", 170469241);
HoneMobileMessage message = new HoneMobileMessage();
message.setPayload(payload);
String path = "/data/user/0/com.hanwha.testhonemobile/files/hone_repository/bizAppId/icon.png";
Map<String, Object> attachedFiles = new HashMap<>();
attachedFiles.put("icon", path);
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
options.setAttachedFiles(attachedFiles);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110");
container.setMethod("put");
container.setMessage(message);
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case PROGRESS:
long totalByte = options.getTotalByte();
long currentByte = options.getCurrentByte();
break;
case FINISH:
break;
}
}
});
Delete
데이터 삭제
val container = HoneMobileContainer<Map<String, Any>>().apply {
target = "hub1"
path = "/notice/boards/110"
method = "delete"
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
target = "hub1"
path = "/notice/boards/110"
method = "delete"
options = HoneMobileOptions().apply {
requestTimeout = 10000
}
}
DAPNet.request(activity, container, {
// TODO
}, {
// TODO
}, object: OnStatusListener() {
override fun onStatus(status: Status, options: Options?) {
when (status) {
Status.START -> {
}
Status.FINISH -> {
}
}
}
})
HoneMobileOptions options = new HoneMobileOptions();
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110");
container.setMethod("delete");
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
options.setRequestTimeout(10000);
HoneMobileContainer container = new HoneMobileContainer<>();
container.setTarget("hub1");
container.setPath("/notice/boards/110");
container.setMethod("delete");
container.setOptions(options);
DAPNet.request(activity, container, result -> {
// Todo
}, error -> {
// Todo
}, new OnStatusListener() {
@Override
public void onStatus(@NonNull Status status, @Nullable Options options) {
switch (status) {
case START:
break;
case FINISH:
break;
}
}
});
Error Code
Code | Cause | Comment |
---|---|---|
E12800 | 파라메터 값이 잘못되어 있을 경우 | |
E12801 | 전달된 액션 값이 알 수 없는 액션일 경우 | |
E12802 | 통신할 서버 이름이 null 이거나 빈 값이고 설정 정보에 없는 경우 | |
E12803 | 서비스 정보가 null 이거나 빈 값인 경우 | |
E12804 | 데이터 전송 방식이 post, get, put, delete 외 다른 값인 경우 | |
E12805 | 타임아웃이 0~2147483647 사이의 정수값이 아닌 경우 | |
E12806 | 서버로 업로드 할 첨부 파일 정보가 잘못되어 있을 경우 | |
E12807 | 서버로 전송되는 패킷 공통 정보가 잘못되어 있을 경우 | |
E12808 | 서버로 전송되는 전송 데이터가 잘못되어 있을 경우 | |
E12850 | 실행 중 오류가 발생 되었을 경우 | |
E12851 | 실행 중 업로드할 파일이 존재하지 않을 경우 | |
E12852 | 서버로 부터 전달받은 응답 메시지가 없는 경우 | |
E12853 | 서버로 부터 전달받은 응답 메시지가 잘못되어 있는 경우 | |
E12899 | 알 수 없는 오류가 발생 되었을 경우 | |