hammant 01/11/02 03:09:08 Modified: apps/db/src/java/org/apache/avalon/db/server AbstractDatabaseManager.java apps/db/src/java/org/apache/avalon/db/services DatabaseManager.java apps/db/src/java/org/apache/avalon/db/transport/cmdstream/server PlainCMDDatabaseManager.java Added: apps/db/src/java/org/apache/avalon/db/transport/soap/server SoapDatabaseManager.java SoapDatabaseManager.xinfo Log: New transport for AvalonDB - SOAP Revision Changes Path 1.8 +5 -4 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/server/AbstractDatabaseManager.java Index: AbstractDatabaseManager.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/server/AbstractDatabaseManager.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- AbstractDatabaseManager.java 2001/10/31 14:42:14 1.7 +++ AbstractDatabaseManager.java 2001/11/02 11:09:08 1.8 @@ -29,6 +29,7 @@ import org.apache.avalon.framework.logger.AbstractLoggable; import org.apache.avalon.framework.component.ComponentManager; import org.apache.avalon.framework.component.ComponentException; +import org.apache.avalon.framework.component.Composable; /** @@ -36,9 +37,9 @@ * * * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> - * @version $Revision: 1.7 $ + * @version $Revision: 1.8 $ */ -public abstract class AbstractDatabaseManager extends AbstractLoggable { +public abstract class AbstractDatabaseManager extends AbstractLoggable implements Composable { protected SQLParser mSQLParser; protected SQLOptimizer mSQLOptimizer; @@ -95,7 +96,7 @@ return new UnknownRequestReply(); } - protected Reply processSelectRequest(SelectRequest selectRequest) throws ActionException { + public Reply processSelectRequest(SelectRequest selectRequest) throws ActionException { SelectRequest optimizedSelectRequest = mSQLOptimizer.optimizeSelectRequest(selectRequest); Select select = mSQLParser.createSelectAction(optimizedSelectRequest); @@ -103,7 +104,7 @@ return new ResultSetReply(select.getRowSet()); } - protected Reply processCreateTableRequest(CreateTableRequest createTableRequest) throws ActionException { + public Reply processCreateTableRequest(CreateTableRequest createTableRequest) throws ActionException { CreateTable ct = mSQLParser.createCreateTableAction(createTableRequest); ct.execute(); return new UpdateReply(ct.getRecordCount()); 1.3 +11 -1 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/services/DatabaseManager.java Index: DatabaseManager.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/services/DatabaseManager.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- DatabaseManager.java 2001/10/30 17:45:14 1.2 +++ DatabaseManager.java 2001/11/02 11:09:08 1.3 @@ -8,6 +8,11 @@ */ package org.apache.avalon.db.services; +import org.apache.avalon.db.transport.Reply; +import org.apache.avalon.db.transport.Request; +import org.apache.avalon.db.transport.SelectRequest; +import org.apache.avalon.db.transport.CreateTableRequest; +import org.apache.avalon.db.actions.ActionException; /** @@ -16,5 +21,10 @@ */ public interface DatabaseManager { - // Resulting block will depend on SQLParser & SQLOptimizer + // Resulting block will depend on SQLParser & SQLOptimizer + + Reply processRequest(Request request); + Reply processSelectRequest(SelectRequest selectRequest) throws ActionException; + Reply processCreateTableRequest(CreateTableRequest createTableRequest) throws ActionException; + } 1.3 +2 -2 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/transport/cmdstream/server/PlainCMDDatabaseManager.java Index: PlainCMDDatabaseManager.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/transport/cmdstream/server/PlainCMDDatabaseManager.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- PlainCMDDatabaseManager.java 2001/10/29 15:18:17 1.2 +++ PlainCMDDatabaseManager.java 2001/11/02 11:09:08 1.3 @@ -43,7 +43,7 @@ * @version 1.0 */ public class PlainCMDDatabaseManager extends AbstractDatabaseManager - implements Block, DatabaseManager, Contextualizable, Composable, Configurable, + implements Block, DatabaseManager, Contextualizable, Configurable, Initializable, ConnectionHandlerFactory { protected SocketManager mSocketManager; @@ -129,7 +129,7 @@ final ServerSocketFactory factory = mSocketManager.getServerSocketFactory("plain"); final ServerSocket serverSocket = factory.createServerSocket(mPort, 5, mBindTo); - mConnectionManager.connect("HypersonicSQLListener", serverSocket, this); + mConnectionManager.connect("AvalonDBListener", serverSocket, this); } /** 1.1 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/transport/soap/server/SoapDatabaseManager.java Index: SoapDatabaseManager.java =================================================================== /* * Copyright (C) The Apache Software Foundation. All rights reserved. * * This software is published under the terms of the Apache Software License * version 1.1, a copy of which has been included with this distribution in * the LICENSE file. */ package org.apache.avalon.db.transport.soap.server; import org.apache.avalon.framework.logger.AbstractLoggable; import org.apache.avalon.framework.context.Contextualizable; import org.apache.avalon.framework.context.Context; import org.apache.avalon.framework.component.Composable; import org.apache.avalon.framework.component.ComponentException; import org.apache.avalon.framework.component.ComponentManager; import org.apache.avalon.framework.configuration.Configurable; import org.apache.avalon.framework.configuration.Configuration; import org.apache.avalon.framework.configuration.ConfigurationException; import org.apache.avalon.framework.activity.Initializable; import org.apache.avalon.phoenix.Block; import org.apache.avalon.phoenix.BlockContext; import org.apache.avalon.db.services.DatabaseManager; import org.apache.avalon.db.server.AbstractDatabaseManager; import org.apache.avalon.cornerstone.services.connection.ConnectionHandlerFactory; import org.apache.avalon.cornerstone.services.connection.ConnectionManager; import org.apache.avalon.cornerstone.services.connection.ConnectionHandler; import org.apache.avalon.cornerstone.services.sockets.SocketManager; import org.apache.avalon.cornerstone.services.sockets.ServerSocketFactory; import org.apache.avalon.cornerstone.services.soapification.SOAPification; import org.apache.avalon.hsql.blocks.DBConnectionHandler; import java.net.InetAddress; import java.net.UnknownHostException; import java.net.ServerSocket; import java.io.File; /** * @author Paul Hammant <[EMAIL PROTECTED]> * @version 1.0 */ public class SoapDatabaseManager extends AbstractDatabaseManager implements Block, DatabaseManager, Contextualizable, Initializable { protected BlockContext mContext; protected SOAPification mSOAPification; /** * Method contextualize * * * @param context * */ public void contextualize(final Context context) { mContext = (BlockContext) context; } /** * Method compose * * * @param componentManager * * @throws ComponentException * */ public void compose(final ComponentManager componentManager) throws ComponentException { super.compose(componentManager); mSOAPification = (SOAPification) componentManager.lookup(SOAPification.ROLE); } /** * Method initialize * * * @throws Exception * */ public void initialize() throws Exception { mSOAPification.publish(this, "AvalonDB", DatabaseManager.class); } } 1.1 jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/transport/soap/server/SoapDatabaseManager.xinfo Index: SoapDatabaseManager.xinfo =================================================================== <?xml version="1.0"?> <blockinfo> <!-- section to describe block --> <block> <version>1.0</version> </block> <!-- services that are offered by this block --> <services> <service name="org.apache.avalon.db.services.DatabaseManager" version="1.0" /> </services> <dependencies> <dependency> <service name="org.apache.avalon.cornerstone.services.soapification.SOAPification" version="1.0"/> </dependency> <dependency> <service name="org.apache.avalon.db.services.SQLParser" version="1.0"/> </dependency> <dependency> <service name="org.apache.avalon.db.services.SQLOptimizer" version="1.0"/> </dependency> </dependencies> </blockinfo>
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>