Skip to content

Commit 5aa278c

Browse files
Removed checking by userName from getSubscription method (#98)
1 parent 99b00c2 commit 5aa278c

File tree

7 files changed

+183
-213
lines changed

7 files changed

+183
-213
lines changed

src/main/java/com/ericsson/ei/config/HttpSessionConfig.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import org.springframework.context.annotation.Bean;
55
import org.springframework.context.annotation.Primary;
66
import org.springframework.data.mongodb.core.MongoOperations;
7+
import org.springframework.security.core.context.SecurityContextHolder;
78
import org.springframework.session.data.mongo.MongoOperationsSessionRepository;
89
import org.springframework.session.data.mongo.config.annotation.web.http.EnableMongoHttpSession;
910

@@ -20,4 +21,9 @@ public MongoOperationsSessionRepository mongoSessionRepository(MongoOperations m
2021
repository.setMaxInactiveIntervalInSeconds(maxInactiveIntervalInSeconds);
2122
return repository;
2223
}
24+
25+
public static String getCurrentUser() {
26+
return SecurityContextHolder.getContext().getAuthentication().getName();
27+
}
28+
2329
}

src/main/java/com/ericsson/ei/controller/SubscriptionControllerImpl.java

Lines changed: 23 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,13 @@
2020
import java.util.ArrayList;
2121
import java.util.List;
2222

23+
import com.ericsson.ei.config.HttpSessionConfig;
2324
import org.slf4j.Logger;
2425
import org.slf4j.LoggerFactory;
2526
import org.springframework.beans.factory.annotation.Autowired;
2627
import org.springframework.beans.factory.annotation.Value;
2728
import org.springframework.http.HttpStatus;
2829
import org.springframework.http.ResponseEntity;
29-
import org.springframework.security.core.Authentication;
30-
import org.springframework.security.core.context.SecurityContextHolder;
3130
import org.springframework.stereotype.Component;
3231
import org.springframework.web.bind.annotation.CrossOrigin;
3332
import org.springframework.web.bind.annotation.PathVariable;
@@ -64,14 +63,10 @@ public class SubscriptionControllerImpl implements SubscriptionController {
6463
public ResponseEntity<SubscriptionResponse> createSubscription(@RequestBody List<Subscription> subscriptions) {
6564
ResponseEntity<SubscriptionResponse> subResponse = null;
6665
SubscriptionResponse subscriptionResponse = new SubscriptionResponse();
67-
68-
String user = "";
66+
6967
for (Subscription subscription : subscriptions) {
7068

71-
// Adding user name in subscription json
72-
if (authenticate) {
73-
user = currentUser();
74-
}
69+
String user = (authenticate) ? HttpSessionConfig.getCurrentUser() : "";
7570
subscription.setUserName(user);
7671
subResponse = null;
7772
try {
@@ -83,22 +78,22 @@ public ResponseEntity<SubscriptionResponse> createSubscription(@RequestBody List
8378
LOG.error(msg);
8479
subscriptionResponse.setMsg(msg);
8580
subscriptionResponse.setStatusCode(HttpStatus.PRECONDITION_FAILED.value());
86-
subResponse = new ResponseEntity<SubscriptionResponse>(subscriptionResponse,
81+
subResponse = new ResponseEntity<>(subscriptionResponse,
8782
HttpStatus.PRECONDITION_FAILED);
8883
}
8984

90-
if (!subscriptionService.doSubscriptionExist(subscription.getSubscriptionName(), user)) {
85+
if (!subscriptionService.doSubscriptionExist(subscription.getSubscriptionName())) {
9186
subscriptionService.addSubscription(subscription);
9287
LOG.info("Subscription :" + subscription.getSubscriptionName() + " Inserted Successfully");
9388
subscriptionResponse.setMsg("Inserted Successfully");
9489
subscriptionResponse.setStatusCode(HttpStatus.OK.value());
95-
subResponse = new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.OK);
90+
subResponse = new ResponseEntity<>(subscriptionResponse, HttpStatus.OK);
9691

9792
} else {
9893
LOG.error("Subscription :" + subscription.getSubscriptionName() + " already exists");
9994
subscriptionResponse.setMsg("Subscription already exists");
10095
subscriptionResponse.setStatusCode(HttpStatus.BAD_REQUEST.value());
101-
subResponse = new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.BAD_REQUEST);
96+
subResponse = new ResponseEntity<>(subscriptionResponse, HttpStatus.BAD_REQUEST);
10297
}
10398
}
10499
return subResponse;
@@ -108,31 +103,24 @@ public ResponseEntity<SubscriptionResponse> createSubscription(@RequestBody List
108103
@CrossOrigin
109104
@ApiOperation(value = "Returns the subscription rules for given subscription name")
110105
public ResponseEntity<List<Subscription>> getSubscriptionById(@PathVariable String subscriptionName) {
111-
String user = "";
112-
if (authenticate) {
113-
user = currentUser();
114-
}
115-
List<Subscription> subscriptionList = new ArrayList<Subscription>();
106+
List<Subscription> subscriptionList = new ArrayList<>();
116107
try {
117108
LOG.info("Subscription :" + subscriptionName + " fetch started");
118-
subscriptionList.add(subscriptionService.getSubscription(subscriptionName, user));
109+
subscriptionList.add(subscriptionService.getSubscription(subscriptionName));
119110
LOG.info("Subscription :" + subscriptionName + " fetched");
120-
return new ResponseEntity<List<Subscription>>(subscriptionList, HttpStatus.OK);
111+
return new ResponseEntity<>(subscriptionList, HttpStatus.OK);
121112
} catch (SubscriptionNotFoundException e) {
122113
LOG.error("Subscription :" + subscriptionName + " not found in records");
123-
return new ResponseEntity<List<Subscription>>(subscriptionList, HttpStatus.OK);
114+
return new ResponseEntity<>(subscriptionList, HttpStatus.BAD_REQUEST);
124115
}
125116
}
126117

127118
@Override
128119
// @CrossOrigin
129120
@ApiOperation(value = "Update the existing subscription by the subscription name")
130121
public ResponseEntity<SubscriptionResponse> updateSubscriptions(@RequestBody List<Subscription> subscriptions) {
131-
String user = "";
132-
if (authenticate) {
133-
user = currentUser();
134-
}
135122
Subscription subscription = subscriptions.get(0);
123+
String user = (authenticate) ? HttpSessionConfig.getCurrentUser() : "";
136124
subscription.setUserName(user);
137125
String subscriptionName = subscription.getSubscriptionName();
138126
LOG.info("Subscription :" + subscriptionName + " update started");
@@ -146,44 +134,40 @@ public ResponseEntity<SubscriptionResponse> updateSubscriptions(@RequestBody Lis
146134
LOG.error(msg);
147135
subscriptionResponse.setMsg(msg);
148136
subscriptionResponse.setStatusCode(HttpStatus.PRECONDITION_FAILED.value());
149-
return new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.PRECONDITION_FAILED);
137+
return new ResponseEntity<>(subscriptionResponse, HttpStatus.PRECONDITION_FAILED);
150138
}
151139

152-
if (subscriptionService.doSubscriptionExist(subscriptionName, user)) {
153-
subscriptionService.modifySubscription(subscription, subscriptionName, user);
140+
if (subscriptionService.doSubscriptionExist(subscriptionName)) {
141+
subscriptionService.modifySubscription(subscription, subscriptionName);
154142
LOG.info("Subscription :" + subscriptionName + " update completed");
155143
subscriptionResponse.setMsg("Updated Successfully");
156144
subscriptionResponse.setStatusCode(HttpStatus.OK.value());
157-
return new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.OK);
145+
return new ResponseEntity<>(subscriptionResponse, HttpStatus.OK);
158146

159147
} else {
160148
LOG.error("Subscription :" + subscription.getSubscriptionName() + " can't be found.");
161149
subscriptionResponse.setMsg("Subscription can't be found");
162150
subscriptionResponse.setStatusCode(HttpStatus.BAD_REQUEST.value());
163-
return new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.BAD_REQUEST);
151+
return new ResponseEntity<>(subscriptionResponse, HttpStatus.BAD_REQUEST);
164152
}
165153
}
166154

167155
@Override
168156
@CrossOrigin
169157
@ApiOperation(value = "Removes the subscription from the database")
170158
public ResponseEntity<SubscriptionResponse> deleteSubscriptionById(@PathVariable String subscriptionName) {
171-
String user = "";
172-
if (authenticate) {
173-
user = currentUser();
174-
}
175159
SubscriptionResponse subscriptionResponse = new SubscriptionResponse();
176160
LOG.info("Subscription :" + subscriptionName + " delete started");
177-
if (subscriptionService.deleteSubscription(subscriptionName, user)) {
161+
if (subscriptionService.deleteSubscription(subscriptionName)) {
178162
LOG.info("Subscription :" + subscriptionName + " deleted Successfully");
179163
subscriptionResponse.setMsg("Deleted Successfully");
180164
subscriptionResponse.setStatusCode(HttpStatus.OK.value());
181-
return new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.OK);
165+
return new ResponseEntity<>(subscriptionResponse, HttpStatus.OK);
182166
} else {
183167
LOG.info("Subscription :" + subscriptionName + " delete completed :: Record not found for delete");
184168
subscriptionResponse.setMsg("Record not found for delete");
185169
subscriptionResponse.setStatusCode(HttpStatus.BAD_REQUEST.value());
186-
return new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.BAD_REQUEST);
170+
return new ResponseEntity<>(subscriptionResponse, HttpStatus.BAD_REQUEST);
187171
}
188172
}
189173

@@ -192,17 +176,14 @@ public ResponseEntity<SubscriptionResponse> deleteSubscriptionById(@PathVariable
192176
@ApiOperation(value = "Retrieve all the subscriptions")
193177
public ResponseEntity<List<Subscription>> getSubscriptions() {
194178
LOG.info("Subscription : get all records started");
195-
List<Subscription> subscriptionList = new ArrayList<Subscription>();
179+
List<Subscription> subscriptionList = new ArrayList<>();
196180
try {
197181
subscriptionList = subscriptionService.getSubscription();
198-
return new ResponseEntity<List<Subscription>>(subscriptionList, HttpStatus.OK);
182+
return new ResponseEntity<>(subscriptionList, HttpStatus.OK);
199183
} catch (SubscriptionNotFoundException e) {
200184
LOG.error(e.getLocalizedMessage());
201-
return new ResponseEntity<List<Subscription>>(subscriptionList, HttpStatus.OK);
185+
return new ResponseEntity<>(subscriptionList, HttpStatus.OK);
202186
}
203187
}
204188

205-
public String currentUser() {
206-
return SecurityContextHolder.getContext().getAuthentication().getName();
207-
}
208189
}

src/main/java/com/ericsson/ei/services/ISubscriptionService.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@ public interface ISubscriptionService {
2626

2727
/**
2828
*
29-
* @param Subscription
29+
* @param subscription
3030
* @return
3131
*/
32-
boolean addSubscription(Subscription Subscription);
32+
boolean addSubscription(Subscription subscription);
3333

3434
/**
3535
*
@@ -40,34 +40,34 @@ public interface ISubscriptionService {
4040

4141
/**
4242
*
43-
* @param name
43+
* @param subscriptionName
4444
* @return
4545
* @throws SubscriptionNotFoundException
4646
*/
47-
Subscription getSubscription(String name, String user) throws SubscriptionNotFoundException;
47+
Subscription getSubscription(String subscriptionName) throws SubscriptionNotFoundException;
4848

4949
/**
5050
*
5151
* @param subscription
5252
* @param subscriptionName
5353
* @return
5454
*/
55-
boolean modifySubscription(Subscription subscription, String subscriptionName, String user);
55+
boolean modifySubscription(Subscription subscription, String subscriptionName);
5656

5757
/**
5858
*
59-
* @param name
59+
* @param subscriptionName
6060
* @return
6161
* @throws SubscriptionNotFoundException
6262
*/
63-
boolean deleteSubscription(String name, String user);
63+
boolean deleteSubscription(String subscriptionName);
6464

6565
/**
6666
* doSubscriptionExist method checks the is there any Subscription By Subscription Name
67-
* @param name
67+
* @param subscriptionName
6868
* @return true when Subscription available with same name. Otherwise returns false.
6969
*/
70-
boolean doSubscriptionExist(String name, String user);
70+
boolean doSubscriptionExist(String subscriptionName);
7171

7272

7373
}

0 commit comments

Comments
 (0)