1818
1919package org .eclipse .lemminx .customservice .synapse .connectors ;
2020
21+ import org .apache .commons .lang3 .StringUtils ;
2122import org .eclipse .lemminx .customservice .synapse .connectors .entity .Connector ;
2223import org .eclipse .lemminx .customservice .synapse .connectors .entity .ConnectorAction ;
2324import org .eclipse .lemminx .customservice .synapse .connectors .entity .OperationParameter ;
@@ -73,7 +74,7 @@ public TestConnectionResponse testConnection(TestConnectionRequest request) {
7374 if (!connectorHolder .exists (connectorName )) {
7475 return new TestConnectionResponse ("Connector not found" );
7576 }
76-
77+ String connectionType = request . getConnectionType ();
7778 LocalEntry localEntry = new LocalEntry ();
7879 String key = getLocalEntryKey (request );
7980 localEntry .setKey (key );
@@ -84,7 +85,7 @@ public TestConnectionResponse testConnection(TestConnectionRequest request) {
8485 return new TestConnectionResponse ("Connection operation not found" );
8586 }
8687
87- String connectionXml = getConnectionXml (connector , initOperation , request .getParameters ());
88+ String connectionXml = getConnectionXml (connector , initOperation , request .getParameters (), connectionType );
8889 localEntry .setContent (connectionXml );
8990 String localEntryXml = LocalEntrySerializer .serializeLocalEntry (localEntry );
9091
@@ -171,27 +172,30 @@ private String getLocalEntryKey(TestConnectionRequest request) {
171172 }
172173
173174 private String getConnectionXml (Connector connector , ConnectorAction initOperation ,
174- Map <String , Object > parameters ) {
175+ Map <String , Object > parameters , String connectionType ) {
175176
176177 org .eclipse .lemminx .customservice .synapse .syntaxTree .pojo .connector .Connector connection =
177178 new org .eclipse .lemminx .customservice .synapse .syntaxTree .pojo .connector .Connector ();
178179 connection .setConnectorName (connector .getName ());
179180 connection .setTag (initOperation .getTag ());
180181 connection .setMethod (Constant .INIT );
182+ if (StringUtils .isNotEmpty (connectionType )) {
183+ connection .addParameter (new ConnectorParameter (Constant .CONNECTION_TYPE , connectionType ));
184+ }
181185 if (parameters != null ) {
182186 for (OperationParameter parameter : initOperation .getParameters ()) {
183- if (parameters .containsKey (parameter )) {
187+ if (parameters .containsKey (parameter . getName () )) {
184188 ConnectorParameter connectorParameter = new ConnectorParameter ();
185189 connectorParameter .setName (parameter .getName ());
186- if (parameters .get (parameter ) instanceof Map ) {
187- Map parameterMap = (Map ) parameters .get (parameter );
190+ if (parameters .get (parameter . getName () ) instanceof Map ) {
191+ Map parameterMap = (Map ) parameters .get (parameter . getName () );
188192 if (Boolean .parseBoolean (parameterMap .get (Constant .IS_EXPRESSION ).toString ())) {
189193 connectorParameter .setExpression (parameterMap .get (Constant .VALUE ).toString ());
190194 } else {
191195 connectorParameter .setValue (parameterMap .get (Constant .VALUE ).toString ());
192196 }
193197 } else {
194- connectorParameter .setValue (parameters .get (parameter ).toString ());
198+ connectorParameter .setValue (parameters .get (parameter . getName () ).toString ());
195199 }
196200 connection .addParameter (connectorParameter );
197201 }
0 commit comments