All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alibaba.alink.operator.stream.source.MySqlSourceStreamOp Maven / Gradle / Ivy

package com.alibaba.alink.operator.stream.source;

import org.apache.flink.ml.api.misc.param.Params;
import org.apache.flink.table.api.Table;

import com.alibaba.alink.common.io.BaseDB;
import com.alibaba.alink.common.io.MySqlDB;
import com.alibaba.alink.common.io.annotations.AnnotationUtils;
import com.alibaba.alink.common.io.annotations.IOType;
import com.alibaba.alink.common.io.annotations.IoOpAnnotation;
import com.alibaba.alink.params.io.MySqlSourceParams;

/**
 * Stream source that reads data from MySql.
 */
@IoOpAnnotation(name = "my_sql_stream_source", ioType = IOType.SourceStream)
public final class MySqlSourceStreamOp extends BaseSourceStreamOp 
	implements MySqlSourceParams  {

	public MySqlSourceStreamOp() {
		this(new Params());
	}

	public MySqlSourceStreamOp(Params params) {
		super(AnnotationUtils.annotatedName(MySqlDB.class), params);
	}

	@Override
	protected Table initializeDataSource() {
		try {
			BaseDB db = BaseDB.of(super.getParams());
			return new DBSourceStreamOp(db, getInputTableName(), super.getParams()).initializeDataSource();
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy