use of org.talend.utils.json.JSONArray in project tbd-studio-se by Talend.
the class DefaultConfigurationManagerTest method testGetValue_Array.
@Test
public void testGetValue_Array() throws JSONException {
JSONObject json = new JSONObject();
json.put("key1", "123");
JSONArray arr = new JSONArray();
arr.put(1);
arr.put(2);
arr.put(13);
arr.put("abc");
json.put("arr1", arr);
String value = DefaultConfigurationManager.getValue(json, "arr1");
assertNotNull(value);
JSONArray getArr = null;
try {
getArr = new JSONArray(value);
} catch (JSONException e) {
//
}
assertNotNull("Can't support to get array", getArr);
assertEquals(4, getArr.length());
assertEquals(1, getArr.get(0));
assertEquals(2, getArr.get(1));
assertEquals(13, getArr.get(2));
assertEquals("abc", getArr.get(3));
}
use of org.talend.utils.json.JSONArray in project tbd-studio-se by Talend.
the class RetrieveLocalConfsService method getSupportConfsList.
private List<String> getSupportConfsList() {
try {
List<String> supportConfs = new ArrayList<String>();
String confStr = distributionVersion.getDefaultConfig(distributionVersion.getDistribution().getName());
// $NON-NLS-1$
JSONArray jsonArray = new JSONObject(confStr).getJSONArray("HADOOP_CONFIG_LIST");
for (int i = 0; i < jsonArray.length(); i++) {
Object obj = jsonArray.get(i);
if (obj instanceof String) {
supportConfs.add((String) obj);
}
}
if (!supportConfs.isEmpty()) {
return supportConfs;
}
} catch (JSONException e) {
ExceptionHandler.process(e);
}
return null;
}
use of org.talend.utils.json.JSONArray in project tbd-studio-se by Talend.
the class NoSQLRepositoryContextHandler method createContextParameters.
@Override
public List<IContextParameter> createContextParameters(String prefixName, Connection connection, Set<IConnParamName> paramSet) {
List<IContextParameter> varList = new ArrayList<IContextParameter>();
if (connection instanceof NoSQLConnection) {
NoSQLConnection conn = (NoSQLConnection) connection;
JavaType javaType = null;
if (conn == null || prefixName == null || paramSet == null || paramSet.isEmpty()) {
return Collections.emptyList();
}
for (Map.Entry<String, String> attr : ((NoSQLConnection) connection).getAttributes()) {
if (INoSQLCommonAttributes.PASSWORD.equals(attr)) {
javaType = JavaTypesManager.PASSWORD;
}
}
String paramPrefix = prefixName + ConnectionContextHelper.LINE;
String paramName = null;
for (IConnParamName param : paramSet) {
if (param instanceof EHadoopParamName) {
EHadoopParamName noSqlParam = (EHadoopParamName) param;
paramName = paramPrefix + noSqlParam;
switch(noSqlParam) {
case Server:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INoSQLCommonAttributes.HOST), javaType);
break;
case Port:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INoSQLCommonAttributes.PORT), javaType);
break;
case Keyspace:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INoSQLCommonAttributes.DATABASE), javaType);
break;
case Database:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INoSQLCommonAttributes.DATABASE), javaType);
break;
case Databasepath:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INeo4jAttributes.DATABASE_PATH), javaType);
break;
case ServerUrl:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INeo4jAttributes.SERVER_URL), javaType);
break;
case UserName:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INoSQLCommonAttributes.USERNAME), javaType);
break;
case Password:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(INoSQLCommonAttributes.PASSWORD), JavaTypesManager.PASSWORD);
break;
case ConnectionString:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.CONN_STRING), javaType);
break;
case Keystore:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.X509_CERT), javaType);
break;
case KeystorePass:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.X509_CERT_KEYSTORE_PASSWORD), JavaTypesManager.PASSWORD);
break;
case Truststore:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.X509_CERT_AUTH), javaType);
break;
case TruststorePass:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.X509_CERT_AUTH_TRUSTSTORE_PASSWORD), JavaTypesManager.PASSWORD);
break;
case AuthenticationDatabase:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.AUTHENTICATION_DATABASE), javaType);
break;
case UserPrincipal:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.KRB_USER_PRINCIPAL), javaType);
break;
case Realm:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.KRB_REALM), javaType);
break;
case KDCServer:
ConnectionContextHelper.createParameters(varList, paramName, conn.getAttributes().get(IMongoDBAttributes.KRB_KDC), javaType);
break;
case ReplicaSets:
String replicaSets = conn.getAttributes().get(IMongoDBAttributes.REPLICA_SET);
if (StringUtils.isNotEmpty(replicaSets)) {
try {
JSONArray jsa = new JSONArray(replicaSets);
for (int i = 0; i < jsa.length(); i++) {
JSONObject jso = jsa.getJSONObject(i);
String hostParamName = paramPrefix + EHadoopParamName.ReplicaHost.name() + ConnectionContextHelper.LINE + (i + 1);
String portParamName = paramPrefix + EHadoopParamName.ReplicaPort.name() + ConnectionContextHelper.LINE + (i + 1);
String hostValue = jso.getString(IMongoConstants.REPLICA_HOST_KEY);
String portValue = jso.getString(IMongoConstants.REPLICA_PORT_KEY);
ConnectionContextHelper.createParameters(varList, hostParamName, hostValue, JavaTypesManager.STRING);
ConnectionContextHelper.createParameters(varList, portParamName, portValue, JavaTypesManager.INTEGER);
}
} catch (JSONException e) {
ExceptionHandler.process(e);
}
}
break;
default:
}
}
}
}
return varList;
}
use of org.talend.utils.json.JSONArray in project tbd-studio-se by Talend.
the class NoSQLRepositoryContextHandler method matchContextForAttribues.
@Override
protected void matchContextForAttribues(Connection conn, IConnParamName param, String noSqlVariableName) {
NoSQLConnection noSqlConn = (NoSQLConnection) conn;
EHadoopParamName noSqlParam = (EHadoopParamName) param;
switch(noSqlParam) {
case Server:
noSqlConn.getAttributes().put(INoSQLCommonAttributes.HOST, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case ConnectionString:
noSqlConn.getAttributes().put(IMongoDBAttributes.CONN_STRING, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Port:
noSqlConn.getAttributes().put(INoSQLCommonAttributes.PORT, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Database:
noSqlConn.getAttributes().put(INoSQLCommonAttributes.DATABASE, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Keyspace:
noSqlConn.getAttributes().put(INoSQLCommonAttributes.DATABASE, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Databasepath:
noSqlConn.getAttributes().put(INeo4jAttributes.DATABASE_PATH, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case ServerUrl:
noSqlConn.getAttributes().put(INeo4jAttributes.SERVER_URL, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case UserName:
noSqlConn.getAttributes().put(INoSQLCommonAttributes.USERNAME, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Password:
noSqlConn.getAttributes().put(INoSQLCommonAttributes.PASSWORD, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Keystore:
noSqlConn.getAttributes().put(IMongoDBAttributes.X509_CERT, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case KeystorePass:
noSqlConn.getAttributes().put(IMongoDBAttributes.X509_CERT_KEYSTORE_PASSWORD, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Truststore:
noSqlConn.getAttributes().put(IMongoDBAttributes.X509_CERT_AUTH, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case TruststorePass:
noSqlConn.getAttributes().put(IMongoDBAttributes.X509_CERT_AUTH_TRUSTSTORE_PASSWORD, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case AuthenticationDatabase:
noSqlConn.getAttributes().put(IMongoDBAttributes.AUTHENTICATION_DATABASE, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case UserPrincipal:
noSqlConn.getAttributes().put(IMongoDBAttributes.KRB_USER_PRINCIPAL, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case Realm:
noSqlConn.getAttributes().put(IMongoDBAttributes.KRB_REALM, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case KDCServer:
noSqlConn.getAttributes().put(IMongoDBAttributes.KRB_KDC, ContextParameterUtils.getNewScriptCode(noSqlVariableName, LANGUAGE));
break;
case ReplicaSets:
String replicaSets = noSqlConn.getAttributes().get(IMongoDBAttributes.REPLICA_SET);
try {
JSONArray jsa = new JSONArray(replicaSets);
for (int i = 0; i < jsa.length(); i++) {
JSONObject jso = jsa.getJSONObject(i);
int paramNum = i + 1;
String hostParamName = noSqlVariableName + ExtendedNodeConnectionContextUtils.getReplicaParamName(EHadoopParamName.ReplicaHost, paramNum);
String portParamName = noSqlVariableName + ExtendedNodeConnectionContextUtils.getReplicaParamName(EHadoopParamName.ReplicaPort, paramNum);
jso.put(IMongoConstants.REPLICA_HOST_KEY, ContextParameterUtils.getNewScriptCode(hostParamName, LANGUAGE));
jso.put(IMongoConstants.REPLICA_PORT_KEY, ContextParameterUtils.getNewScriptCode(portParamName, LANGUAGE));
}
noSqlConn.getAttributes().put(IMongoDBAttributes.REPLICA_SET, jsa.toString());
} catch (JSONException e) {
ExceptionHandler.process(e);
}
break;
default:
}
}
use of org.talend.utils.json.JSONArray in project tbd-studio-se by Talend.
the class NoSQLRepositoryContextHandler method setPropertiesForExistContextMode.
@Override
public void setPropertiesForExistContextMode(Connection connection, Set<IConnParamName> paramSet, Map<ContextItem, List<ConectionAdaptContextVariableModel>> adaptMap) {
if (connection == null) {
return;
}
if (connection instanceof NoSQLConnection) {
NoSQLConnection noSqlConn = (NoSQLConnection) connection;
ContextItem currentContext = null;
for (IConnParamName param : paramSet) {
if (param instanceof EHadoopParamName) {
String noSqlVariableName = null;
EHadoopParamName noSqlParam = (EHadoopParamName) param;
if (noSqlParam == EHadoopParamName.ReplicaSets) {
String replicaSets = noSqlConn.getAttributes().get(IMongoDBAttributes.REPLICA_SET);
try {
JSONArray jsa = new JSONArray(replicaSets);
for (int i = 0; i < jsa.length(); i++) {
JSONObject jso = jsa.getJSONObject(i);
int paramNum = i + 1;
String hostParamName = ExtendedNodeConnectionContextUtils.getReplicaParamName(EHadoopParamName.ReplicaHost, paramNum);
String portParamName = ExtendedNodeConnectionContextUtils.getReplicaParamName(EHadoopParamName.ReplicaPort, paramNum);
String hostVariableName = null;
String portVariableName = null;
if (adaptMap != null && adaptMap.size() > 0) {
for (Map.Entry<ContextItem, List<ConectionAdaptContextVariableModel>> entry : adaptMap.entrySet()) {
currentContext = entry.getKey();
List<ConectionAdaptContextVariableModel> modelList = entry.getValue();
for (ConectionAdaptContextVariableModel model : modelList) {
if (model.getValue().equals(hostParamName)) {
hostVariableName = model.getName();
} else if (model.getValue().equals(portParamName)) {
portVariableName = model.getName();
}
if (hostVariableName != null && portVariableName != null) {
break;
}
}
}
}
if (hostVariableName != null && portVariableName != null) {
hostVariableName = getCorrectVariableName(currentContext, hostVariableName, hostParamName);
portVariableName = getCorrectVariableName(currentContext, portVariableName, portParamName);
jso.put(IMongoConstants.REPLICA_HOST_KEY, ContextParameterUtils.getNewScriptCode(hostVariableName, LANGUAGE));
jso.put(IMongoConstants.REPLICA_PORT_KEY, ContextParameterUtils.getNewScriptCode(portVariableName, LANGUAGE));
}
}
noSqlConn.getAttributes().put(IMongoDBAttributes.REPLICA_SET, jsa.toString());
} catch (JSONException e) {
ExceptionHandler.process(e);
}
} else {
if (adaptMap != null && adaptMap.size() > 0) {
for (Map.Entry<ContextItem, List<ConectionAdaptContextVariableModel>> entry : adaptMap.entrySet()) {
currentContext = entry.getKey();
List<ConectionAdaptContextVariableModel> modelList = entry.getValue();
for (ConectionAdaptContextVariableModel model : modelList) {
if (model.getValue().equals(noSqlParam.name())) {
noSqlVariableName = model.getName();
break;
}
}
}
}
if (noSqlVariableName != null) {
noSqlVariableName = getCorrectVariableName(currentContext, noSqlVariableName, noSqlParam);
matchContextForAttribues(noSqlConn, noSqlParam, noSqlVariableName);
}
}
}
}
}
}
Aggregations