X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcomponents%2FDatabaseComponent.java;h=e903b9de992735998d51cd3490d44d3a5b16a2e1;hb=ddd261f331280640c5b53c7128230b629ebcd268;hp=10e679589d95a1c2bd0ca91d3b94c9822eb21367;hpb=92e23e5ecf9614f2ab770a8cdedc0b21ddf1e127;p=utils diff --git a/system/general/src/test/java/org/wamblee/system/components/DatabaseComponent.java b/system/general/src/test/java/org/wamblee/system/components/DatabaseComponent.java index 10e67958..e903b9de 100644 --- a/system/general/src/test/java/org/wamblee/system/components/DatabaseComponent.java +++ b/system/general/src/test/java/org/wamblee/system/components/DatabaseComponent.java @@ -1,64 +1,99 @@ /* * Copyright 2008 the original author or authors. - * + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - */ + */ package org.wamblee.system.components; -import java.util.Properties; - import org.wamblee.support.persistence.Database; import org.wamblee.support.persistence.DerbyDatabase; + import org.wamblee.system.components.ORMappingConfig.DatabaseType; import org.wamblee.system.core.AbstractComponent; import org.wamblee.system.core.DefaultProvidedInterface; import org.wamblee.system.core.ProvidedInterface; import org.wamblee.system.core.Scope; +import java.util.Properties; + + +/** + * DOCUMENT ME! + * + * @author $author$ + * @version $Revision$ + */ public class DatabaseComponent extends AbstractComponent { - - private static ProvidedInterface DB_PROPS = new DefaultProvidedInterface("dbProps", Properties.class); - - private Database database; - - public DatabaseComponent(String aName, Database aDatabase) { - super(aName); + /** + * DOCUMENT ME! + */ + private static ProvidedInterface DB_PROPS = new DefaultProvidedInterface("dbProps", + Properties.class); + + /** + * DOCUMENT ME! + */ + private Database database; + + /** + * Creates a new DatabaseComponent object. + * + * @param aName DOCUMENT ME! + * @param aDatabase DOCUMENT ME! + */ + public DatabaseComponent(String aName, Database aDatabase) { + super(aName); database = aDatabase; addProvidedInterface(DB_PROPS); } + /** + * DOCUMENT ME! + * + * @param aScope DOCUMENT ME! + * + * @return DOCUMENT ME! + */ @Override protected Database doStart(Scope aScope) { - database.start(); - + database.start(); + Properties props = new Properties(); - if ( database instanceof DerbyDatabase ) { + + if (database instanceof DerbyDatabase) { props.put("database.type", DatabaseType.DERBY.toString()); - } else { - throw new IllegalArgumentException("Unknown database type " + database); + } else { + throw new IllegalArgumentException("Unknown database type " + + database); } + //props.put("database.driver", database.getDriverClassName()); props.put("database.url", database.getJdbcUrl()); props.put("database.username", database.getUsername()); props.put("database.password", database.getPassword()); addInterface(DB_PROPS, props, aScope); - return database; + + return database; } + /** + * DOCUMENT ME! + * + * @param aRuntime DOCUMENT ME! + */ @Override protected void doStop(Database aRuntime) { database.stop(); } - }