summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/att/nsa/dmaap/service/MMRestService.java264
1 files changed, 146 insertions, 118 deletions
diff --git a/src/main/java/com/att/nsa/dmaap/service/MMRestService.java b/src/main/java/com/att/nsa/dmaap/service/MMRestService.java
index 0fa396f..549f46d 100644
--- a/src/main/java/com/att/nsa/dmaap/service/MMRestService.java
+++ b/src/main/java/com/att/nsa/dmaap/service/MMRestService.java
@@ -80,13 +80,19 @@ import com.att.nsa.cambria.service.MMService;
@Component
public class MMRestService {
- //private static final Logger LOGGER = Logger.getLogger(MMRestService.class);
private static final EELFLogger LOGGER = EELFManager.getInstance().getLogger(MMRestService.class);
private static final String NO_ADMIN_PERMISSION = "No Mirror Maker Admin permission.";
private static final String NO_USER_PERMISSION = "No Mirror Maker User permission.";
private static final String NO_USER_CREATE_PERMISSION = "No Mirror Maker User Create permission.";
private static final String NAME_DOES_NOT_MEET_REQUIREMENT = "Mirror Maker name can only contain alpha numeric";
private static final String INVALID_IPPORT = "This is not a valid IP:Port";
+ private static final String MIRROR_MAKERADMIN = "msgRtr.mirrormakeradmin.aaf";
+ private static final String MIRROR_MAKERUSER = "msgRtr.mirrormakeruser.aaf";
+ private static final String UTF_8 = "UTF-8";
+ private static final String MESSAGE = "message";
+ private static final String LISTMIRRORMAKER = "listMirrorMaker";
+ private static final String ERROR = "error";
+ private static final String NAMESPACE = "namespace";
private String topic;
private int timeout;
@@ -135,7 +141,7 @@ public class MMRestService {
DMaaPContext ctx = getDmaapContext();
if (checkMirrorMakerPermission(ctx,
- AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, "msgRtr.mirrormakeradmin.aaf"))) {
+ AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, MIRROR_MAKERADMIN))) {
loadProperty();
String input = null;
@@ -146,7 +152,7 @@ public class MMRestService {
CreateMirrorMaker createMirrorMaker = new CreateMirrorMaker();
try {
- input = IOUtils.toString(msg, "UTF-8");
+ input = IOUtils.toString(msg, UTF_8);
if (input != null && input.length() > 0) {
input = removeExtraChar(input);
@@ -159,6 +165,7 @@ public class MMRestService {
} catch (JsonSyntaxException ex) {
sendErrResponse(ctx, errorMessages.getIncorrectJson());
+ LOGGER.error("JsonSyntaxException: ", ex);
}
String name = createMirrorMaker.getCreateMirrorMaker().getName();
// send error message if it is not a CreateMirrorMaker request.
@@ -197,13 +204,13 @@ public class MMRestService {
&& validateIPPort(createMirrorMaker.getCreateMirrorMaker().getProducer())) {
createMirrorMaker.setMessageID(randomStr);
- inStream = IOUtils.toInputStream(gson.toJson(createMirrorMaker), "UTF-8");
+ inStream = IOUtils.toInputStream(gson.toJson(createMirrorMaker), UTF_8);
callPubSub(randomStr, ctx, inStream);
}
} catch (IOException e) {
- e.printStackTrace();
+ LOGGER.error("IOException: ", e);
}
}
// Send error response if user does not provide Authorization
@@ -219,14 +226,14 @@ public class MMRestService {
DMaaPContext ctx = getDmaapContext();
if (checkMirrorMakerPermission(ctx,
- AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, "msgRtr.mirrormakeradmin.aaf"))) {
+ AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, MIRROR_MAKERADMIN))) {
loadProperty();
String input = null;
try {
- input = IOUtils.toString(msg, "UTF-8");
+ input = IOUtils.toString(msg, UTF_8);
if (input != null && input.length() > 0) {
input = removeExtraChar(input);
@@ -241,20 +248,22 @@ public class MMRestService {
} catch (JSONException ex) {
sendErrResponse(ctx, errorMessages.getIncorrectJson());
+ LOGGER.error("JSONException: ", ex);
}
// Check if request has listAllMirrorMaker and
// listAllMirrorMaker is empty
- if (jsonOb.has("listAllMirrorMaker") && jsonOb.getJSONObject("listAllMirrorMaker").length() == 0) {
-
+ if ((jsonOb != null) && (jsonOb.has("listAllMirrorMaker") &&
+ jsonOb.getJSONObject("listAllMirrorMaker").length() == 0)) {
jsonOb.put("messageID", randomStr);
InputStream inStream = null;
try {
- inStream = IOUtils.toInputStream(jsonOb.toString(), "UTF-8");
+ inStream = IOUtils.toInputStream(jsonOb.toString(), UTF_8);
} catch (IOException ioe) {
ioe.printStackTrace();
+ LOGGER.error("IOException: ", ioe);
}
callPubSub(randomStr, ctx, inStream);
@@ -267,6 +276,7 @@ public class MMRestService {
} catch (IOException ioe) {
ioe.printStackTrace();
+ LOGGER.error("IOException: ", ioe);
}
} else {
@@ -282,7 +292,7 @@ public class MMRestService {
DMaaPContext ctx = getDmaapContext();
if (checkMirrorMakerPermission(ctx,
- AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, "msgRtr.mirrormakeradmin.aaf"))) {
+ AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, MIRROR_MAKERADMIN))) {
loadProperty();
String input = null;
@@ -293,7 +303,7 @@ public class MMRestService {
UpdateMirrorMaker updateMirrorMaker = new UpdateMirrorMaker();
try {
- input = IOUtils.toString(msg, "UTF-8");
+ input = IOUtils.toString(msg, UTF_8);
if (input != null && input.length() > 0) {
input = removeExtraChar(input);
@@ -306,6 +316,8 @@ public class MMRestService {
} catch (JsonSyntaxException ex) {
sendErrResponse(ctx, errorMessages.getIncorrectJson());
+ LOGGER.error("JsonSyntaxException: ", ex);
+
}
String name = updateMirrorMaker.getUpdateMirrorMaker().getName();
@@ -345,13 +357,13 @@ public class MMRestService {
&& validateIPPort(updateMirrorMaker.getUpdateMirrorMaker().getProducer())) {
updateMirrorMaker.setMessageID(randomStr);
- inStream = IOUtils.toInputStream(gson.toJson(updateMirrorMaker), "UTF-8");
+ inStream = IOUtils.toInputStream(gson.toJson(updateMirrorMaker), UTF_8);
callPubSub(randomStr, ctx, inStream);
}
} catch (IOException e) {
- e.printStackTrace();
+ LOGGER.error("IOException: ", e);
}
}
// Send error response if user does not provide Authorization
@@ -367,14 +379,14 @@ public class MMRestService {
DMaaPContext ctx = getDmaapContext();
if (checkMirrorMakerPermission(ctx,
- AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, "msgRtr.mirrormakeradmin.aaf"))) {
+ AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, MIRROR_MAKERADMIN))) {
loadProperty();
String input = null;
try {
- input = IOUtils.toString(msg, "UTF-8");
+ input = IOUtils.toString(msg, UTF_8);
if (input != null && input.length() > 0) {
input = removeExtraChar(input);
@@ -389,24 +401,27 @@ public class MMRestService {
} catch (JSONException ex) {
sendErrResponse(ctx, errorMessages.getIncorrectJson());
+ LOGGER.error("JSONException: ", ex);
}
// Check if request has DeleteMirrorMaker and
// DeleteMirrorMaker has MirrorMaker object with name variable
// and check if the name contain only alpha numeric
- if (jsonOb.has("deleteMirrorMaker") && jsonOb.getJSONObject("deleteMirrorMaker").length() == 1
+ if ((jsonOb != null) && (jsonOb.has("deleteMirrorMaker")
+ && jsonOb.getJSONObject("deleteMirrorMaker").length() == 1
&& jsonOb.getJSONObject("deleteMirrorMaker").has("name")
&& !StringUtils.isBlank(jsonOb.getJSONObject("deleteMirrorMaker").getString("name"))
- && isAlphaNumeric(jsonOb.getJSONObject("deleteMirrorMaker").getString("name"))) {
+ && isAlphaNumeric(jsonOb.getJSONObject("deleteMirrorMaker").getString("name")))) {
jsonOb.put("messageID", randomStr);
InputStream inStream = null;
try {
- inStream = IOUtils.toInputStream(jsonOb.toString(), "UTF-8");
+ inStream = IOUtils.toInputStream(jsonOb.toString(), UTF_8);
} catch (IOException ioe) {
ioe.printStackTrace();
+ LOGGER.error("IOException: ", ioe);
}
callPubSub(randomStr, ctx, inStream);
@@ -419,6 +434,7 @@ public class MMRestService {
} catch (IOException ioe) {
ioe.printStackTrace();
+ LOGGER.error("IOException: ", ioe);
}
} else {
@@ -431,8 +447,8 @@ public class MMRestService {
String topicmsg = msg;
topicmsg = removeExtraChar(topicmsg);
- JSONObject jObj = new JSONObject();
- JSONArray jArray = null;
+ JSONObject jObj;
+ JSONArray jArray;
boolean exist = false;
if (!StringUtils.isBlank(topicmsg) && topicmsg.length() > 2) {
@@ -442,10 +458,10 @@ public class MMRestService {
jObj = jArray.getJSONObject(i);
JSONObject obj = new JSONObject();
- if (jObj.has("message")) {
- obj = jObj.getJSONObject("message");
+ if (jObj.has(MESSAGE)) {
+ obj = jObj.getJSONObject(MESSAGE);
}
- if (obj.has("messageID") && obj.get("messageID").equals(messageID) && obj.has("listMirrorMaker")) {
+ if (obj.has("messageID") && obj.get("messageID").equals(messageID) && obj.has(LISTMIRRORMAKER)) {
exist = true;
break;
}
@@ -534,9 +550,9 @@ public class MMRestService {
msgFrmSubscribe = mirrorService.subscribe(ctx, topic, consumergroup, consumerid);
}
- JSONObject jsonObj = new JSONObject();
+ JSONObject jsonObj;
JSONObject finalJsonObj = new JSONObject();
- JSONArray jsonArray = null;
+ JSONArray jsonArray;
if (msgFrmSubscribe != null && msgFrmSubscribe.length() > 0
&& isListMirrorMaker(msgFrmSubscribe, randomstr)) {
@@ -547,11 +563,11 @@ public class MMRestService {
jsonObj = jsonArray.getJSONObject(i);
JSONObject obj = new JSONObject();
- if (jsonObj.has("message")) {
- obj = jsonObj.getJSONObject("message");
+ if (jsonObj.has(MESSAGE)) {
+ obj = jsonObj.getJSONObject(MESSAGE);
}
- if (obj.has("messageID") && obj.get("messageID").equals(randomstr) && obj.has("listMirrorMaker")) {
- finalJsonObj.put("listMirrorMaker", obj.get("listMirrorMaker"));
+ if (obj.has("messageID") && obj.get("messageID").equals(randomstr) && obj.has(LISTMIRRORMAKER)) {
+ finalJsonObj.put(LISTMIRRORMAKER, obj.get(LISTMIRRORMAKER));
break;
}
}
@@ -561,25 +577,26 @@ public class MMRestService {
} else {
JSONObject err = new JSONObject();
- err.append("error", "listMirrorMaker is not available, please make sure MirrorMakerAgent is running");
+ err.append(ERROR, "listMirrorMaker is not available, please make sure MirrorMakerAgent is running");
DMaaPResponseBuilder.respondOk(ctx, err);
}
} catch (Exception e) {
e.printStackTrace();
+ LOGGER.error("Exception: ", e);
}
}
private void sendErrResponse(DMaaPContext ctx, String errMsg) {
JSONObject err = new JSONObject();
- err.append("Error", errMsg);
+ err.append(ERROR, errMsg);
try {
DMaaPResponseBuilder.respondOk(ctx, err);
- LOGGER.error(errMsg.toString());
+ LOGGER.error(errMsg);
} catch (JSONException | IOException e) {
- LOGGER.error(errMsg.toString());
+ LOGGER.error(errMsg);
}
}
@@ -591,13 +608,13 @@ public class MMRestService {
DMaaPContext ctx = getDmaapContext();
if (checkMirrorMakerPermission(ctx,
- AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, "msgRtr.mirrormakeruser.aaf"))) {
+ AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, MIRROR_MAKERUSER))) {
loadProperty();
String input = null;
try {
- input = IOUtils.toString(msg, "UTF-8");
+ input = IOUtils.toString(msg, UTF_8);
if (input != null && input.length() > 0) {
input = removeExtraChar(input);
@@ -612,18 +629,21 @@ public class MMRestService {
} catch (JSONException ex) {
sendErrResponse(ctx, errorMessages.getIncorrectJson());
+ LOGGER.error("JSONException: ", ex);
}
// Check if the request has name and name contains only alpha
// numeric
// and check if the request has namespace and namespace contains
// only alpha numeric
- if (jsonOb.length() == 2 && jsonOb.has("name") && !StringUtils.isBlank(jsonOb.getString("name"))
- && isAlphaNumeric(jsonOb.getString("name")) && jsonOb.has("namespace")
- && !StringUtils.isBlank(jsonOb.getString("namespace"))) {
+ if (jsonOb != null
+ && jsonOb.length() == 2 && jsonOb.has("name")
+ && !StringUtils.isBlank(jsonOb.getString("name"))
+ && isAlphaNumeric(jsonOb.getString("name")) && jsonOb.has(NAMESPACE)
+ && !StringUtils.isBlank(jsonOb.getString(NAMESPACE))) {
String permission = AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop,
- "msgRtr.mirrormakeruser.aaf.create") + jsonOb.getString("namespace") + "|create";
+ "msgRtr.mirrormakeruser.aaf.create") + jsonOb.getString(NAMESPACE) + "|create";
// Check if the user have create permission for the
// namespace
@@ -638,7 +658,7 @@ public class MMRestService {
} catch (JSONException e) {
- e.printStackTrace();
+ LOGGER.error("JSONException: ", e);
}
// set a random number as messageID
@@ -648,10 +668,11 @@ public class MMRestService {
// convert listAll Json object to InputStream object
try {
- inStream = IOUtils.toInputStream(listAll.toString(), "UTF-8");
+ inStream = IOUtils.toInputStream(listAll.toString(), UTF_8);
} catch (IOException ioe) {
ioe.printStackTrace();
+ LOGGER.error("IOException: ", ioe);
}
// call listAllMirrorMaker
mirrorService.pushEvents(ctx, topic, inStream, null, null);
@@ -668,13 +689,13 @@ public class MMRestService {
if (msgFrmSubscribe != null && msgFrmSubscribe.length() > 0
&& isListMirrorMaker(msgFrmSubscribe, randomStr)) {
- JSONArray listMirrorMaker = new JSONArray();
+ JSONArray listMirrorMaker;
listMirrorMaker = getListMirrorMaker(msgFrmSubscribe, randomStr);
String whitelist = null;
for (int i = 0; i < listMirrorMaker.length(); i++) {
- JSONObject mm = new JSONObject();
+ JSONObject mm;
mm = listMirrorMaker.getJSONObject(i);
String name = mm.getString("name");
@@ -686,13 +707,13 @@ public class MMRestService {
if (!StringUtils.isBlank(whitelist)) {
- List<String> topicList = new ArrayList<String>();
- List<String> finalTopicList = new ArrayList<String>();
+ List<String> topicList = new ArrayList<>();
+ List<String> finalTopicList = new ArrayList<>();
topicList = Arrays.asList(whitelist.split(","));
for (String topic : topicList) {
if (topic != null && !topic.equals("null")
- && getNamespace(topic).equals(jsonOb.getString("namespace"))) {
+ && getNamespace(topic).equals(jsonOb.getString(NAMESPACE))) {
finalTopicList.add(topic);
}
@@ -700,7 +721,7 @@ public class MMRestService {
String topicNames = "";
- if (finalTopicList.size() > 0) {
+ if (!finalTopicList.isEmpty()) {
topicNames = StringUtils.join(finalTopicList, ",");
}
@@ -714,7 +735,7 @@ public class MMRestService {
} else {
JSONObject err = new JSONObject();
- err.append("error",
+ err.append(ERROR,
"listWhiteList is not available, please make sure MirrorMakerAgent is running");
DMaaPResponseBuilder.respondOk(ctx, err);
}
@@ -731,7 +752,7 @@ public class MMRestService {
} catch (IOException | CambriaApiException | ConfigDbException | AccessDeniedException
| TopicExistsException | missingReqdSetting | UnavailableException e) {
- e.printStackTrace();
+ LOGGER.error("IOException: ", e);
}
} else {
sendErrResponse(ctx, NO_USER_PERMISSION);
@@ -746,13 +767,13 @@ public class MMRestService {
DMaaPContext ctx = getDmaapContext();
if (checkMirrorMakerPermission(ctx,
- AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, "msgRtr.mirrormakeruser.aaf"))) {
+ AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, MIRROR_MAKERUSER))) {
loadProperty();
String input = null;
try {
- input = IOUtils.toString(msg, "UTF-8");
+ input = IOUtils.toString(msg, UTF_8);
if (input != null && input.length() > 0) {
input = removeExtraChar(input);
@@ -767,21 +788,23 @@ public class MMRestService {
} catch (JSONException ex) {
sendErrResponse(ctx, errorMessages.getIncorrectJson());
+ LOGGER.error("JSONException: ", ex);
}
// Check if the request has name and name contains only alpha numeric,
// check if the request has namespace and
// check if the request has whitelistTopicName
// check if the topic name contains only alpha numeric
- if (jsonOb.length() == 3 && jsonOb.has("name") && !StringUtils.isBlank(jsonOb.getString("name"))
+ if (jsonOb != null && jsonOb.length() == 3 && jsonOb.has("name")
+ && !StringUtils.isBlank(jsonOb.getString("name"))
&& isAlphaNumeric(jsonOb.getString("name"))
- && jsonOb.has("namespace") && !StringUtils.isBlank(jsonOb.getString("namespace"))
+ && jsonOb.has(NAMESPACE) && !StringUtils.isBlank(jsonOb.getString(NAMESPACE))
&& jsonOb.has("whitelistTopicName") && !StringUtils.isBlank(jsonOb.getString("whitelistTopicName"))
&& isAlphaNumeric(jsonOb.getString("whitelistTopicName").substring(jsonOb.getString("whitelistTopicName").lastIndexOf(".")+1,
jsonOb.getString("whitelistTopicName").length()))) {
String permission = AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop,
- "msgRtr.mirrormakeruser.aaf.create") + jsonOb.getString("namespace") + "|create";
+ "msgRtr.mirrormakeruser.aaf.create") + jsonOb.getString(NAMESPACE) + "|create";
// Check if the user have create permission for the
// namespace
@@ -796,7 +819,7 @@ public class MMRestService {
} catch (JSONException e) {
- e.printStackTrace();
+ LOGGER.error("JSONException: ", e);
}
// set a random number as messageID
@@ -806,10 +829,11 @@ public class MMRestService {
// convert listAll Json object to InputStream object
try {
- inStream = IOUtils.toInputStream(listAll.toString(), "UTF-8");
+ inStream = IOUtils.toInputStream(listAll.toString(), UTF_8);
} catch (IOException ioe) {
ioe.printStackTrace();
+ LOGGER.error("IOException: ", ioe);
}
// call listAllMirrorMaker
mirrorService.pushEvents(ctx, topic, inStream, null, null);
@@ -823,16 +847,16 @@ public class MMRestService {
msgFrmSubscribe = mirrorService.subscribe(ctx, topic, consumergroup, consumerid);
}
- JSONArray listMirrorMaker = null;
+ JSONArray listMirrorMaker;
if (msgFrmSubscribe != null && msgFrmSubscribe.length() > 0
&& isListMirrorMaker(msgFrmSubscribe, randomStr)) {
- listMirrorMaker = getListMirrorMaker(msgFrmSubscribe, randomStr);
+ listMirrorMaker = getListMirrorMaker(msgFrmSubscribe, randomStr);
String whitelist = null;
for (int i = 0; i < listMirrorMaker.length(); i++) {
- JSONObject mm = new JSONObject();
+ JSONObject mm;
mm = listMirrorMaker.getJSONObject(i);
String name = mm.getString("name");
@@ -842,8 +866,8 @@ public class MMRestService {
}
}
- List<String> topicList = new ArrayList<String>();
- List<String> finalTopicList = new ArrayList<String>();
+ List<String> topicList = new ArrayList<>();
+ List<String> finalTopicList = new ArrayList<>();
if (whitelist != null) {
topicList = Arrays.asList(whitelist.split(","));
@@ -858,7 +882,7 @@ public class MMRestService {
String newTopic = jsonOb.getString("whitelistTopicName");
if (!topicList.contains(newTopic)
- && getNamespace(newTopic).equals(jsonOb.getString("namespace"))) {
+ && getNamespace(newTopic).equals(jsonOb.getString(NAMESPACE))) {
UpdateWhiteList updateWhiteList = new UpdateWhiteList();
MirrorMaker mirrorMaker = new MirrorMaker();
@@ -866,7 +890,7 @@ public class MMRestService {
finalTopicList.add(newTopic);
String newWhitelist = "";
- if (finalTopicList.size() > 0) {
+ if (!finalTopicList.isEmpty()) {
newWhitelist = StringUtils.join(finalTopicList, ",");
}
@@ -878,22 +902,22 @@ public class MMRestService {
Gson g = new Gson();
g.toJson(updateWhiteList);
- InputStream inputStream = null;
- inputStream = IOUtils.toInputStream(g.toJson(updateWhiteList), "UTF-8");
+ InputStream inputStream;
+ inputStream = IOUtils.toInputStream(g.toJson(updateWhiteList), UTF_8);
// callPubSub(newRandom, ctx, inputStream);
- callPubSubForWhitelist(newRandom, ctx, inputStream, jsonOb.getString("namespace"));
+ callPubSubForWhitelist(newRandom, ctx, inputStream, jsonOb.getString(NAMESPACE));
} else if (topicList.contains(newTopic)) {
sendErrResponse(ctx, "The topic already exist.");
- } else if (!getNamespace(newTopic).equals(jsonOb.getString("namespace"))) {
+ } else if (!getNamespace(newTopic).equals(jsonOb.getString(NAMESPACE))) {
sendErrResponse(ctx,
"The namespace of the topic does not match with the namespace you provided.");
}
} else {
JSONObject err = new JSONObject();
- err.append("error",
+ err.append(ERROR,
"listWhiteList is not available, please make sure MirrorMakerAgent is running");
DMaaPResponseBuilder.respondOk(ctx, err);
}
@@ -910,7 +934,7 @@ public class MMRestService {
} catch (IOException | CambriaApiException | ConfigDbException | AccessDeniedException
| TopicExistsException | missingReqdSetting | UnavailableException e) {
- e.printStackTrace();
+ LOGGER.error("IOException: ", e);
}
}
// Send error response if user does not provide Authorization
@@ -927,13 +951,13 @@ public class MMRestService {
DMaaPContext ctx = getDmaapContext();
if (checkMirrorMakerPermission(ctx,
- AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, "msgRtr.mirrormakeruser.aaf"))) {
+ AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop, MIRROR_MAKERUSER))) {
loadProperty();
String input = null;
try {
- input = IOUtils.toString(msg, "UTF-8");
+ input = IOUtils.toString(msg, UTF_8);
if (input != null && input.length() > 0) {
input = removeExtraChar(input);
@@ -948,18 +972,19 @@ public class MMRestService {
} catch (JSONException ex) {
sendErrResponse(ctx, errorMessages.getIncorrectJson());
+ LOGGER.error("JSONException: ", ex);
}
// Check if the request has name and name contains only alpha numeric,
// check if the request has namespace and
// check if the request has whitelistTopicName
- if (jsonOb.length() == 3 && jsonOb.has("name") && isAlphaNumeric(jsonOb.getString("name"))
- && jsonOb.has("namespace") && jsonOb.has("whitelistTopicName")
+ if (jsonOb != null && jsonOb.length() == 3 && jsonOb.has("name") && isAlphaNumeric(jsonOb.getString("name"))
+ && jsonOb.has(NAMESPACE) && jsonOb.has("whitelistTopicName")
&& isAlphaNumeric(jsonOb.getString("whitelistTopicName").substring(jsonOb.getString("whitelistTopicName").lastIndexOf(".")+1,
jsonOb.getString("whitelistTopicName").length()))) {
String permission = AJSCPropertiesMap.getProperty(CambriaConstants.msgRtr_prop,
- "msgRtr.mirrormakeruser.aaf.create") + jsonOb.getString("namespace") + "|create";
+ "msgRtr.mirrormakeruser.aaf.create") + jsonOb.getString(NAMESPACE) + "|create";
// Check if the user have create permission for the
// namespace
@@ -974,7 +999,7 @@ public class MMRestService {
} catch (JSONException e) {
- e.printStackTrace();
+ LOGGER.error("JSONException: ", e);
}
// set a random number as messageID
@@ -984,10 +1009,11 @@ public class MMRestService {
// convert listAll Json object to InputStream object
try {
- inStream = IOUtils.toInputStream(listAll.toString(), "UTF-8");
+ inStream = IOUtils.toInputStream(listAll.toString(), UTF_8);
} catch (IOException ioe) {
ioe.printStackTrace();
+ LOGGER.error("IOException: ", ioe);
}
// call listAllMirrorMaker
mirrorService.pushEvents(ctx, topic, inStream, null, null);
@@ -1001,8 +1027,8 @@ public class MMRestService {
msgFrmSubscribe = mirrorService.subscribe(ctx, topic, consumergroup, consumerid);
}
- JSONObject jsonObj = new JSONObject();
- JSONArray jsonArray = null;
+ JSONObject jsonObj;
+ JSONArray jsonArray;
JSONArray listMirrorMaker = null;
if (msgFrmSubscribe != null && msgFrmSubscribe.length() > 0
@@ -1014,28 +1040,30 @@ public class MMRestService {
jsonObj = jsonArray.getJSONObject(i);
JSONObject obj = new JSONObject();
- if (jsonObj.has("message")) {
- obj = jsonObj.getJSONObject("message");
+ if (jsonObj.has(MESSAGE)) {
+ obj = jsonObj.getJSONObject(MESSAGE);
}
- if (obj.has("messageID") && obj.get("messageID").equals(randomStr) && obj.has("listMirrorMaker")) {
- listMirrorMaker = obj.getJSONArray("listMirrorMaker");
+ if (obj.has("messageID") && obj.get("messageID").equals(randomStr) && obj.has(LISTMIRRORMAKER)) {
+ listMirrorMaker = obj.getJSONArray(LISTMIRRORMAKER);
break;
}
}
String whitelist = null;
- for (int i = 0; i < listMirrorMaker.length(); i++) {
+ if (listMirrorMaker != null) {
+ for (int i = 0; i < listMirrorMaker.length(); i++) {
- JSONObject mm = new JSONObject();
- mm = listMirrorMaker.getJSONObject(i);
- String name = mm.getString("name");
+ JSONObject mm = new JSONObject();
+ mm = listMirrorMaker.getJSONObject(i);
+ String name = mm.getString("name");
- if (name.equals(jsonOb.getString("name")) && mm.has("whitelist")) {
- whitelist = mm.getString("whitelist");
- break;
+ if (name.equals(jsonOb.getString("name")) && mm.has("whitelist")) {
+ whitelist = mm.getString("whitelist");
+ break;
+ }
}
}
- List<String> topicList = new ArrayList<String>();
+ List<String> topicList = new ArrayList<>();
if (whitelist != null) {
topicList = Arrays.asList(whitelist.split(","));
@@ -1065,15 +1093,15 @@ public class MMRestService {
Gson g = new Gson();
g.toJson(updateWhiteList);
- InputStream inputStream = null;
- inputStream = IOUtils.toInputStream(g.toJson(updateWhiteList), "UTF-8");
+ InputStream inputStream;
+ inputStream = IOUtils.toInputStream(g.toJson(updateWhiteList), UTF_8);
callPubSubForWhitelist(newRandom, ctx, inputStream, getNamespace(topicToRemove));
}
} else {
JSONObject err = new JSONObject();
- err.append("error",
+ err.append(ERROR,
"listWhiteList is not available, please make sure MirrorMakerAgent is running");
DMaaPResponseBuilder.respondOk(ctx, err);
}
@@ -1090,7 +1118,7 @@ public class MMRestService {
} catch (IOException | CambriaApiException | ConfigDbException | AccessDeniedException
| TopicExistsException | missingReqdSetting | UnavailableException e) {
- e.printStackTrace();
+ LOGGER.error("IOException: ", e);
}
}
// Send error response if user does not provide Authorization
@@ -1104,8 +1132,8 @@ public class MMRestService {
}
private String removeTopic(String whitelist, String topicToRemove) {
- List<String> topicList = new ArrayList<String>();
- List<String> newTopicList = new ArrayList<String>();
+ List<String> topicList = new ArrayList<>();
+ List<String> newTopicList = new ArrayList<>();
if (whitelist.contains(",")) {
topicList = Arrays.asList(whitelist.split(","));
@@ -1113,7 +1141,7 @@ public class MMRestService {
}
if (topicList.contains(topicToRemove)) {
- for (String topic : topicList) {
+ for (String topic: topicList) {
if (!topic.equals(topicToRemove)) {
newTopicList.add(topic);
}
@@ -1137,8 +1165,8 @@ public class MMRestService {
msgFrmSubscribe = mirrorService.subscribe(ctx, topic, consumergroup, consumerid);
}
- JSONObject jsonObj = new JSONObject();
- JSONArray jsonArray = null;
+ JSONObject jsonObj;
+ JSONArray jsonArray;
JSONArray jsonArrayNamespace = null;
if (msgFrmSubscribe != null && msgFrmSubscribe.length() > 0
@@ -1150,11 +1178,11 @@ public class MMRestService {
jsonObj = jsonArray.getJSONObject(i);
JSONObject obj = new JSONObject();
- if (jsonObj.has("message")) {
- obj = jsonObj.getJSONObject("message");
+ if (jsonObj.has(MESSAGE)) {
+ obj = jsonObj.getJSONObject(MESSAGE);
}
- if (obj.has("messageID") && obj.get("messageID").equals(randomStr) && obj.has("listMirrorMaker")) {
- jsonArrayNamespace = obj.getJSONArray("listMirrorMaker");
+ if (obj.has("messageID") && obj.get("messageID").equals(randomStr) && obj.has(LISTMIRRORMAKER)) {
+ jsonArrayNamespace = obj.getJSONArray(LISTMIRRORMAKER);
}
}
JSONObject finalJasonObj = new JSONObject();
@@ -1162,9 +1190,9 @@ public class MMRestService {
for (int i = 0; i < jsonArrayNamespace.length(); i++) {
- JSONObject mmObj = new JSONObject();
+ JSONObject mmObj;
mmObj = jsonArrayNamespace.getJSONObject(i);
- String whitelist = null;
+ String whitelist;
if (mmObj.has("whitelist")) {
whitelist = getWhitelistByNamespace(mmObj.getString("whitelist"), namespace);
@@ -1178,27 +1206,27 @@ public class MMRestService {
}
finalJsonArray.put(mmObj);
}
- finalJasonObj.put("listMirrorMaker", finalJsonArray);
+ finalJasonObj.put(LISTMIRRORMAKER, finalJsonArray);
DMaaPResponseBuilder.respondOk(ctx, finalJasonObj);
} else {
JSONObject err = new JSONObject();
- err.append("error", "listMirrorMaker is not available, please make sure MirrorMakerAgent is running");
+ err.append(ERROR, "listMirrorMaker is not available, please make sure MirrorMakerAgent is running");
DMaaPResponseBuilder.respondOk(ctx, err);
}
} catch (Exception e) {
- e.printStackTrace();
+ LOGGER.error("Exception: ", e);
}
}
private String getWhitelistByNamespace(String originalWhitelist, String namespace) {
String whitelist = null;
- List<String> resultList = new ArrayList<String>();
- List<String> whitelistList = new ArrayList<String>();
+ List<String> resultList = new ArrayList<>();
+ List<String> whitelistList = new ArrayList<>();
whitelistList = Arrays.asList(originalWhitelist.split(","));
for (String topic : whitelistList) {
@@ -1206,7 +1234,7 @@ public class MMRestService {
resultList.add(topic);
}
}
- if (resultList.size() > 0) {
+ if (!resultList.isEmpty()) {
whitelist = StringUtils.join(resultList, ",");
}
@@ -1214,8 +1242,8 @@ public class MMRestService {
}
private JSONArray getListMirrorMaker(String msgFrmSubscribe, String randomStr) {
- JSONObject jsonObj = new JSONObject();
- JSONArray jsonArray = new JSONArray();
+ JSONObject jsonObj;
+ JSONArray jsonArray;
JSONArray listMirrorMaker = new JSONArray();
msgFrmSubscribe = removeExtraChar(msgFrmSubscribe);
@@ -1225,11 +1253,11 @@ public class MMRestService {
jsonObj = jsonArray.getJSONObject(i);
JSONObject obj = new JSONObject();
- if (jsonObj.has("message")) {
- obj = jsonObj.getJSONObject("message");
+ if (jsonObj.has(MESSAGE)) {
+ obj = jsonObj.getJSONObject(MESSAGE);
}
- if (obj.has("messageID") && obj.get("messageID").equals(randomStr) && obj.has("listMirrorMaker")) {
- listMirrorMaker = obj.getJSONArray("listMirrorMaker");
+ if (obj.has("messageID") && obj.get("messageID").equals(randomStr) && obj.has(LISTMIRRORMAKER)) {
+ listMirrorMaker = obj.getJSONArray(LISTMIRRORMAKER);
break;
}
}