@@ -111,11 +111,10 @@ public boolean accept(File dir, String name) {
111
111
log .error ("Error while extracting Connector zip : " + connectorZip .getAbsolutePath (), e );
112
112
continue ;
113
113
}
114
- String packageName = retrievePackageName (connectorExtractedPath );
115
-
116
- // Retrieve connector name
117
- String connectorName = connectorZip .getName ().substring (0 , connectorZip .getName ().lastIndexOf ('-' ));
118
- QName qualifiedName = new QName (packageName , connectorName );
114
+ QName qualifiedName = retrieveQualifiedConnectorName (connectorExtractedPath );
115
+ if (qualifiedName == null ) {
116
+ continue ;
117
+ }
119
118
File importFile = new File (importsDir , qualifiedName .toString () + ".xml" );
120
119
121
120
if (!importFile .exists ()) {
@@ -155,8 +154,7 @@ private static void generateImportConfig (QName qualifiedName, File targetImport
155
154
}
156
155
157
156
158
- private static String retrievePackageName (String extractedPath ) {
159
- String packageName = null ;
157
+ private static QName retrieveQualifiedConnectorName (String extractedPath ) {
160
158
File connectorXml = new File (extractedPath + CONNECTOR_XML );
161
159
if (!connectorXml .exists ()) {
162
160
log .error ("connector.xml file not found at : " + extractedPath );
@@ -165,8 +163,11 @@ private static String retrievePackageName(String extractedPath) {
165
163
try (InputStream xmlInputStream = new FileInputStream (connectorXml )) {
166
164
OMElement connectorDef = new StAXOMBuilder (xmlInputStream ).getDocumentElement ();
167
165
OMAttribute packageAttr = connectorDef .getFirstElement ().getAttribute (new QName ("package" ));
168
- if (packageAttr != null ) {
169
- packageName = packageAttr .getAttributeValue ();
166
+ OMAttribute nameAttr = connectorDef .getFirstElement ().getAttribute (new QName ("name" ));
167
+ if (nameAttr != null && packageAttr != null ) {
168
+ String connectorName = nameAttr .getAttributeValue ();
169
+ String packageName = packageAttr .getAttributeValue ();
170
+ return new QName (packageName , connectorName );
170
171
}
171
172
} catch (XMLStreamException e ) {
172
173
log .error ("Error while parsing the connector.xml file " , e );
@@ -175,7 +176,7 @@ private static String retrievePackageName(String extractedPath) {
175
176
} catch (IOException e ) {
176
177
log .error ("Error occurred while reading: " + connectorXml .getPath ());
177
178
}
178
- return packageName ;
179
+ return null ;
179
180
}
180
181
181
182
0 commit comments