summaryrefslogtreecommitdiff
path: root/odk/examples/DevelopersGuide/Database/RowSet.java
diff options
context:
space:
mode:
Diffstat (limited to 'odk/examples/DevelopersGuide/Database/RowSet.java')
-rw-r--r--odk/examples/DevelopersGuide/Database/RowSet.java241
1 files changed, 0 insertions, 241 deletions
diff --git a/odk/examples/DevelopersGuide/Database/RowSet.java b/odk/examples/DevelopersGuide/Database/RowSet.java
deleted file mode 100644
index 9907b165..00000000
--- a/odk/examples/DevelopersGuide/Database/RowSet.java
+++ /dev/null
@@ -1,241 +0,0 @@
-/*************************************************************************
- *
- * The Contents of this file are made available subject to the terms of
- * the BSD license.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Sun Microsystems, Inc. nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
- * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
- * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- *************************************************************************/
-
-import java.io.*;
-
-import com.sun.star.comp.helper.RegistryServiceFactory;
-import com.sun.star.comp.servicemanager.ServiceManager;
-import com.sun.star.lang.XMultiComponentFactory;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.lang.XComponent;
-import com.sun.star.bridge.XUnoUrlResolver;
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.XComponentContext;
-import com.sun.star.beans.XPropertySet;
-import com.sun.star.container.XNameAccess;
-import com.sun.star.sdbc.*;
-import com.sun.star.sdbcx.Privilege;
-import com.sun.star.sdb.CommandType;
-import com.sun.star.sdb.XRowSetApproveBroadcaster;
-
-public class RowSet
-{
- private static XComponentContext xContext = null;
- private static XMultiComponentFactory xMCF = null;
- public static void main(String argv[]) throws java.lang.Exception
- {
- try {
- // get the remote office component context
- xContext = com.sun.star.comp.helper.Bootstrap.bootstrap();
- System.out.println("Connected to a running office ...");
- xMCF = xContext.getServiceManager();
- }
- catch( Exception e) {
- System.err.println("ERROR: can't get a component context from a running office ...");
- e.printStackTrace(System.out);
- System.exit(1);
- }
-
- try{
- showRowSetEvents();
- showRowSetRowCount();
- showRowSetPrivileges();
- useRowSet();
- }
- catch(com.sun.star.uno.Exception e)
- {
- System.err.println(e);
- e.printStackTrace();
- }
- System.exit(0);
- }
-
- public static void printDataSources() throws com.sun.star.uno.Exception
- {
- // create a DatabaseContext and print all DataSource names
- XNameAccess xNameAccess = (XNameAccess)UnoRuntime.queryInterface(
- XNameAccess.class,
- xMCF.createInstanceWithContext("com.sun.star.sdb.DatabaseContext",
- xContext));
- String aNames [] = xNameAccess.getElementNames();
- for(int i=0;i<aNames.length;++i)
- System.out.println(aNames[i]);
- }
-
- public static void useRowSet() throws com.sun.star.uno.Exception
- {
- // first we create our RowSet object
- XRowSet xRowRes = (XRowSet)UnoRuntime.queryInterface(
- XRowSet.class,
- xMCF.createInstanceWithContext("com.sun.star.sdb.RowSet", xContext));
-
- System.out.println("RowSet created!");
- // set the properties needed to connect to a database
- XPropertySet xProp = (XPropertySet)UnoRuntime.queryInterface(XPropertySet.class,xRowRes);
- xProp.setPropertyValue("DataSourceName","Bibliography");
- xProp.setPropertyValue("Command","biblio");
- xProp.setPropertyValue("CommandType",new Integer(com.sun.star.sdb.CommandType.TABLE));
-
- xRowRes.execute();
- System.out.println("RowSet executed!");
-
-
- XComponent xComp = (XComponent)UnoRuntime.queryInterface(XComponent.class,xRowRes);
- xComp.dispose();
- System.out.println("RowSet destroyed!");
- }
-
- public static void showRowSetPrivileges() throws com.sun.star.uno.Exception
- {
- // first we create our RowSet object
- XRowSet xRowRes = (XRowSet)UnoRuntime.queryInterface(
- XRowSet.class,
- xMCF.createInstanceWithContext("com.sun.star.sdb.RowSet", xContext));
-
- System.out.println("RowSet created!");
- // set the properties needed to connect to a database
- XPropertySet xProp = (XPropertySet)UnoRuntime.queryInterface(XPropertySet.class,xRowRes);
- xProp.setPropertyValue("DataSourceName","Bibliography");
- xProp.setPropertyValue("Command","biblio");
- xProp.setPropertyValue("CommandType",new Integer(com.sun.star.sdb.CommandType.TABLE));
-
- xRowRes.execute();
- System.out.println("RowSet executed!");
-
- Integer aPriv = (Integer)xProp.getPropertyValue("Privileges");
- int nPriv = aPriv.intValue();
- if( (nPriv & Privilege.SELECT) == Privilege.SELECT)
- System.out.println("SELECT");
- if( (nPriv & Privilege.INSERT) == Privilege.INSERT)
- System.out.println("INSERT");
- if( (nPriv & Privilege.UPDATE) == Privilege.UPDATE)
- System.out.println("UPDATE");
- if( (nPriv & Privilege.DELETE) == Privilege.DELETE)
- System.out.println("DELETE");
-
- // now destroy the RowSet
- XComponent xComp = (XComponent)UnoRuntime.queryInterface(XComponent.class,xRowRes);
- xComp.dispose();
- System.out.println("RowSet destroyed!");
- }
-
- public static void showRowSetRowCount() throws com.sun.star.uno.Exception
- {
- // first we create our RowSet object
- XRowSet xRowRes = (XRowSet)UnoRuntime.queryInterface(
- XRowSet.class,
- xMCF.createInstanceWithContext("com.sun.star.sdb.RowSet", xContext));
-
- System.out.println("RowSet created!");
- // set the properties needed to connect to a database
- XPropertySet xProp = (XPropertySet)UnoRuntime.queryInterface(XPropertySet.class,xRowRes);
- xProp.setPropertyValue("DataSourceName","Bibliography");
- xProp.setPropertyValue("Command","biblio");
- xProp.setPropertyValue("CommandType",new Integer(com.sun.star.sdb.CommandType.TABLE));
-
- xRowRes.execute();
- System.out.println("RowSet executed!");
-
- // now look if the RowCount is already final
- System.out.println("The RowCount is final: " + xProp.getPropertyValue("IsRowCountFinal"));
-
- XResultSet xRes = (XResultSet)UnoRuntime.queryInterface(XResultSet.class,xRowRes);
- xRes.last();
-
- System.out.println("The RowCount is final: " + xProp.getPropertyValue("IsRowCountFinal"));
- System.out.println("There are " + xProp.getPropertyValue("RowCount") + " rows!");
-
- // now destroy the RowSet
- XComponent xComp = (XComponent)UnoRuntime.queryInterface(XComponent.class,xRowRes);
- xComp.dispose();
- System.out.println("RowSet destroyed!");
- }
-
- public static void showRowSetEvents() throws com.sun.star.uno.Exception
- {
- // first we create our RowSet object
- XRowSet xRowRes = (XRowSet)UnoRuntime.queryInterface(
- XRowSet.class,
- xMCF.createInstanceWithContext("com.sun.star.sdb.RowSet", xContext));
-
- System.out.println("RowSet created!");
- // add our Listener
- System.out.println("Append our Listener!");
- RowSetEventListener pRow = new RowSetEventListener();
- XRowSetApproveBroadcaster xApBroad = (XRowSetApproveBroadcaster)UnoRuntime.queryInterface(XRowSetApproveBroadcaster.class,xRowRes);
- xApBroad.addRowSetApproveListener(pRow);
- xRowRes.addRowSetListener(pRow);
-
- // set the properties needed to connect to a database
- XPropertySet xProp = (XPropertySet)UnoRuntime.queryInterface(XPropertySet.class,xRowRes);
- xProp.setPropertyValue("DataSourceName","Bibliography");
- xProp.setPropertyValue("Command","biblio");
- xProp.setPropertyValue("CommandType",new Integer(com.sun.star.sdb.CommandType.TABLE));
-
- xRowRes.execute();
- System.out.println("RowSet executed!");
-
- // do some movements to check if we got all notifications
- XResultSet xRes = (XResultSet)UnoRuntime.queryInterface(XResultSet.class,xRowRes);
- System.out.println("beforeFirst");
- xRes.beforeFirst();
- // this should lead to no notifications because
- // we should stand before the first row at the beginning
- System.out.println("We stand before the first row: " + xRes.isBeforeFirst());
-
- System.out.println("next");
- xRes.next();
- System.out.println("next");
- xRes.next();
- System.out.println("last");
- xRes.last();
- System.out.println("next");
- xRes.next();
- System.out.println("We stand after the last row: " + xRes.isAfterLast());
- System.out.println("first");
- xRes.first();
- System.out.println("previous");
- xRes.previous();
- System.out.println("We stand before the first row: " + xRes.isBeforeFirst());
- System.out.println("afterLast");
- xRes.afterLast();
- System.out.println("We stand after the last row: " + xRes.isAfterLast());
-
- // now destroy the RowSet
- XComponent xComp = (XComponent)UnoRuntime.queryInterface(XComponent.class,xRowRes);
- xComp.dispose();
- System.out.println("RowSet destroyed!");
- }
-}
-