001 /** 002 * Copyright (c) 2003 Daffodil Software Ltd all rights reserved, 003 * Modifications Copyright (c) 2008 Regiscope Digital Imaging Co, LLC, All rights reserved. 004 * This program is free software; you can redistribute it and/or modify 005 * it under the terms of version 2 of the GNU General Public License as 006 * published by the Free Software Foundation. 007 * There are special exceptions to the terms and conditions of the GPL 008 * as it is applied to this software. See the GNU General Public License for more details. 009 * 010 * This program is distributed in the hope that it will be useful, 011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 013 * GNU General Public License for more details. 014 * 015 * You should have received a copy of the GNU General Public License 016 * along with this program; if not, write to the Free Software 017 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 018 */ 019 020 package org.dbreplicator.replication; 021 022 import java.rmi.*; 023 import java.sql.*; 024 import java.util.ArrayList; 025 026 /** 027 * _ReplicationServer is an interface implemented by ReplicationServer class. 028 * It holds abstraction of all the relevant methods, needed for creating 029 * publication, creating subscription, setting data source for the replication 030 * server, and getting connection from it. Besides it , it holds the abstraction 031 * of the methods for getting the publication and subscription objects later on. 032 * 033 */ 034 035 public interface _ReplicationServer 036 { 037 _Publication getPublication(String pubName) throws RemoteException, 038 RepException; 039 040 _Subscription getSubscription(String subName) throws RepException; 041 042 _Subscription createSubscription(String subName, String pubName) throws 043 RepException; 044 045 _Publication createPublication(String pubName, String[] tableNames) throws 046 RepException; 047 048 _Publication createPublication(String pubName, String[] tableNames,String[] removeCycleTableNames) throws 049 RepException; 050 051 void setDataSource(String driver0, String url0, String user0, 052 String password0) throws RepException; 053 void setDataSource(String dataBaseName,String user,String password0, String dBPortNo0,String databaseServerName, String vendorName0) throws RepException; 054 055 Connection getConnection(String pub_sub_Name) throws RepException; 056 057 Connection getDefaultConnection(); 058 ArrayList getTablesInCycle(); 059 }

