Skip to content

Commit 05d64d0

Browse files
author
Jeremy Majors
committed
Add ability to pass the Consul ACL Token when interacting with Consul's session api.
1 parent f242014 commit 05d64d0

File tree

3 files changed

+88
-6
lines changed

3 files changed

+88
-6
lines changed

src/main/java/com/ecwid/consul/v1/ConsulClient.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -690,31 +690,62 @@ public Response<String> sessionCreate(NewSession newSession, QueryParams queryPa
690690
return sessionClient.sessionCreate(newSession, queryParams);
691691
}
692692

693+
@Override
694+
public Response<String> sessionCreate(NewSession newSession, QueryParams queryParams, String token) {
695+
return sessionClient.sessionCreate(newSession, queryParams, token);
696+
}
697+
698+
693699
@Override
694700
public Response<Void> sessionDestroy(String session, QueryParams queryParams) {
695701
return sessionClient.sessionDestroy(session, queryParams);
696702
}
697703

704+
@Override
705+
public Response<Void> sessionDestroy(String session, QueryParams queryParams, String token) {
706+
return sessionClient.sessionDestroy(session, queryParams, token);
707+
}
708+
698709
@Override
699710
public Response<Session> getSessionInfo(String session, QueryParams queryParams) {
700711
return sessionClient.getSessionInfo(session, queryParams);
701712
}
702713

714+
@Override
715+
public Response<Session> getSessionInfo(String session, QueryParams queryParams, String token) {
716+
return sessionClient.getSessionInfo(session, queryParams, token);
717+
}
718+
703719
@Override
704720
public Response<List<Session>> getSessionNode(String node, QueryParams queryParams) {
705721
return sessionClient.getSessionNode(node, queryParams);
706722
}
707723

724+
@Override
725+
public Response<List<Session>> getSessionNode(String node, QueryParams queryParams, String token) {
726+
return sessionClient.getSessionNode(node, queryParams, token);
727+
}
728+
708729
@Override
709730
public Response<List<Session>> getSessionList(QueryParams queryParams) {
710731
return sessionClient.getSessionList(queryParams);
711732
}
712733

734+
@Override
735+
public Response<List<Session>> getSessionList(QueryParams queryParams, String token) {
736+
return sessionClient.getSessionList(queryParams, token);
737+
}
738+
713739
@Override
714740
public Response<Session> renewSession(String session, QueryParams queryParams) {
715741
return sessionClient.renewSession(session, queryParams);
716742
}
717743

744+
@Override
745+
public Response<Session> renewSession(String session, QueryParams queryParams, String token) {
746+
return sessionClient.renewSession(session, queryParams, token);
747+
}
748+
718749
// -------------------------------------------------------------------------------------------
719750
// Status
720751

src/main/java/com/ecwid/consul/v1/session/SessionClient.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,25 @@ public interface SessionClient {
1414

1515
public Response<String> sessionCreate(NewSession newSession, QueryParams queryParams);
1616

17+
public Response<String> sessionCreate(NewSession newSession, QueryParams queryParams, String token);
18+
1719
public Response<Void> sessionDestroy(String session, QueryParams queryParams);
1820

21+
public Response<Void> sessionDestroy(String session, QueryParams queryParams, String token);
22+
1923
Response<Session> getSessionInfo(String session, QueryParams queryParams);
2024

25+
Response<Session> getSessionInfo(String session, QueryParams queryParams, String token);
26+
2127
Response<List<Session>> getSessionNode(String node, QueryParams queryParams);
2228

29+
Response<List<Session>> getSessionNode(String node, QueryParams queryParams, String token);
30+
2331
Response<List<Session>> getSessionList(QueryParams queryParams);
2432

33+
Response<List<Session>> getSessionList(QueryParams queryParams, String token);
34+
2535
Response<Session> renewSession(String session, QueryParams queryParams);
36+
37+
Response<Session> renewSession(String session, QueryParams queryParams, String token);
2638
}

src/main/java/com/ecwid/consul/v1/session/SessionConsulClient.java

Lines changed: 45 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.ecwid.consul.v1.session;
22

33
import com.ecwid.consul.ConsulException;
4+
import com.ecwid.consul.SingleUrlParameters;
5+
import com.ecwid.consul.UrlParameters;
46
import com.ecwid.consul.json.GsonFactory;
57
import com.ecwid.consul.v1.OperationException;
68
import com.ecwid.consul.transport.RawResponse;
@@ -39,8 +41,15 @@ public SessionConsulClient(String agentHost, int agentPort) {
3941

4042
@Override
4143
public Response<String> sessionCreate(NewSession newSession, QueryParams queryParams) {
44+
return sessionCreate(newSession, queryParams, null);
45+
}
46+
47+
@Override
48+
public Response<String> sessionCreate(NewSession newSession, QueryParams queryParams, String token) {
49+
UrlParameters tokenParam = token != null ? new SingleUrlParameters("token", token) : null;
50+
4251
String json = GsonFactory.getGson().toJson(newSession);
43-
RawResponse rawResponse = rawClient.makePutRequest("/v1/session/create", json, queryParams);
52+
RawResponse rawResponse = rawClient.makePutRequest("/v1/session/create", json, queryParams, tokenParam);
4453

4554
if (rawResponse.getStatusCode() == 200) {
4655
Map<String, String> value = GsonFactory.getGson().fromJson(rawResponse.getContent(), new TypeToken<Map<String, String>>() {
@@ -53,7 +62,13 @@ public Response<String> sessionCreate(NewSession newSession, QueryParams queryPa
5362

5463
@Override
5564
public Response<Void> sessionDestroy(String session, QueryParams queryParams) {
56-
RawResponse rawResponse = rawClient.makePutRequest("/v1/session/destroy/" + session, "", queryParams);
65+
return sessionDestroy(session, queryParams, null);
66+
}
67+
68+
@Override
69+
public Response<Void> sessionDestroy(String session, QueryParams queryParams, String token) {
70+
UrlParameters tokenParam = token != null ? new SingleUrlParameters("token", token) : null;
71+
RawResponse rawResponse = rawClient.makePutRequest("/v1/session/destroy/" + session, "", queryParams, tokenParam);
5772

5873
if (rawResponse.getStatusCode() == 200) {
5974
return new Response<Void>(null, rawResponse);
@@ -64,7 +79,13 @@ public Response<Void> sessionDestroy(String session, QueryParams queryParams) {
6479

6580
@Override
6681
public Response<Session> getSessionInfo(String session, QueryParams queryParams) {
67-
RawResponse rawResponse = rawClient.makeGetRequest("/v1/session/info/" + session, queryParams);
82+
return getSessionInfo(session, queryParams, null);
83+
}
84+
85+
@Override
86+
public Response<Session> getSessionInfo(String session, QueryParams queryParams, String token) {
87+
UrlParameters tokenParam = token != null ? new SingleUrlParameters("token", token) : null;
88+
RawResponse rawResponse = rawClient.makeGetRequest("/v1/session/info/" + session, queryParams, tokenParam);
6889

6990
if (rawResponse.getStatusCode() == 200) {
7091
List<Session> value = GsonFactory.getGson().fromJson(rawResponse.getContent(), new TypeToken<List<Session>>() {
@@ -84,7 +105,13 @@ public Response<Session> getSessionInfo(String session, QueryParams queryParams)
84105

85106
@Override
86107
public Response<List<Session>> getSessionNode(String node, QueryParams queryParams) {
87-
RawResponse rawResponse = rawClient.makeGetRequest("/v1/session/node/" + node, queryParams);
108+
return getSessionNode(node, queryParams, null);
109+
}
110+
111+
@Override
112+
public Response<List<Session>> getSessionNode(String node, QueryParams queryParams, String token) {
113+
UrlParameters tokenParam = token != null ? new SingleUrlParameters("token", token) : null;
114+
RawResponse rawResponse = rawClient.makeGetRequest("/v1/session/node/" + node, queryParams, tokenParam);
88115

89116
if (rawResponse.getStatusCode() == 200) {
90117
List<Session> value = GsonFactory.getGson().fromJson(rawResponse.getContent(), new TypeToken<List<Session>>() {
@@ -97,7 +124,13 @@ public Response<List<Session>> getSessionNode(String node, QueryParams queryPara
97124

98125
@Override
99126
public Response<List<Session>> getSessionList(QueryParams queryParams) {
100-
RawResponse rawResponse = rawClient.makeGetRequest("/v1/session/list", queryParams);
127+
return getSessionList(queryParams, null);
128+
}
129+
130+
@Override
131+
public Response<List<Session>> getSessionList(QueryParams queryParams, String token) {
132+
UrlParameters tokenParam = token != null ? new SingleUrlParameters("token", token) : null;
133+
RawResponse rawResponse = rawClient.makeGetRequest("/v1/session/list", queryParams, tokenParam);
101134

102135
if (rawResponse.getStatusCode() == 200) {
103136
List<Session> value = GsonFactory.getGson().fromJson(rawResponse.getContent(), new TypeToken<List<Session>>() {
@@ -109,7 +142,13 @@ public Response<List<Session>> getSessionList(QueryParams queryParams) {
109142
}
110143

111144
public Response<Session> renewSession(String session, QueryParams queryParams) {
112-
RawResponse rawResponse = rawClient.makePutRequest("/v1/session/renew/" + session, "", queryParams);
145+
return renewSession(session, queryParams, null);
146+
}
147+
148+
@Override
149+
public Response<Session> renewSession(String session, QueryParams queryParams, String token) {
150+
UrlParameters tokenParam = token != null ? new SingleUrlParameters("token", token) : null;
151+
RawResponse rawResponse = rawClient.makePutRequest("/v1/session/renew/" + session, "", queryParams, tokenParam);
113152

114153
if (rawResponse.getStatusCode() == 200) {
115154
List<Session> value = GsonFactory.getGson().fromJson(rawResponse.getContent(), new TypeToken<List<Session>>() {

0 commit comments

Comments
 (0)