/** * OpenSpotLight - Open Source IT Governance Platform * * Copyright (c) 2009, CARAVELATECH CONSULTORIA E TECNOLOGIA EM INFORMATICA LTDA * or third-party contributors as indicated by the @author tags or express * copyright attribution statements applied by the authors. All third-party * contributions are distributed under license by CARAVELATECH CONSULTORIA E * TECNOLOGIA EM INFORMATICA LTDA. * * This copyrighted material is made available to anyone wishing to use, modify, * copy, or redistribute it subject to the terms and conditions of the GNU * Lesser General Public License, as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * See the GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this distribution; if not, write to: * Free Software Foundation, Inc. * 51 Franklin Street, Fifth Floor * Boston, MA 02110-1301 USA * *********************************************************************** * OpenSpotLight - Plataforma de Governança de TI de Código Aberto * * Direitos Autorais Reservados (c) 2009, CARAVELATECH CONSULTORIA E TECNOLOGIA * EM INFORMATICA LTDA ou como contribuidores terceiros indicados pela etiqueta * @author ou por expressa atribuição de direito autoral declarada e atribuída pelo autor. * Todas as contribuições de terceiros estão distribuídas sob licença da * CARAVELATECH CONSULTORIA E TECNOLOGIA EM INFORMATICA LTDA. * * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os * termos da Licença Pública Geral Menor do GNU conforme publicada pela Free Software * Foundation. * * Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA * GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU ADEQUAÇÃO A UMA * FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral Menor do GNU para mais detalhes. * * Você deve ter recebido uma cópia da Licença Pública Geral Menor do GNU junto com este * programa; se não, escreva para: * Free Software Foundation, Inc. * 51 Franklin Street, Fifth Floor * Boston, MA 02110-1301 USA */ package org.openspotlight.federation.data.processing.test; import org.openspotlight.domain.ArtifactSourceMapping; import org.openspotlight.domain.DbArtifactSource; import org.openspotlight.domain.Group; import org.openspotlight.domain.Repository; import org.openspotlight.federation.domain.artifact.db.DatabaseType; /** * Class with some example valid configurations * * @author Luiz Fernando Teston - feu.teston@caravelatech.com */ @SuppressWarnings("all") public class ConfigurationExamples { private static Repository createDatabaseRepository( final String repositoryName, final String groupName, final String sourceName, final String user, final String password, final DatabaseType type, final String initialLookup, final String driver) { final Repository repository = new Repository(); repository.setName(repositoryName); repository.setActive(true); final Group group = new Group(); group.setName(groupName); group.setRepository(repository); repository.getGroups().add(group); group.setActive(true); final DbArtifactSource artifactSource = new DbArtifactSource(); artifactSource.setServerName("server name " + sourceName); artifactSource.setDatabaseName("db name " + sourceName); group.getArtifactSources().add(artifactSource); artifactSource.setRepository(repository); artifactSource.setName(sourceName); artifactSource.setActive(true); artifactSource.setUser(user); artifactSource.setPassword(password); artifactSource.setMaxConnections(4); artifactSource.setType(type); artifactSource.setInitialLookup(initialLookup); artifactSource.setDriverClass(driver); final ArtifactSourceMapping mapping = new ArtifactSourceMapping(); mapping.setSource(artifactSource); artifactSource.getMappings().add(mapping); mapping.setFrom("/PUBLIC"); mapping.setTo("/databaseArtifacts"); artifactSource.getMappings().add(mapping); mapping.getIncludeds().add("**"); // final BundleConfig commonProcessor = new // BundleConfig(); // commonProcessor.setActive(true); // commonProcessor.setGroup(group); // group.getBundleConfig().add(commonProcessor); // final BundleConfig customProcessor = new // BundleConfig(); // customProcessor.setActive(true); // customProcessor.setGroup(group); // group.getBundleConfig().add(customProcessor); return repository; } public static Repository createDb2Configuration() { return createDatabaseRepository("db2 Repository", "db2 Group", "db2 Connection", "db2admin", "db2admin", DatabaseType.DB2, "jdbc:db2://localhost:50000/SAMPLE", "com.ibm.db2.jcc.DB2Driver"); } public static Repository createH2DbConfiguration(final String dirName) { return createDatabaseRepository("H2 Repository", "h2 Group", "H2 Connection", "sa", null, DatabaseType.H2, "jdbc:h2:./target/test-data/" + dirName + "/h2/db", "org.h2.Driver"); } public static Repository createMySqlDbConfiguration() { return createDatabaseRepository("mysql Repository", "mysql Group", "mysql Connection", "root", null, DatabaseType.MY_SQL, "jdbc:mysql://localhost:3306/test", "com.mysql.jdbc.Driver"); } public static Repository createOracleOciDbConfiguration() { return createDatabaseRepository("oracle Repository", "oracle Group", "oracle Connection", "HR", "pass", DatabaseType.ORACLE, "jdbc:oracle:oci8:@orcl", "oracle.jdbc.driver.OracleDriver"); } public static Repository createPostgresqlConfiguration() { return createDatabaseRepository("postgresql Repository", "postgresql Group", "postgresql Connection", "postgres", "postgres", DatabaseType.POSTGRES, "jdbc:postgresql://localhost:5432/osl?charSet=UTF8", "org.postgresql.Driver"); } public static Repository createSqlServerDbConfiguration() { return createDatabaseRepository("sqlserver Repository", "sqlserver Group", "sqlserver Connection", "sa", null, DatabaseType.SQL_SERVER, "jdbc:jtds:sqlserver://localhost:49385", "net.sourceforge.jtds.jdbc.Driver"); } }