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

Method sign

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

Source from the content-addressed store, hash-verified

2828 }
2829
2830 public Object sign(Object path, Object... optionalArgs)
2831 {
2832 Object api = Helpers.getArg(optionalArgs, 0, "public");
2833 Object method = Helpers.getArg(optionalArgs, 1, "GET");
2834 Object parameters = Helpers.getArg(optionalArgs, 2, new java.util.HashMap<String, Object>() {{}});
2835 Object headers = Helpers.getArg(optionalArgs, 3, null);
2836 Object body = Helpers.getArg(optionalArgs, 4, null);
2837 Object url = Helpers.add(Helpers.add(Helpers.GetValue(Helpers.GetValue(this.urls, "api"), api), "/"), this.implodeParams(path, parameters));
2838 Object query = this.omit(parameters, this.extractParams(path));
2839 if (Helpers.isTrue(Helpers.isEqual(api, "public")))
2840 {
2841 if (Helpers.isTrue(Helpers.isEqual(path, "Authenticate")))
2842 {
2843 Object auth = Helpers.add(Helpers.add(this.login, ":"), this.password);
2844 Object auth64 = this.stringToBase64(auth);
2845 headers = new java.util.HashMap<String, Object>() {{
2846 put( "Authorization", Helpers.add("Basic ", auth64) );
2847 }};
2848 } else if (Helpers.isTrue(Helpers.isEqual(path, "Authenticate2FA")))
2849 {
2850 Object pending2faToken = this.safeString(this.options, "pending2faToken");
2851 if (Helpers.isTrue(!Helpers.isEqual(pending2faToken, null)))
2852 {
2853 final Object finalPending2faToken = pending2faToken;
2854 headers = new java.util.HashMap<String, Object>() {{
2855 put( "Pending2FaToken", finalPending2faToken );
2856 }};
2857 query = this.omit(query, "pending2faToken");
2858 }
2859 }
2860 if (Helpers.isTrue(Helpers.getArrayLength(Helpers.objectKeys(query))))
2861 {
2862 url = Helpers.add(url, Helpers.add("?", this.urlencode(query)));
2863 }
2864 } else if (Helpers.isTrue(Helpers.isEqual(api, "private")))
2865 {
2866 this.checkRequiredCredentials();
2867 Object sessionToken = this.safeString(this.options, "sessionToken");
2868 if (Helpers.isTrue(Helpers.isEqual(sessionToken, null)))
2869 {
2870 Object nonce = String.valueOf(this.nonce());
2871 Object auth = Helpers.add(Helpers.add(nonce, this.uid), this.apiKey);
2872 Object signature = this.hmac(this.encode(auth), this.encode(this.secret), sha256());
2873 final Object finalNonce = nonce;
2874 headers = new java.util.HashMap<String, Object>() {{
2875 put( "Nonce", finalNonce );
2876 put( "APIKey", NdaxCore.this.apiKey );
2877 put( "Signature", signature );
2878 put( "UserId", NdaxCore.this.uid );
2879 }};
2880 } else
2881 {
2882 final Object finalSessionToken = sessionToken;
2883 headers = new java.util.HashMap<String, Object>() {{
2884 put( "APToken", finalSessionToken );
2885 }};
2886 }
2887 if (Helpers.isTrue(Helpers.isEqual(method, "POST")))

Callers

nothing calls this directly

Calls 15

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

Tested by

no test coverage detected