MCPcopy Index your code
hub / github.com/ccxt/ccxt / sign

Method sign

java/lib/src/main/java/io/github/ccxt/exchanges/UpbitCore.java:2730–2788  ·  view source on GitHub ↗
(Object path, Object... optionalArgs)

Source from the content-addressed store, hash-verified

2728 }
2729
2730 public Object sign(Object path, Object... optionalArgs)
2731 {
2732 Object api = Helpers.getArg(optionalArgs, 0, "public");
2733 Object method = Helpers.getArg(optionalArgs, 1, "GET");
2734 Object parameters = Helpers.getArg(optionalArgs, 2, new java.util.HashMap<String, Object>() {{}});
2735 Object headers = Helpers.getArg(optionalArgs, 3, null);
2736 Object body = Helpers.getArg(optionalArgs, 4, null);
2737 Object url = this.implodeParams(Helpers.GetValue(Helpers.GetValue(this.urls, "api"), api), new java.util.HashMap<String, Object>() {{
2738 put( "hostname", UpbitCore.this.hostname );
2739 }});
2740 url = Helpers.add(url, Helpers.add(Helpers.add(Helpers.add("/", this.version), "/"), this.implodeParams(path, parameters)));
2741 Object query = this.omit(parameters, this.extractParams(path));
2742 if (Helpers.isTrue(!Helpers.isEqual(method, "POST")))
2743 {
2744 if (Helpers.isTrue(Helpers.getArrayLength(Helpers.objectKeys(query))))
2745 {
2746 url = Helpers.add(url, Helpers.add("?", this.urlencode(query)));
2747 }
2748 }
2749 if (Helpers.isTrue(Helpers.isEqual(api, "private")))
2750 {
2751 this.checkRequiredCredentials();
2752 headers = new java.util.HashMap<String, Object>() {{}};
2753 Object nonce = this.uuid();
2754 Object request = new java.util.HashMap<String, Object>() {{
2755 put( "access_key", UpbitCore.this.apiKey );
2756 put( "nonce", nonce );
2757 }};
2758 Object hasQuery = Helpers.getArrayLength(Helpers.objectKeys(query));
2759 Object auth = null;
2760 if (Helpers.isTrue(Helpers.isTrue((!Helpers.isEqual(method, "GET"))) && Helpers.isTrue((!Helpers.isEqual(method, "DELETE")))))
2761 {
2762 body = this.json(parameters);
2763 Helpers.addElementToObject(headers, "Content-Type", "application/json");
2764 }
2765 if (Helpers.isTrue(hasQuery))
2766 {
2767 auth = this.rawencode(query);
2768 }
2769 if (Helpers.isTrue(!Helpers.isEqual(auth, null)))
2770 {
2771 Object hash = this.hash(this.encode(auth), sha512());
2772 Helpers.addElementToObject(request, "query_hash", hash);
2773 Helpers.addElementToObject(request, "query_hash_alg", "SHA512");
2774 }
2775 Object token = jwt(request, this.encode(this.secret), sha256());
2776 Helpers.addElementToObject(headers, "Authorization", Helpers.add("Bearer ", token));
2777 }
2778 final Object finalUrl = url;
2779 final Object finalMethod = method;
2780 final Object finalBody = body;
2781 final Object finalHeaders = headers;
2782 return new java.util.HashMap<String, Object>() {{
2783 put( "url", finalUrl );
2784 put( "method", finalMethod );
2785 put( "body", finalBody );
2786 put( "headers", finalHeaders );
2787 }};

Callers

nothing calls this directly

Calls 15

getArgMethod · 0.95
GetValueMethod · 0.95
addMethod · 0.95
isTrueMethod · 0.95
isEqualMethod · 0.95
getArrayLengthMethod · 0.95
objectKeysMethod · 0.95
addElementToObjectMethod · 0.95
implodeParamsMethod · 0.45
omitMethod · 0.45
extractParamsMethod · 0.45
urlencodeMethod · 0.45

Tested by

no test coverage detected