当前位置: 首页>>代码示例>>Java>>正文


Java ReplicationConnectionProxy.createProxyInstance方法代码示例

本文整理汇总了Java中com.mysql.jdbc.ReplicationConnectionProxy.createProxyInstance方法的典型用法代码示例。如果您正苦于以下问题:Java ReplicationConnectionProxy.createProxyInstance方法的具体用法?Java ReplicationConnectionProxy.createProxyInstance怎么用?Java ReplicationConnectionProxy.createProxyInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.mysql.jdbc.ReplicationConnectionProxy的用法示例。


在下文中一共展示了ReplicationConnectionProxy.createProxyInstance方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getTestReplicationConnectionNoSlaves

import com.mysql.jdbc.ReplicationConnectionProxy; //导入方法依赖的package包/类
/**
 * Internal method for tests to get a replcation connection with a
 * single master host to the test URL.
 */
private ReplicationConnection getTestReplicationConnectionNoSlaves(String masterHost) throws Exception {
    Properties props = getPropertiesFromTestsuiteUrl();
    List<String> masterHosts = new ArrayList<String>();
    masterHosts.add(masterHost);
    List<String> slaveHosts = new ArrayList<String>(); // empty
    ReplicationConnection replConn = ReplicationConnectionProxy.createProxyInstance(masterHosts, props, slaveHosts, props);
    return replConn;
}
 
开发者ID:bragex,项目名称:the-vigilantes,代码行数:13,代码来源:ConnectionRegressionTest.java

示例2: getActiveConnection

import com.mysql.jdbc.ReplicationConnectionProxy; //导入方法依赖的package包/类
protected Connection getActiveConnection() throws SQLException {
    if (!this.transactionInProgress) {
        refreshStateIfNecessary();
    }

    if (this.currentConnection != null) {
        return this.currentConnection;
    }

    if (getCurrentServerGroup() == null) {
        throw SQLError.createSQLException("No server group selected.", SQLError.SQL_STATE_CONNECTION_REJECTED, null, getExceptionInterceptor(), this);
    }

    // try to find an existing replication connection to the current group
    this.currentConnection = this.serverConnections.get(this.serverGroup);
    if (this.currentConnection != null) {
        return this.currentConnection;
    }

    // otherwise, build a replication connection to the current group
    List<String> masterHost = new ArrayList<String>();
    List<String> slaveHosts = new ArrayList<String>();
    for (Server s : this.serverGroup.getServers()) {
        if (s.isMaster()) {
            masterHost.add(s.getHostPortString());
        } else if (s.isSlave()) {
            slaveHosts.add(s.getHostPortString());
        }
    }
    Properties info = exposeAsProperties(null);
    ReplicationConnectionGroup replConnGroup = ReplicationConnectionGroupManager.getConnectionGroup(this.serverGroup.getName());
    if (replConnGroup != null) {
        if (replConnGroupLocks.add(this.serverGroup.getName())) {
            try {
                syncGroupServersToReplicationConnectionGroup(replConnGroup);
            } finally {
                replConnGroupLocks.remove(this.serverGroup.getName());
            }
        }
    }
    info.put("replicationConnectionGroup", this.serverGroup.getName());
    info.setProperty(NonRegisteringDriver.USER_PROPERTY_KEY, this.username);
    info.setProperty(NonRegisteringDriver.PASSWORD_PROPERTY_KEY, this.password);
    info.setProperty(NonRegisteringDriver.DBNAME_PROPERTY_KEY, getCatalog());
    info.setProperty("connectionAttributes", "fabricHaGroup:" + this.serverGroup.getName());
    info.setProperty("retriesAllDown", "1");
    info.setProperty("allowMasterDownConnections", "true");
    info.setProperty("allowSlaveDownConnections", "true");
    info.setProperty("readFromMasterWhenNoSlaves", "true");
    this.currentConnection = ReplicationConnectionProxy.createProxyInstance(masterHost, info, slaveHosts, info);
    this.serverConnections.put(this.serverGroup, this.currentConnection);

    this.currentConnection.setProxy(this);
    this.currentConnection.setAutoCommit(this.autoCommit);
    this.currentConnection.setReadOnly(this.readOnly);
    this.currentConnection.setTransactionIsolation(this.transactionIsolation);
    return this.currentConnection;
}
 
开发者ID:bragex,项目名称:the-vigilantes,代码行数:59,代码来源:FabricMySQLConnectionProxy.java

示例3: getActiveConnection

import com.mysql.jdbc.ReplicationConnectionProxy; //导入方法依赖的package包/类
protected Connection getActiveConnection() throws SQLException {
    if (!this.transactionInProgress) {
        refreshStateIfNecessary();
    }

    if (this.currentConnection != null) {
        return this.currentConnection;
    }

    if (getCurrentServerGroup() == null) {
        throw SQLError.createSQLException("No server group selected.", SQLError.SQL_STATE_CONNECTION_REJECTED, null, getExceptionInterceptor(), this);
    }

    // try to find an existing replication connection to the current group
    this.currentConnection = this.serverConnections.get(this.serverGroup);
    if (this.currentConnection != null) {
        return this.currentConnection;
    }

    // otherwise, build a replication connection to the current group
    List<String> masterHost = new ArrayList<String>();
    List<String> slaveHosts = new ArrayList<String>();
    for (Server s : this.serverGroup.getServers()) {
        if (s.isMaster()) {
            masterHost.add(s.getHostPortString());
        } else if (s.isSlave()) {
            slaveHosts.add(s.getHostPortString());
        }
    }
    Properties info = exposeAsProperties(null);
    ReplicationConnectionGroup replConnGroup = ReplicationConnectionGroupManager.getConnectionGroup(this.serverGroup.getName());
    if (replConnGroup != null) {
        if (replConnGroupLocks.add(this.serverGroup.getName())) {
            try {
                syncGroupServersToReplicationConnectionGroup(replConnGroup);
            } finally {
                replConnGroupLocks.remove(this.serverGroup.getName());
            }
        }
    }
    info.put("replicationConnectionGroup", this.serverGroup.getName());
    info.setProperty(NonRegisteringDriver.USER_PROPERTY_KEY, this.username);
    info.setProperty(NonRegisteringDriver.PASSWORD_PROPERTY_KEY, this.password);
    info.setProperty(NonRegisteringDriver.DBNAME_PROPERTY_KEY, getCatalog());
    info.setProperty("connectionAttributes", "fabricHaGroup:" + this.serverGroup.getName());
    info.setProperty("retriesAllDown", "1");
    info.setProperty("allowSlaveDownConnections", "true");
    info.setProperty("readFromMasterWhenNoSlaves", "true");
    this.currentConnection = ReplicationConnectionProxy.createProxyInstance(masterHost, info, slaveHosts, info);
    this.serverConnections.put(this.serverGroup, this.currentConnection);

    this.currentConnection.setProxy(this);
    this.currentConnection.setAutoCommit(this.autoCommit);
    this.currentConnection.setReadOnly(this.readOnly);
    this.currentConnection.setTransactionIsolation(this.transactionIsolation);
    return this.currentConnection;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:58,代码来源:FabricMySQLConnectionProxy.java


注:本文中的com.mysql.jdbc.ReplicationConnectionProxy.createProxyInstance方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。