Source Code Cross Referenced for VDC.java in  » Workflow-Engines » pegasus-2.1.0 » org » griphyn » vdl » dbschema » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Workflow Engines » pegasus 2.1.0 » org.griphyn.vdl.dbschema 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


001:        /*
002:         * This file or a portion of this file is licensed under the terms of
003:         * the Globus Toolkit Public License, found in file ../GTPL, or at
004:         * http://www.globus.org/toolkit/download/license.html. This notice must
005:         * appear in redistributions of this file, with or without modification.
006:         *
007:         * Redistributions of this Software, with or without modification, must
008:         * reproduce the GTPL in: (1) the Software, or (2) the Documentation or
009:         * some other similar material which is provided with the Software (if
010:         * any).
011:         *
012:         * Copyright 1999-2004 University of Chicago and The University of
013:         * Southern California. All rights reserved.
014:         */
015:        package org.griphyn.vdl.dbschema;
016:
017:        import java.sql.*;
018:        import org.griphyn.vdl.classes.Definition;
019:
020:        /**
021:         * This common schema interface defines the schemas in which the
022:         * abstraction layers access the VDC. This layer is independent of the
023:         * implementing database, and does so by going via the database driver
024:         * class API.
025:         *
026:         * @author Jens-S. Vöckler
027:         * @author Yong Zhao
028:         * @version $Revision: 50 $
029:         * @see org.griphyn.vdl.dbschema.DatabaseSchema 
030:         * @see org.griphyn.vdl.dbdriver 
031:         */
032:        public interface VDC extends Catalog {
033:            /**
034:             * Names the property key prefix employed for schemas dealing with the VDC.
035:             */
036:            public static final String PROPERTY_PREFIX = "vds.db.vdc.schema";
037:
038:            //
039:            // taken from (old) DBManager
040:            //
041:
042:            /**
043:             * Loads a single Definition from the backend database into an Java object.
044:             * This method does not allow wildcarding!
045:             *
046:             * @param namespace   namespace, null will be converted into empty string
047:             * @param name        name, null will be converted into empty string
048:             * @param version     version, null will be converted into empty string
049:             * @param type     type of the definition (TR or DV), must not be -1.
050:             * @return the Definition as specified, or null if not found.
051:             *
052:             * @see org.griphyn.vdl.classes.Definition#TRANSFORMATION
053:             * @see org.griphyn.vdl.classes.Definition#DERIVATION
054:             * @see #saveDefinition( Definition, boolean )
055:             * @see #containsDefinition( Definition )
056:             * @see #searchDefinition( String, String, String, int )
057:             */
058:            public abstract Definition loadDefinition(String namespace,
059:                    String name, String version, int type) throws SQLException;
060:
061:            /**
062:             * Saves a Definition, that is either a Transformation or Derivation, 
063:             * into the backend database. 
064:             *
065:             * @param definition is the new Definition to store.
066:             * @param overwrite true, if existing defitions will be overwritten by
067:             * new ones with the same primary (or secondary) key (-set), or false,
068:             * if a new definition will be rejected on key matches.
069:             *
070:             * @return true, if the backend database was changed, or
071:             *         false, if the definition was not accepted into the backend.
072:             *
073:             * @see org.griphyn.vdl.classes.Definition
074:             * @see org.griphyn.vdl.classes.Transformation
075:             * @see org.griphyn.vdl.classes.Derivation
076:             * @see #loadDefinition( String, String, String, int )
077:             * @see #deleteDefinition( String, String, String, int ) 
078:             */
079:            public abstract boolean saveDefinition(Definition definition,
080:                    boolean overwrite) throws SQLException;
081:
082:            //
083:            // higher level methods, allowing for wildcarding as stated.
084:            //
085:
086:            /**
087:             * Check with the backend database, if the given definition exists.
088:             *
089:             * @param definition  is a Definition object to search for
090:             * @return true, if the Definition exists, false if not found
091:             */
092:            public abstract boolean containsDefinition(Definition definition)
093:                    throws SQLException;
094:
095:            /**
096:             * Delete a specific Definition objects from the database. No wildcard
097:             * matching will be done. "Fake" definitions are permissable, meaning
098:             * it just has the secondary key triple.
099:             *
100:             * @param definition is the definition specification to delete
101:             * @return  true is something was deleted, false if non existent.
102:             *
103:             * @see org.griphyn.vdl.classes.Definition#TRANSFORMATION
104:             * @see org.griphyn.vdl.classes.Definition#DERIVATION 
105:             */
106:            public abstract boolean deleteDefinition(Definition definition)
107:                    throws SQLException;
108:
109:            /**
110:             * Delete one or more definitions from the backend database. The key
111:             * triple parameters may be wildcards. Wildcards are expressed as
112:             * <code>null</code> value.
113:             *
114:             * @param namespace   namespace
115:             * @param name        name
116:             * @param version     version
117:             * @param type        definition type (TR or DV)
118:             * @return            a list of definitions that were deleted.
119:             *
120:             * @see org.griphyn.vdl.classes.Definition#TRANSFORMATION
121:             * @see org.griphyn.vdl.classes.Definition#DERIVATION 
122:             */
123:            public abstract java.util.List deleteDefinition(String namespace,
124:                    String name, String version, int type) throws SQLException;
125:
126:            /**
127:             * Search the database for definitions by ns::name:version triple
128:             * and by type (either Transformation or Derivation). This version
129:             * of the search allows for jokers expressed as null value
130:             *
131:             * @param namespace   namespace, null to match any namespace
132:             * @param name        name, null to match any name
133:             * @param version     version, null to match any version
134:             * @param type        type of definition, see below, or -1 as wildcard
135:             * @return            a list of Definition items, which may be empty
136:             *
137:             * @see org.griphyn.vdl.classes.Definition#TRANSFORMATION
138:             * @see org.griphyn.vdl.classes.Definition#DERIVATION
139:             * @see #loadDefinition( String, String, String, int )
140:             */
141:            public abstract java.util.List searchDefinition(String namespace,
142:                    String name, String version, int type) throws SQLException;
143:
144:            /**
145:             * Searches the database for all derivations that contain a certain LFN.
146:             * The linkage is an additional constraint. This method does not allow
147:             * jokers.
148:             *
149:             * @param lfn    the LFN name
150:             * @param link   the linkage type of the LFN
151:             * @return       a list of Definition items that match the criterion.
152:             *
153:             * @see org.griphyn.vdl.classes.LFN#NONE
154:             * @see org.griphyn.vdl.classes.LFN#INPUT
155:             * @see org.griphyn.vdl.classes.LFN#OUTPUT
156:             * @see org.griphyn.vdl.classes.LFN#INOUT
157:             */
158:            public abstract java.util.List searchFilename(String lfn, int link)
159:                    throws SQLException;
160:
161:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.