Skip to content

Commit 9b8421a

Browse files
author
Bhooshan Mogal
authored
Merge pull request #78 from data-integrations/feature/host-port-macro
(PLUGIN-174) Made host, port, database macro-enabled
2 parents 5607858 + 0957f66 commit 9b8421a

File tree

5 files changed

+24
-1
lines changed

5 files changed

+24
-1
lines changed

database-commons/src/main/java/io/cdap/plugin/db/batch/config/DBSpecificQueryActionConfig.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package io.cdap.plugin.db.batch.config;
1818

1919
import io.cdap.cdap.api.annotation.Description;
20+
import io.cdap.cdap.api.annotation.Macro;
2021
import io.cdap.cdap.api.annotation.Name;
2122
import io.cdap.plugin.db.batch.action.QueryActionConfig;
2223

@@ -27,14 +28,17 @@
2728
public abstract class DBSpecificQueryActionConfig extends QueryActionConfig {
2829
@Name(HOST)
2930
@Description("Database host")
31+
@Macro
3032
public String host;
3133

3234
@Name(PORT)
3335
@Description("Specific database port")
36+
@Macro
3437
public Integer port;
3538

3639
@Name(DATABASE)
3740
@Description("Database name to connect to")
41+
@Macro
3842
public String database;
3943

4044
}

database-commons/src/main/java/io/cdap/plugin/db/batch/config/DBSpecificQueryConfig.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package io.cdap.plugin.db.batch.config;
1818

1919
import io.cdap.cdap.api.annotation.Description;
20+
import io.cdap.cdap.api.annotation.Macro;
2021
import io.cdap.cdap.api.annotation.Name;
2122
import io.cdap.plugin.db.batch.action.QueryConfig;
2223

@@ -27,13 +28,16 @@
2728
public abstract class DBSpecificQueryConfig extends QueryConfig {
2829
@Name(HOST)
2930
@Description("Database host")
31+
@Macro
3032
public String host;
3133

3234
@Name(PORT)
3335
@Description("Specific database port")
36+
@Macro
3437
public Integer port;
3538

3639
@Name(DATABASE)
3740
@Description("Database name to connect to")
41+
@Macro
3842
public String database;
3943
}

database-commons/src/main/java/io/cdap/plugin/db/batch/config/DBSpecificSinkConfig.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package io.cdap.plugin.db.batch.config;
1818

1919
import io.cdap.cdap.api.annotation.Description;
20+
import io.cdap.cdap.api.annotation.Macro;
2021
import io.cdap.cdap.api.annotation.Name;
2122
import io.cdap.plugin.db.batch.sink.AbstractDBSink;
2223

@@ -27,13 +28,16 @@
2728
public abstract class DBSpecificSinkConfig extends AbstractDBSink.DBSinkConfig {
2829
@Name(HOST)
2930
@Description("Database host")
31+
@Macro
3032
public String host;
3133

3234
@Name(PORT)
3335
@Description("Specific database port")
36+
@Macro
3437
public Integer port;
3538

3639
@Name(DATABASE)
3740
@Description("Database name to connect to")
41+
@Macro
3842
public String database;
3943
}

database-commons/src/main/java/io/cdap/plugin/db/batch/config/DBSpecificSourceConfig.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package io.cdap.plugin.db.batch.config;
1818

1919
import io.cdap.cdap.api.annotation.Description;
20+
import io.cdap.cdap.api.annotation.Macro;
2021
import io.cdap.cdap.api.annotation.Name;
2122
import io.cdap.plugin.db.batch.source.AbstractDBSource;
2223

@@ -27,13 +28,16 @@
2728
public abstract class DBSpecificSourceConfig extends AbstractDBSource.DBSourceConfig {
2829
@Name(HOST)
2930
@Description("Database host")
31+
@Macro
3032
public String host;
3133

3234
@Name(PORT)
3335
@Description("Specific database port")
36+
@Macro
3437
public Integer port;
3538

3639
@Name(DATABASE)
3740
@Description("Database name to connect to")
41+
@Macro
3842
public String database;
3943
}

database-commons/src/main/java/io/cdap/plugin/db/batch/source/AbstractDBSource.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,14 @@ public void configurePipeline(PipelineConfigurer pipelineConfigurer) {
101101
sourceConfig.validate(collector);
102102
if (sourceConfig.getSchema() != null) {
103103
stageConfigurer.setOutputSchema(sourceConfig.getSchema());
104-
} else if (!sourceConfig.containsMacro(DBSourceConfig.IMPORT_QUERY)) {
104+
return;
105+
}
106+
if (!sourceConfig.containsMacro(ConnectionConfig.HOST) &&
107+
!sourceConfig.containsMacro(ConnectionConfig.PORT) &&
108+
!sourceConfig.containsMacro(ConnectionConfig.USER) &&
109+
!sourceConfig.containsMacro(ConnectionConfig.PASSWORD) &&
110+
!sourceConfig.containsMacro(DBSourceConfig.DATABASE) &&
111+
!sourceConfig.containsMacro(DBSourceConfig.IMPORT_QUERY)) {
105112
try {
106113
stageConfigurer.setOutputSchema(getSchema(driverClass));
107114
} catch (IllegalAccessException | InstantiationException e) {

0 commit comments

Comments
 (0)