use of org.talend.utils.json.JSONArray in project tdi-studio-se by Talend.
the class ColumnListControllerTest method testreUsedColumnFunctionArrayCheck2.
@Test
public void testreUsedColumnFunctionArrayCheck2() throws Exception {
//$NON-NLS-1$
column.setLabel("B");
column.setTalendType(JavaTypesManager.STRING.getId());
JSONObject functionInfoObj = new JSONObject();
JSONArray parametersArr = new JSONArray();
try {
functionInfoObj.put(PARAMETER_CLASS_NAME, "");
functionInfoObj.put(NAME, "...");
JSONObject parameterObj = new JSONObject();
parameterObj.put(PARAMETER_NAME, "customize parameter");
parameterObj.put(PARAMETER_VALUE, "");
parametersArr.put(parameterObj);
functionInfoObj.put(PARAMETERS, parametersArr);
} catch (JSONException e) {
ExceptionHandler.process(e);
}
column.getAdditionalField().put("FUNCTION_INFO", functionInfoObj.toString());
table.getListColumns().add(column);
String functioExpression = "";
testNewLineArrayFunction(functioExpression, column.getLabel());
}
use of org.talend.utils.json.JSONArray in project tdi-studio-se by Talend.
the class ColumnListControllerTest method testreUsedColumnFunctionArrayCheck1.
@Test
public void testreUsedColumnFunctionArrayCheck1() throws Exception {
//$NON-NLS-1$
column.setLabel("A");
column.setTalendType(JavaTypesManager.STRING.getId());
JSONObject functionInfoObj = new JSONObject();
JSONArray parametersArr = new JSONArray();
try {
functionInfoObj.put(PARAMETER_CLASS_NAME, "StringHandling");
functionInfoObj.put(NAME, "CHANGE");
JSONObject parameterObj1 = new JSONObject();
parameterObj1.put(PARAMETER_NAME, "oldStr");
parameterObj1.put(PARAMETER_VALUE, "\"hello world!\" ");
parametersArr.put(parameterObj1);
JSONObject parameterObj2 = new JSONObject();
parameterObj2.put(PARAMETER_NAME, "regex");
parameterObj2.put(PARAMETER_VALUE, "\"world\" ");
parametersArr.put(parameterObj2);
JSONObject parameterObj3 = new JSONObject();
parameterObj3.put(PARAMETER_NAME, "replacement");
parameterObj3.put(PARAMETER_VALUE, "\"guy\" ");
parametersArr.put(parameterObj3);
functionInfoObj.put(PARAMETERS, parametersArr);
} catch (JSONException e) {
ExceptionHandler.process(e);
}
column.getAdditionalField().put("FUNCTION_INFO", functionInfoObj.toString());
table.getListColumns().add(column);
String functioExpression = "StringHandling.CHANGE(\"hello world!\",\"world\",\"guy\")";
testNewLineArrayFunction(functioExpression, column.getLabel());
}
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