aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/org/onap/music/conductor
diff options
context:
space:
mode:
authorNelson, Thomas (arthurdent3) <nelson24@att.com>2019-05-09 14:16:37 +0000
committerTschaen, Brendan <ctschaen@att.com>2019-05-13 14:34:05 -0400
commitd6e7b63cc580e7b3822be61fe92a493ad5e222a3 (patch)
tree5a055529781a2989585075e13426979464f5fb33 /src/main/java/org/onap/music/conductor
parent9a8b8ae8d7c8d6931f99def68068f8936a8cc0b3 (diff)
Changes Listed below:
- Added build version API - Updated Keyspace active to use Properties setting - Update Libraries Netty,jbcrypt,Jackson Databind and log4j - Removed some irrelivant files - Updated some usint tests to ignore some tests(This will be updated soon) - Bugfixes - Missing Values, inform user. - Respond with proper error - Fix Locking Contention issue. - Add locking retry for atomic calls. Change-Id: Ie218dd92edb0c20e4a0efe33eeaaec84e5293c44 Issue-ID: MUSIC-393 Signed-off-by: Nelson, Thomas (arthurdent3) <nelson24@att.com>
Diffstat (limited to 'src/main/java/org/onap/music/conductor')
-rw-r--r--src/main/java/org/onap/music/conductor/conditionals/MusicConditional.java31
-rw-r--r--src/main/java/org/onap/music/conductor/conditionals/RestMusicConditionalAPI.java7
2 files changed, 22 insertions, 16 deletions
diff --git a/src/main/java/org/onap/music/conductor/conditionals/MusicConditional.java b/src/main/java/org/onap/music/conductor/conditionals/MusicConditional.java
index 69ccd104..29740d83 100644
--- a/src/main/java/org/onap/music/conductor/conditionals/MusicConditional.java
+++ b/src/main/java/org/onap/music/conductor/conditionals/MusicConditional.java
@@ -92,7 +92,12 @@ public class MusicConditional {
String key = keyspace + "." + tablename + "." + primaryKey;
- String lockId = MusicCore.createLockReference(key);
+ String lockId;
+ try {
+ lockId = MusicCore.createLockReference(key);
+ } catch (MusicLockingException e) {
+ return new ReturnType(ResultType.FAILURE, e.getMessage());
+ }
long leasePeriod = MusicUtil.getDefaultLockLeasePeriod();
ReturnType lockAcqResult = MusicCore.acquireLockWithLease(key, lockId, leasePeriod);
@@ -160,7 +165,10 @@ public class MusicConditional {
}
- public static ReturnType update(Map<String,PreparedQueryObject> queryBank, String keyspace, String tableName, String primaryKey,String primaryKeyValue,String planId,String cascadeColumnName,Map<String,String> cascadeColumnValues) throws MusicLockingException, MusicQueryException, MusicServiceException {
+ public static ReturnType update(Map<String, PreparedQueryObject> queryBank, String keyspace, String tableName,
+ String primaryKey, String primaryKeyValue, String planId, String cascadeColumnName,
+ Map<String, String> cascadeColumnValues)
+ throws MusicLockingException, MusicQueryException, MusicServiceException {
String key = keyspace + "." + tableName + "." + primaryKeyValue;
String lockId = MusicCore.createLockReference(key);
@@ -266,8 +274,8 @@ public class MusicConditional {
queryObject.addValue(vector);
if(casscadeColumn!=null && casscadeColumnValues!=null) {
fieldsString.append(casscadeColumn).append(" ,");
- valueString.append("?,");
- queryObject.addValue(casscadeColumnValues);
+ valueString.append("?,");
+ queryObject.addValue(casscadeColumnValues);
}
int counter = 0;
@@ -276,24 +284,23 @@ public class MusicConditional {
fieldsString.append(entry.getKey());
Object valueObj = entry.getValue();
if (primaryKeyName.equals(entry.getKey())) {
- localPrimaryKey = entry.getValue() + "";
- localPrimaryKey = localPrimaryKey.replace("'", "''");
+ localPrimaryKey = entry.getValue() + "";
+ localPrimaryKey = localPrimaryKey.replace("'", "''");
}
DataType colType = null;
try {
colType = tableInfo.getColumn(entry.getKey()).getType();
} catch(NullPointerException ex) {
- logger.error(EELFLoggerDelegate.errorLogger,ex.getMessage() +" Invalid column name : "+entry.getKey
- (), AppMessages.INCORRECTDATA ,ErrorSeverity.CRITICAL, ErrorTypes.DATAERROR, ex);
-
+ logger.error(EELFLoggerDelegate.errorLogger,ex.getMessage() +" Invalid column name : "+entry.getKey(),
+ AppMessages.INCORRECTDATA ,ErrorSeverity.CRITICAL, ErrorTypes.DATAERROR, ex);
}
Object formattedValue = null;
try {
- formattedValue = MusicUtil.convertToActualDataType(colType, valueObj);
+ formattedValue = MusicUtil.convertToActualDataType(colType, valueObj);
} catch (Exception e) {
- logger.error(EELFLoggerDelegate.errorLogger,e.getMessage(), e);
- }
+ logger.error(EELFLoggerDelegate.errorLogger,e.getMessage(), e);
+ }
valueString.append("?");
queryObject.addValue(formattedValue);
diff --git a/src/main/java/org/onap/music/conductor/conditionals/RestMusicConditionalAPI.java b/src/main/java/org/onap/music/conductor/conditionals/RestMusicConditionalAPI.java
index 20fd3150..4a56825a 100644
--- a/src/main/java/org/onap/music/conductor/conditionals/RestMusicConditionalAPI.java
+++ b/src/main/java/org/onap/music/conductor/conditionals/RestMusicConditionalAPI.java
@@ -65,13 +65,13 @@ import io.swagger.annotations.ApiParam;
@Path("/v2/conditional")
@Api(value = "Conditional Api", hidden = true)
-public class RestMusicConditionalAPI {
+ public class RestMusicConditionalAPI {
private static EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(RestMusicAdminAPI.class);
private static final String XMINORVERSION = "X-minorVersion";
private static final String XPATCHVERSION = "X-patchVersion";
private static final String NS = "ns";
private static final String VERSION = "v2";
-
+
private MusicAuthenticator authenticator = new MusicAAFAuthentication();
@POST
@@ -146,7 +146,7 @@ public class RestMusicConditionalAPI {
@ApiParam(value = "Major Version", required = true) @PathParam("tablename") String tablename,
JsonConditional upObj) throws Exception {
ResponseBuilder response = MusicUtil.buildVersionResponse(VERSION, minorVersion, patchVersion);
-
+
if (!authenticator.authenticateUser(ns, authorization, keyspace, aid, Operation.INSERT_INTO_TABLE)) {
return response.status(Status.UNAUTHORIZED)
.entity(new JsonResponse(ResultType.FAILURE)
@@ -188,7 +188,6 @@ public class RestMusicConditionalAPI {
if (result.getResult() == ResultType.SUCCESS) {
return response.status(Status.OK)
.entity(new JsonResponse(result.getResult()).setMessage(result.getMessage()).toMap()).build();
-
}
return response.status(Status.BAD_REQUEST)
.entity(new JsonResponse(result.getResult()).setMessage(result.getMessage()).toMap()).build();