Skip to content

Commit 820b720

Browse files
author
linjc13
committed
[FLINK-36796][pipeline-connector][oracle]add oracle pipeline connector.
1 parent 95fe4d3 commit 820b720

File tree

41 files changed

+6795
-13
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+6795
-13
lines changed
Lines changed: 263 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,263 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
~ Copyright 2023 Ververica Inc.
4+
~
5+
~ Licensed under the Apache License, Version 2.0 (the "License");
6+
~ you may not use this file except in compliance with the License.
7+
~ You may obtain a copy of the License at
8+
~
9+
~ http://www.apache.org/licenses/LICENSE-2.0
10+
~
11+
~ Unless required by applicable law or agreed to in writing, software
12+
~ distributed under the License is distributed on an "AS IS" BASIS,
13+
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
~ See the License for the specific language governing permissions and
15+
~ limitations under the License.
16+
-->
17+
18+
<project xmlns="http://maven.apache.org/POM/4.0.0"
19+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
20+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
21+
<parent>
22+
<groupId>org.apache.flink</groupId>
23+
<artifactId>flink-cdc-pipeline-connectors</artifactId>
24+
<version>${revision}</version>
25+
</parent>
26+
<modelVersion>4.0.0</modelVersion>
27+
28+
<artifactId>flink-cdc-pipeline-connector-oracle</artifactId>
29+
30+
<properties>
31+
</properties>
32+
33+
<dependencies>
34+
<dependency>
35+
<groupId>io.debezium</groupId>
36+
<artifactId>debezium-core</artifactId>
37+
<version>1.9.8.Final</version>
38+
</dependency>
39+
<dependency>
40+
<groupId>io.debezium</groupId>
41+
<artifactId>debezium-ddl-parser</artifactId>
42+
<version>${debezium.version}</version>
43+
<exclusions>
44+
<exclusion>
45+
<artifactId>debezium-core</artifactId>
46+
<groupId>io.debezium</groupId>
47+
</exclusion>
48+
</exclusions>
49+
</dependency>
50+
51+
<dependency>
52+
<groupId>org.apache.flink</groupId>
53+
<artifactId>flink-table-planner_${scala.binary.version}</artifactId>
54+
<version>${flink.version}</version>
55+
<scope>test</scope>
56+
</dependency>
57+
58+
<dependency>
59+
<groupId>org.apache.flink</groupId>
60+
<artifactId>flink-table-runtime</artifactId>
61+
<version>${flink.version}</version>
62+
<scope>test</scope>
63+
</dependency>
64+
65+
<dependency>
66+
<groupId>org.apache.flink</groupId>
67+
<artifactId>flink-test-utils</artifactId>
68+
<version>${flink.version}</version>
69+
<scope>test</scope>
70+
</dependency>
71+
72+
<dependency>
73+
<groupId>org.apache.flink</groupId>
74+
<artifactId>flink-connector-test-utils</artifactId>
75+
<version>${flink.version}</version>
76+
<scope>test</scope>
77+
</dependency>
78+
79+
<dependency>
80+
<groupId>org.apache.flink</groupId>
81+
<artifactId>flink-core</artifactId>
82+
<version>${flink.version}</version>
83+
<type>test-jar</type>
84+
<scope>test</scope>
85+
</dependency>
86+
87+
<dependency>
88+
<groupId>org.apache.flink</groupId>
89+
<artifactId>flink-streaming-java</artifactId>
90+
<version>${flink.version}</version>
91+
<type>test-jar</type>
92+
<scope>test</scope>
93+
</dependency>
94+
95+
<dependency>
96+
<groupId>org.apache.flink</groupId>
97+
<artifactId>flink-table-common</artifactId>
98+
<version>${flink.version}</version>
99+
<type>test-jar</type>
100+
<scope>test</scope>
101+
</dependency>
102+
103+
<dependency>
104+
<groupId>org.apache.flink</groupId>
105+
<artifactId>flink-tests</artifactId>
106+
<version>${flink.version}</version>
107+
<type>test-jar</type>
108+
<scope>test</scope>
109+
</dependency>
110+
111+
<dependency>
112+
<groupId>org.apache.flink</groupId>
113+
<artifactId>flink-table-planner_${scala.binary.version}</artifactId>
114+
<version>${flink.version}</version>
115+
<type>test-jar</type>
116+
<scope>test</scope>
117+
</dependency>
118+
119+
<!-- test dependencies on TestContainers -->
120+
121+
<dependency>
122+
<groupId>org.testcontainers</groupId>
123+
<artifactId>mysql</artifactId>
124+
<version>${testcontainers.version}</version>
125+
<scope>test</scope>
126+
</dependency>
127+
<!-- geometry dependencies -->
128+
<dependency>
129+
<groupId>com.esri.geometry</groupId>
130+
<artifactId>esri-geometry-api</artifactId>
131+
<version>${geometry.version}</version>
132+
<exclusions>
133+
<exclusion>
134+
<groupId>com.fasterxml.jackson.core</groupId>
135+
<artifactId>jackson-core</artifactId>
136+
</exclusion>
137+
</exclusions>
138+
</dependency>
139+
<dependency>
140+
<groupId>org.apache.flink</groupId>
141+
<artifactId>flink-connector-oracle-cdc</artifactId>
142+
<version>${parent.version}</version>
143+
</dependency>
144+
145+
<dependency>
146+
<groupId>com.jayway.jsonpath</groupId>
147+
<artifactId>json-path</artifactId>
148+
<version>${json-path.version}</version>
149+
<scope>test</scope>
150+
</dependency>
151+
<dependency>
152+
<groupId>com.ververica</groupId>
153+
<artifactId>flink-cdc-source-e2e-tests</artifactId>
154+
<version>cty-3.0-2.2-SNAPSHOT</version>
155+
<scope>test</scope>
156+
</dependency>
157+
<dependency>
158+
<groupId>org.apache.flink</groupId>
159+
<artifactId>flink-connector-test-util</artifactId>
160+
<version>3.4-SNAPSHOT</version>
161+
<scope>test</scope>
162+
</dependency>
163+
</dependencies>
164+
165+
<build>
166+
<plugins>
167+
<plugin>
168+
<groupId>org.apache.maven.plugins</groupId>
169+
<artifactId>maven-shade-plugin</artifactId>
170+
<version>3.2.4</version>
171+
<executions>
172+
<execution>
173+
<id>shade-flink</id>
174+
<phase>package</phase>
175+
<goals>
176+
<goal>shade</goal>
177+
</goals>
178+
<configuration>
179+
<shadeTestJar>false</shadeTestJar>
180+
<artifactSet>
181+
<includes>
182+
<include>io.debezium:debezium-api</include>
183+
<include>io.debezium:debezium-embedded</include>
184+
<include>io.debezium:debezium-core</include>
185+
<include>io.debezium:debezium-ddl-parser</include>
186+
<include>io.debezium:debezium-connector-oracle</include>
187+
<include>io.debezium:debezium-connector-mysql</include>
188+
<include>com.ververica:flink-connector-debezium</include>
189+
<include>com.ververica:flink-connector-mysql-cdc</include>
190+
<include>com.ververica:flink-connector-oracle-cdc</include>
191+
<include>com.ververica:flink-cdc-base</include>
192+
<include>com.oracle.ojdbc:ojdbc8</include>
193+
<include>cn.easyproject:orai18n</include>
194+
<include>org.antlr:antlr4-runtime</include>
195+
<include>org.apache.kafka:*</include>
196+
<include>mysql:mysql-connector-java</include>
197+
<include>com.zendesk:mysql-binlog-connector-java</include>
198+
<include>com.fasterxml.*:*</include>
199+
<include>com.google.guava:*</include>
200+
<include>com.esri.geometry:esri-geometry-api</include>
201+
<include>com.zaxxer:HikariCP</include>
202+
<!-- Include fixed version 30.1.1-jre-14.0 of flink shaded guava -->
203+
<include>org.apache.flink:flink-shaded-guava</include>
204+
</includes>
205+
</artifactSet>
206+
<filters>
207+
<filter>
208+
<artifact>org.apache.kafka:*</artifact>
209+
<excludes>
210+
<exclude>kafka/kafka-version.properties</exclude>
211+
<exclude>LICENSE</exclude>
212+
<!-- Does not contain anything relevant.
213+
Cites a binary dependency on jersey, but this is neither reflected in the
214+
dependency graph, nor are any jersey files bundled. -->
215+
<exclude>NOTICE</exclude>
216+
<exclude>common/**</exclude>
217+
</excludes>
218+
</filter>
219+
</filters>
220+
<relocations>
221+
<relocation>
222+
<pattern>org.apache.kafka</pattern>
223+
<shadedPattern>
224+
com.ververica.cdc.connectors.shaded.org.apache.kafka
225+
</shadedPattern>
226+
</relocation>
227+
<relocation>
228+
<pattern>org.antlr</pattern>
229+
<shadedPattern>
230+
com.ververica.cdc.connectors.shaded.org.antlr
231+
</shadedPattern>
232+
</relocation>
233+
<relocation>
234+
<pattern>com.fasterxml</pattern>
235+
<shadedPattern>
236+
com.ververica.cdc.connectors.shaded.com.fasterxml
237+
</shadedPattern>
238+
</relocation>
239+
<relocation>
240+
<pattern>com.google</pattern>
241+
<shadedPattern>
242+
com.ververica.cdc.connectors.shaded.com.google
243+
</shadedPattern>
244+
</relocation>
245+
<relocation>
246+
<pattern>com.esri.geometry</pattern>
247+
<shadedPattern>com.ververica.cdc.connectors.shaded.com.esri.geometry</shadedPattern>
248+
</relocation>
249+
<relocation>
250+
<pattern>com.zaxxer</pattern>
251+
<shadedPattern>
252+
com.ververica.cdc.connectors.shaded.com.zaxxer
253+
</shadedPattern>
254+
</relocation>
255+
</relocations>
256+
</configuration>
257+
</execution>
258+
</executions>
259+
</plugin>
260+
</plugins>
261+
</build>
262+
263+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
/*
2+
* Licensed to the Apache Software Foundation (ASF) under one or more
3+
* contributor license agreements. See the NOTICE file distributed with
4+
* this work for additional information regarding copyright ownership.
5+
* The ASF licenses this file to You under the Apache License, Version 2.0
6+
* (the "License"); you may not use this file except in compliance with
7+
* the License. You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
18+
package com.apache.flink.cdc.connectors.oracle.dto;
19+
20+
import java.io.Serializable;
21+
22+
/** dto related to Table schema. */
23+
public class ColumnInfo implements Serializable {
24+
private String columnName;
25+
private String dataType;
26+
private Integer dataLength;
27+
private Integer dataPrecision;
28+
private Integer dataScale;
29+
30+
public Integer getDataLength() {
31+
return dataLength;
32+
}
33+
34+
public void setDataLength(Integer dataLength) {
35+
this.dataLength = dataLength;
36+
}
37+
38+
public String getColumnName() {
39+
return columnName;
40+
}
41+
42+
public void setColumnName(String columnName) {
43+
this.columnName = columnName;
44+
}
45+
46+
public String getDataType() {
47+
return dataType;
48+
}
49+
50+
public void setDataType(String dataType) {
51+
this.dataType = dataType;
52+
}
53+
54+
public Integer getDataPrecision() {
55+
return dataPrecision;
56+
}
57+
58+
public void setDataPrecision(Integer dataPrecision) {
59+
this.dataPrecision = dataPrecision;
60+
}
61+
62+
public Integer getDataScale() {
63+
return dataScale;
64+
}
65+
66+
public void setDataScale(Integer dataScale) {
67+
this.dataScale = dataScale;
68+
}
69+
}

0 commit comments

Comments
 (0)