sdo-api-java-1.1.1.orig/ 0000755 0000000 0000000 00000000000 11401534125 011606 5 ustar sdo-api-java-1.1.1.orig/src/ 0000755 0000000 0000000 00000000000 11401534125 012375 5 ustar sdo-api-java-1.1.1.orig/src/test/ 0000755 0000000 0000000 00000000000 11401534125 013354 5 ustar sdo-api-java-1.1.1.orig/src/test/resources/ 0000755 0000000 0000000 00000000000 11401534125 015366 5 ustar sdo-api-java-1.1.1.orig/src/test/resources/tccl1/ 0000755 0000000 0000000 00000000000 11401534125 016374 5 ustar sdo-api-java-1.1.1.orig/src/test/resources/tccl1/META-INF/ 0000755 0000000 0000000 00000000000 11401534125 017534 5 ustar sdo-api-java-1.1.1.orig/src/test/resources/tccl1/META-INF/services/ 0000755 0000000 0000000 00000000000 11401534125 021357 5 ustar sdo-api-java-1.1.1.orig/src/test/resources/tccl1/META-INF/services/commonj.sdo.impl.HelperProvider 0000644 0000000 0000000 00000000031 10467207774 027435 0 ustar test.TCCL1HelperProvider
sdo-api-java-1.1.1.orig/src/test/resources/default/ 0000755 0000000 0000000 00000000000 11401534125 017012 5 ustar sdo-api-java-1.1.1.orig/src/test/resources/default/META-INF/ 0000755 0000000 0000000 00000000000 11401534125 020152 5 ustar sdo-api-java-1.1.1.orig/src/test/resources/default/META-INF/services/ 0000755 0000000 0000000 00000000000 11401534125 021775 5 ustar ././@LongLink 0000000 0000000 0000000 00000000145 00000000000 011565 L ustar root root sdo-api-java-1.1.1.orig/src/test/resources/default/META-INF/services/commonj.sdo.impl.HelperProvider sdo-api-java-1.1.1.orig/src/test/resources/default/META-INF/services/commonj.sdo.impl.HelperProvider0000644 0000000 0000000 00000000106 10467207774 030056 0 ustar # test comment and blank line
test.DefaultHelperProvider # comment
sdo-api-java-1.1.1.orig/src/test/java/ 0000755 0000000 0000000 00000000000 11401534125 014275 5 ustar sdo-api-java-1.1.1.orig/src/test/java/commonj/ 0000755 0000000 0000000 00000000000 11401534125 015737 5 ustar sdo-api-java-1.1.1.orig/src/test/java/commonj/sdo/ 0000755 0000000 0000000 00000000000 11401534125 016524 5 ustar sdo-api-java-1.1.1.orig/src/test/java/commonj/sdo/impl/ 0000755 0000000 0000000 00000000000 11401534125 017465 5 ustar sdo-api-java-1.1.1.orig/src/test/java/commonj/sdo/impl/HelperProviderTestCase.java 0000644 0000000 0000000 00000007507 10754270147 024742 0 ustar /**
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you 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 commonj.sdo.impl;
import java.net.URL;
import java.net.URLClassLoader;
import junit.framework.TestCase;
import test.DefaultHelperProvider;
import test.TCCL1HelperProvider;
/**
* @version $Revision: 620740 $ $Date: 2008-02-12 10:09:43 +0000 (Tue, 12 Feb 2008) $
*/
public class HelperProviderTestCase extends TestCase {
private URL classes;
private URL testClasses;
private URL def;
private URL tccl1;
public void testInstanceIsNullWithNoImplementation() throws Exception {
assertNull(HelperProvider.INSTANCE);
}
public void testDefaultInstance() throws Exception {
ClassLoader cl = new URLClassLoader(new URL[]{classes, def, testClasses}, null);
Class providerClass = cl.loadClass(HelperProvider.class.getName());
Class implClass = cl.loadClass(DefaultHelperProvider.class.getName());
Object instance = providerClass.getField("INSTANCE").get(null);
assertNotNull(instance);
assertEquals(implClass, instance.getClass());
}
public void testLocateFromClassLoader() throws Exception {
ClassLoader cl = new URLClassLoader(new URL[]{classes, tccl1, testClasses}, null);
Class providerClass = cl.loadClass(HelperProvider.class.getName());
Object provider = providerClass.getMethod("getInstance", new Class[] {ClassLoader.class})
.invoke(null, new Object[] {cl});
assertNotNull(provider);
assertEquals(TCCL1HelperProvider.class.getName(), provider.getClass().getName());
}
public void testThreadContextInstance() throws Exception {
ClassLoader cl = new URLClassLoader(new URL[]{classes, tccl1, testClasses}, null);
ClassLoader tccl = Thread.currentThread().getContextClassLoader();
try {
Thread.currentThread().setContextClassLoader(cl);
Class providerClass = cl.loadClass(HelperProvider.class.getName());
Object provider = providerClass.getMethod("getInstance", new Class[0]).invoke(null, new Object[0]);
assertNotNull(provider);
assertEquals(TCCL1HelperProvider.class.getName(), provider.getClass().getName());
} finally {
Thread.currentThread().setContextClassLoader(tccl);
}
}
public void testSystemProperty() {
System.setProperty("commonj.sdo.impl.HelperProvider", "test.TCCL1HelperProvider");
try {
HelperProvider provider = HelperProvider.getInstance();
assertNotNull(provider);
assertEquals(TCCL1HelperProvider.class, provider.getClass());
} finally {
System.getProperties().remove("commonj.sdo.impl.HelperProvider");
}
}
protected void setUp() throws Exception {
super.setUp();
classes = new URL(HelperProvider.class.getResource("HelperProvider.class"), "../../..");
testClasses = new URL(HelperProviderTestCase.class.getResource("HelperProviderTestCase.class"), "../../..");
tccl1 = new URL(testClasses, "tccl1/");
def = new URL(testClasses, "default/");
}
}
sdo-api-java-1.1.1.orig/src/test/java/test/ 0000755 0000000 0000000 00000000000 11401534125 015254 5 ustar sdo-api-java-1.1.1.orig/src/test/java/test/TCCL1HelperProvider.java 0000644 0000000 0000000 00000004343 10505717210 021606 0 ustar /**
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you 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 test;
import commonj.sdo.impl.HelperProvider;
import commonj.sdo.impl.ExternalizableDelegator;
import commonj.sdo.helper.CopyHelper;
import commonj.sdo.helper.DataFactory;
import commonj.sdo.helper.DataHelper;
import commonj.sdo.helper.EqualityHelper;
import commonj.sdo.helper.TypeHelper;
import commonj.sdo.helper.XMLHelper;
import commonj.sdo.helper.XSDHelper;
/**
* @version $Revision: 449617 $ $Date: 2006-09-25 09:16:56 +0000 (Mon, 25 Sep 2006) $
*/
public class TCCL1HelperProvider extends HelperProvider {
public CopyHelper copyHelper() {
throw new UnsupportedOperationException();
}
public DataFactory dataFactory() {
throw new UnsupportedOperationException();
}
public DataHelper dataHelper() {
throw new UnsupportedOperationException();
}
public EqualityHelper equalityHelper() {
throw new UnsupportedOperationException();
}
public TypeHelper typeHelper() {
throw new UnsupportedOperationException();
}
public XMLHelper xmlHelper() {
throw new UnsupportedOperationException();
}
public XSDHelper xsdHelper() {
throw new UnsupportedOperationException();
}
public ExternalizableDelegator.Resolvable resolvable() {
throw new UnsupportedOperationException();
}
public ExternalizableDelegator.Resolvable resolvable(Object target) {
throw new UnsupportedOperationException();
}
}
sdo-api-java-1.1.1.orig/src/test/java/test/DefaultHelperProvider.java 0000644 0000000 0000000 00000004345 10505717210 022366 0 ustar /**
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you 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 test;
import commonj.sdo.impl.HelperProvider;
import commonj.sdo.impl.ExternalizableDelegator;
import commonj.sdo.helper.CopyHelper;
import commonj.sdo.helper.DataFactory;
import commonj.sdo.helper.DataHelper;
import commonj.sdo.helper.EqualityHelper;
import commonj.sdo.helper.TypeHelper;
import commonj.sdo.helper.XMLHelper;
import commonj.sdo.helper.XSDHelper;
/**
* @version $Revision: 449617 $ $Date: 2006-09-25 09:16:56 +0000 (Mon, 25 Sep 2006) $
*/
public class DefaultHelperProvider extends HelperProvider {
public CopyHelper copyHelper() {
throw new UnsupportedOperationException();
}
public DataFactory dataFactory() {
throw new UnsupportedOperationException();
}
public DataHelper dataHelper() {
throw new UnsupportedOperationException();
}
public EqualityHelper equalityHelper() {
throw new UnsupportedOperationException();
}
public TypeHelper typeHelper() {
throw new UnsupportedOperationException();
}
public XMLHelper xmlHelper() {
throw new UnsupportedOperationException();
}
public XSDHelper xsdHelper() {
throw new UnsupportedOperationException();
}
public ExternalizableDelegator.Resolvable resolvable() {
throw new UnsupportedOperationException();
}
public ExternalizableDelegator.Resolvable resolvable(Object target) {
throw new UnsupportedOperationException();
}
}
sdo-api-java-1.1.1.orig/src/main/ 0000755 0000000 0000000 00000000000 11401534125 013321 5 ustar sdo-api-java-1.1.1.orig/src/main/resources/ 0000755 0000000 0000000 00000000000 11401534125 015333 5 ustar sdo-api-java-1.1.1.orig/src/main/resources/META-INF/ 0000755 0000000 0000000 00000000000 11401534125 016473 5 ustar sdo-api-java-1.1.1.orig/src/main/resources/META-INF/DISCLAIMER 0000644 0000000 0000000 00000001042 10652126215 020033 0 ustar Apache Tuscany is an effort undergoing incubation at The Apache Software
Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is
required of all newly accepted projects until a further review indicates that
the infrastructure, communications, and decision making process have stabilized
in a manner consistent with other successful ASF projects. While incubation
status is not necessarily a reflection of the completeness or stability of the
code, it does indicate that the project has yet to be fully endorsed by the ASF. sdo-api-java-1.1.1.orig/src/main/resources/META-INF/README.txt 0000644 0000000 0000000 00000000675 11003074354 020202 0 ustar Apache Tuscany 1.1.1-incubating build (May 2008)
=========================================================
http://incubator.apache.org/tuscany/
Support
-------
Any problem with this release can be reported to the Tuscany mailing list
or in the JIRA issue tracker.
Mailing list subscription:
tuscany-dev-subscribe@ws.apache.org
Jira:
http://issues.apache.org/jira/browse/Tuscany
Thank you for using Tuscany!
The Tuscany Team.
sdo-api-java-1.1.1.orig/src/main/resources/META-INF/LICENSE 0000644 0000000 0000000 00000033522 10774175550 017524 0 ustar
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
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.
==================================================================================
License applicable to the files ....
commonj/sdo/ChangeSummary$Setting.class
commonj/sdo/ChangeSummary.class
commonj/sdo/DataGraph.class
commonj/sdo/DataObject.class
commonj/sdo/helper/CopyHelper.class
commonj/sdo/helper/DataFactory.class
commonj/sdo/helper/DataHelper.class
commonj/sdo/helper/EqualityHelper.class
commonj/sdo/helper/HelperContext.class
commonj/sdo/helper/TypeHelper.class
commonj/sdo/helper/XMLDocument.class
commonj/sdo/helper/XMLHelper.class
commonj/sdo/helper/XSDHelper.class
commonj/sdo/impl/ExternalizableDelegator$Resolvable.class
commonj/sdo/impl/ExternalizableDelegator.class
commonj/sdo/Property.class
commonj/sdo/Sequence.class
commonj/sdo/Type.class
xml/datagraph.xsd
xml/sdoJava.xml
xml/sdoJava.xsd
xml/sdoModel.xml
xml/sdoModel.xsd
xml/sdoXML.xml
xml/sdoXML.xsd
License for the Service Data Objects JavaDoc, Interface Definition files
and XSD files.
The Service Data Objects JavaDoc, Interface Definition files and XSD files
are being provided by the copyright holders under the following license.
By using and/or copying this work, you agree that you have read,
understood and will comply with the following terms and conditions:
Permission to copy, display, make derivative works of and distribute
the Service Data Objects JavaDoc, Interface Definition files and XSD files
(the "Artifacts") in any medium without fee or royalty is hereby granted,
provided that you include the following on ALL copies of the Artifacts,
or portions thereof, that you make:
1. A link or URL to the Artifacts at this location:
http://www.osoa.org/display/Main/Service+Data+Objects+Specifications
2. The full text of this copyright notice as shown in the Artifacts.
THE ARTIFACTS ARE PROVIDED "AS IS" AND THE AUTHORS MAKE NO
REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THE
ARTIFACTS AND THE IMPLEMENTATION OF THEIR CONTENTS,
INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT OR TITLE.
THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL,
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO ANY
USE OR DISTRIBUTION OF THE ARTIFACTS.
The name and trademarks of the Authors may NOT be used in any manner,
including advertising or publicity pertaining to the Service Data
Objects Specification or its contents without specific, written prior
permission. Title to copyright in the Service Data Objects
Specification will at all times remain with the Authors.
No other rights are granted by implication, estoppel or otherwise.
Revision level 1.11, last updated on 2007/12/21
============================================================================================================
sdo-api-java-1.1.1.orig/src/main/resources/META-INF/NOTICE 0000644 0000000 0000000 00000000451 10774175550 017416 0 ustar Apache Tuscany
Copyright (c) 2005 - 2008 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
This product also includes software developed by the Open Service Oriented Architecture organisation
(http://osoa.org).
sdo-api-java-1.1.1.orig/src/main/resources/xml/ 0000755 0000000 0000000 00000000000 11401534125 016133 5 ustar sdo-api-java-1.1.1.orig/src/main/resources/xml/sdoModel.xml 0000644 0000000 0000000 00000011027 10530341364 020427 0 ustar
true
if the Property is many-valued.
*/
boolean isMany();
/**
* Returns whether the Property is containment, i.e., whether it represents by-value composition.
* @return true
if the Property is containment.
*/
boolean isContainment();
/**
* Returns the containing type of this Property.
* @return the Property's containing type.
* @see Type#getProperties()
*/
Type getContainingType();
/**
* Returns the default value this Property will have in a {@link DataObject data object} where the Property hasn't been set.
* @return the default value.
*/
Object getDefault();
/**
* Returns true if values for this Property cannot be modified using the SDO APIs.
* When true, DataObject.set(Property property, Object value) throws an exception.
* Values may change due to other factors, such as services operating on DataObjects.
* @return true if values for this Property cannot be modified.
*/
boolean isReadOnly();
/**
* Returns the opposite Property if the Property is bi-directional or null otherwise.
* @return the opposite Property if the Property is bi-directional or null
*/
Property getOpposite();
/**
* Returns a list of alias names for this Property.
* @return a list of alias names for this Property.
*/
List /*String*/ getAliasNames();
/**
* Returns whether or not instances of this property can be set to null. The effect of calling set(null) on a non-nullable
* property is not specified by SDO.
* @return true if this property is nullable.
*/
boolean isNullable();
/**
* Returns whether or not this is an open content Property.
* @return true if this property is an open content Property.
*/
boolean isOpenContent();
/**
* Returns a read-only List of instance Properties available on this Property.
*
* This list includes, at a minimum, any open content properties (extensions) added to
* the object before {@link commonj.sdo.helper.TypeHelper#define(DataObject) defining
* the Property's Type}. Implementations may, but are not required to in the 2.1 version
* of SDO, provide additional instance properties.
* @return the List of instance Properties on this Property.
*/
List /*Property*/ getInstanceProperties();
/**
* Returns the value of the specified instance property of this Property.
* @param property one of the properties returned by {@link #getInstanceProperties()}.
* @return the value of the specified property.
* @see DataObject#get(Property)
*/
Object get(Property property);
}
sdo-api-java-1.1.1.orig/src/main/java/commonj/sdo/Type.java 0000644 0000000 0000000 00000012114 10530341364 020257 0 ustar /**
* true
if the object is an instance.
* @see Class#isInstance
*/
boolean isInstance(Object object);
/**
* Returns the List of the {@link Property Properties} of this type.
*
* The expression *
* type.getProperties().indexOf(property) ** yields the property's index relative to this type. * As such, these expressions are equivalent: *
* dataObject.{@link DataObject#get(int) get}(i) * dataObject.{@link DataObject#get(Property) get}((Property)dataObject.getType().getProperties().get(i)); ** * @return the Properties of the type. * @see Property#getContainingType */ List /*Property*/ getProperties(); /** * Returns from {@link #getProperties all the Properties} of this type, the one with the specified name. * As such, these expressions are equivalent: *
* dataObject.{@link DataObject#get(String) get}("name") * dataObject.{@link DataObject#get(Property) get}(dataObject.getType().getProperty("name")) ** * @return the Property with the specified name. * @see #getProperties */ Property getProperty(String propertyName); /** * Indicates if this Type specifies DataTypes (true) or DataObjects (false). * When false, any object that is an instance of this type * also implements the DataObject interface. * True for simple types such as Strings and numbers. * For any object: *
* isInstance(object) && !isDataType() implies * DataObject.class.isInstance(object) returns true. ** @return true if Type specifies DataTypes, false for DataObjects. */ boolean isDataType(); /** * Indicates if this Type allows any form of open content. If false, * dataObject.getInstanceProperties() must be the same as * dataObject.getType().getProperties() for any DataObject dataObject of this Type. * @return true if this Type allows open content. */ boolean isOpen(); /** * Indicates if this Type specifies Sequenced DataObjects. * Sequenced DataObjects are used when the order of values * between Properties must be preserved. * When true, a DataObject will return a Sequence. For example, *
* Sequence elements = dataObject.{@link DataObject#getSequence() getSequence}(); ** @return true if this Type specifies Sequenced DataObjects. */ boolean isSequenced(); /** * Indicates if this Type is abstract. If true, this Type cannot be * instantiated. Abstract types cannot be used in DataObject or * DataFactory create methods. * @return true if this Type is abstract. */ boolean isAbstract(); /** * Returns the List of base Types for this Type. The List is empty * if there are no base Types. XSD
* This list includes, at a minimum, any open content properties (extensions) added to
* the object before {@link commonj.sdo.helper.TypeHelper#define(DataObject) defining
* the Type's Type}. Implementations may, but are not required to in the 2.1 version
* of SDO, provide additional instance properties.
* @return the List of instance Properties on this Type.
*/
List /*Property*/ getInstanceProperties();
/**
* Returns the value of the specified instance property of this Type.
* @param property one of the properties returned by {@link #getInstanceProperties()}.
* @return the value of the specified property.
* @see DataObject#get(Property)
*/
Object get(Property property);
}
sdo-api-java-1.1.1.orig/src/main/java/commonj/sdo/helper/ 0000755 0000000 0000000 00000000000 11401534125 017750 5 ustar sdo-api-java-1.1.1.orig/src/main/java/commonj/sdo/helper/XMLHelper.java 0000644 0000000 0000000 00000020144 10530341364 022417 0 ustar /**
* Two DataObjects are equalShallow if
* they have the same {@link DataObject#getType Type}
* and all their compared Properties are equal.
* The set of Properties compared are the
* {@link DataObject#getInstanceProperties() instance properties}
* where property.getType().isDataType() is true
* and property.getType() is not ChangeSummaryType.
* Two DataObjects are equal(Deep) if they are equalShallow,
* all their compared Properties are equal, and all reachable DataObjects in their
* graphs excluding containers are equal.
* The set of Properties compared are the
* {@link DataObject#getInstanceProperties() instance properties}
* where property.getType().isDataType() is false,
* and is not a container property, ie !property.getOpposite().isContainment()
*
* A DataObject directly or indirectly referenced by dataObject1 or dataObject2
* can only be equal to exactly one DataObject directly or indirectly referenced
* by dataObject1 or dataObject2, respectively.
* This ensures that dataObject1 and dataObject2 are equal if the graph formed by
* all their referenced DataObjects have the same shape.
*
* Each data object holds its data as a series of {@link Property Properties}.
* Properties can be accessed by name, property index, or using the property meta object itself.
* A data object can also contain references to other data objects, through reference-type Properties.
*
* A data object has a series of convenience accessors for its Properties.
* These methods either use a path (String),
* a property index,
* or the {@link Property property's meta object} itself, to identify the property.
* Some examples of the path-based accessors are as follows:
* There are general accessors for Properties, i.e., {@link #get(Property) get} and {@link #set(Property, Object) set},
* as well as specific accessors for the primitive types and commonly used data types like
* String, Date, List, BigInteger, and BigDecimal.
*/
public interface DataObject extends Serializable
{
/**
* Returns the value of a property of either this object or an object reachable from it, as identified by the
* specified path.
* @param path the path to a valid object and property.
* @return the value of the specified property.
* @see #get(Property)
*/
Object get(String path);
/**
* Sets a property of either this object or an object reachable from it, as identified by the specified path,
* to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void set(String path, Object value);
/**
* Returns whether a property of either this object or an object reachable from it, as identified by the specified path,
* is considered to be set.
* @param path the path to a valid object and property.
* @see #isSet(Property)
*/
boolean isSet(String path);
/**
* Unsets a property of either this object or an object reachable from it, as identified by the specified path.
* @param path the path to a valid object and property.
* @see #unset(Property)
*/
void unset(String path);
/**
* Returns the value of a
* If the property is {@link Property#isMany many-valued},
* the result will be a {@link java.util.List}
* and each object in the List will be {@link Type#isInstance an instance of}
* the property's {@link Property#getType type}.
* Otherwise the result will directly be an instance of the property's type.
* @param property the property of the value to fetch.
* @return the value of the given property of the object.
* @see #set(Property, Object)
* @see #unset(Property)
* @see #isSet(Property)
*/
Object get(Property property);
/**
* Sets the value of the given property of the object to the new value.
*
* If the property is {@link Property#isMany many-valued},
* the new value must be a {@link java.util.List}
* and each object in that list must be {@link Type#isInstance an instance of}
* the property's {@link Property#getType type};
* the existing contents are cleared and the contents of the new value are added.
* Otherwise the new value directly must be an instance of the property's type
* and it becomes the new value of the property of the object.
* @param property the property of the value to set.
* @param value the new value for the property.
* @see #unset(Property)
* @see #isSet(Property)
* @see #get(Property)
*/
void set(Property property, Object value);
/**
* Returns whether the property of the object is considered to be set.
*
* isSet() for many-valued Properties returns true if the List is not empty and
* false if the List is empty. For single-valued Properties it returns true if the Property
* has been set() and not unset(), and false otherwise.
* Any call to set() without a call to unset() will cause isSet() to return true, regardless of
* the value being set. For example, after calling set(property, property.getDefault()) on a
* previously unset property, isSet(property) will return true, even though the value of
* get(property) will be unchanged.
* @param property the property in question.
* @return whether the property of the object is set.
* @see #set(Property, Object)
* @see #unset(Property)
* @see #get(Property)
*/
boolean isSet(Property property);
/**
* Unsets the property of the object.
*
* If the property is {@link Property#isMany many-valued},
* the value must be an {@link java.util.List}
* and that list is cleared.
* Otherwise,
* the value of the property of the object
* is set to the property's {@link Property#getDefault default value}.
* The property will no longer be considered {@link #isSet set}.
* @param property the property in question.
* @see #isSet(Property)
* @see #set(Property, Object)
* @see #get(Property)
*/
void unset(Property property);
/**
* Returns the value of the specified The new value must be a {@link java.util.List}
* and each object in that list must be {@link Type#isInstance an instance of}
* the property's {@link Property#getType type};
* the existing contents are cleared and the contents of the new value are added.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setList(Property property, List value);
/**
* Returns a new {@link DataObject data object} contained by this object using the specified property,
* which must be a {@link Property#isContainment containment property}.
* The type of the created object is the {@link Property#getType declared type} of the specified property.
* @param propertyName the name of the specified containment property.
* @return the created data object.
* @see #createDataObject(String, String, String)
*/
DataObject createDataObject(String propertyName);
/**
* Returns a new {@link DataObject data object} contained by this object using the specified property,
* which must be a {@link Property#isContainment containment property}.
* The type of the created object is the {@link Property#getType declared type} of the specified property.
* @param propertyIndex the index of the specified containment property.
* @return the created data object.
* @see #createDataObject(int, String, String)
*/
DataObject createDataObject(int propertyIndex);
/**
* Returns a new {@link DataObject data object} contained by this object using the specified property,
* which must be a {@link Property#isContainment containment property}.
* The type of the created object is the {@link Property#getType declared type} of the specified property.
* @param property the specified containment property.
* @return the created data object.
* @see #createDataObject(Property, Type)
*/
DataObject createDataObject(Property property);
/**
* Returns a new {@link DataObject data object} contained by this object using the specified property,
* which must be a {@link Property#isContainment containment property}.
* The type of the created object is specified by the packageURI and typeName arguments.
* The specified type must be a compatible target for the property identified by propertyName.
* @param propertyName the name of the specified containment property.
* @param namespaceURI the namespace URI of the package containing the type of object to be created.
* @param typeName the name of a type in the specified package.
* @return the created data object.
* @see #createDataObject(String)
* @see DataGraph#getType
*/
DataObject createDataObject(String propertyName, String namespaceURI, String typeName);
/**
* Returns a new {@link DataObject data object} contained by this object using the specified property,
* which must be a {@link Property#isContainment containment property}.
* The type of the created object is specified by the packageURI and typeName arguments.
* The specified type must be a compatible target for the property identified by propertyIndex.
* @param propertyIndex the index of the specified containment property.
* @param namespaceURI the namespace URI of the package containing the type of object to be created.
* @param typeName the name of a type in the specified package.
* @return the created data object.
* @see #createDataObject(int)
* @see DataGraph#getType
*/
DataObject createDataObject(int propertyIndex, String namespaceURI, String typeName);
/**
* Returns a new {@link DataObject data object} contained by this object using the specified property,
* which must be of {@link Property#isContainment containment type}.
* The type of the created object is specified by the type argument,
* which must be a compatible target for the speicifed property.
* @param property a containment property of this object.
* @param type the type of object to be created.
* @return the created data object.
* @see #createDataObject(int)
*/
DataObject createDataObject(Property property, Type type);
/**
* Remove this object from its container and then unset all its non-{@link Property#isReadOnly readOnly} Properties.
* If this object is contained by a {@link Property#isReadOnly readOnly} {@link Property#isContainment containment property}, its non-{@link Property#isReadOnly readOnly} Properties will be unset but the object will not be removed from its container.
* All DataObjects recursively contained by {@link Property#isContainment containment Properties} will also be deleted.
*/
void delete();
/**
* Returns the containing {@link DataObject data object}
* or
* The type defines the Properties available for reflective access.
* @return the type.
*/
Type getType();
/**
* Returns the
* The {@link #isCreated new} and {@link #isModified modified} objects in the List are references to objects
* associated with this ChangeSummary.
* The {@link #isDeleted deleted} objects in the List are references to objects
* at the time that event logging was enabled;
* Each changed object must have exactly one of the following methods return true:
* {@link #isCreated isCreated},
* {@link #isDeleted isDeleted}, or
* {@link #isModified isModified}.
* @return a list of changed data objects.
* @see #isCreated(DataObject)
* @see #isDeleted(DataObject)
* @see #isModified(DataObject)
*/
List /*DataObject*/ getChangedDataObjects();
/**
* Returns whether or not the specified data object was created while {@link #isLogging logging}.
* Any object that was added to the scope
* but was not in the scope when logging began,
* will be considered created.
* @param dataObject the data object in question.
* @return In the case of a {@link #isDeleted(DataObject) deleted} object,
* the List will include settings for all the Properties.
* An old value setting indicates the value at the
* point logging begins. A setting is only produced for
* {@link #isModified modified} objects if
* either the old value differs from the current value or
* if the isSet differs from the current value.
* No settings are produced for {@link #isCreated created} objects.
* @param dataObject the object in question.
* @return a list of settings.
* @see #getChangedDataObjects
*/
List /*ChangeSummary.Setting*/ getOldValues(DataObject dataObject);
/**
* Clears the List of {@link #getChangedDataObjects changes} and turns change logging on.
* No operation occurs if logging is already on.
* @see #endLogging
* @see #isLogging
*/
void beginLogging();
/**
* An implementation that requires logging may throw an UnsupportedOperationException.
* Turns change logging off. No operation occurs if logging is already off.
* @see #beginLogging
* @see #isLogging
*/
void endLogging();
/**
* Returns whether or not the specified data object was updated while {@link #isLogging logging}.
* An object that was contained in the scope when logging began
* and remains in the scope when logging ends will be considered potentially modified.
* An object considered modified must have at least one old value setting.
* @param dataObject the data object in question.
* @return Returns null if the property was not modified and
* has not been {@link #isDeleted(DataObject) deleted}.
* @param dataObject the object in question.
* @param property the property of the object.
* @return the Setting for the specified property.
* @see #getChangedDataObjects
*/
Setting getOldValue(DataObject dataObject, Property property);
/**
* Returns the value of the {@link DataObject#getContainer container} data object
* at the point when logging {@link #beginLogging() began}.
* @param dataObject the object in question.
* @return the old container data object.
*/
DataObject getOldContainer(DataObject dataObject);
/**
* Returns the value of the {@link DataObject#getContainmentProperty containment property} data object property
* at the point when logging {@link #beginLogging() began}.
* @param dataObject the object in question.
* @return the old containment property.
*/
Property getOldContainmentProperty(DataObject dataObject);
/**
* Returns the value of the {@link DataObject#getSequence sequence} for the data object
* at the point when logging {@link #beginLogging() began}.
* @param dataObject the object in question.
* @return the old containment property.
*/
Sequence getOldSequence(DataObject dataObject);
/**
* This method is intended for use by service implementations only.
* Undoes all changes in the log to restore the tree of
* DataObjects to its original state when logging began.
* isLogging() is unchanged. The log is cleared.
* @see #beginLogging
* @see #endLogging
* @see #isLogging
*/
void undoChanges();
}
sdo-api-java-1.1.1.orig/pom.xml 0000644 0000000 0000000 00000013572 11003074354 013134 0 ustar
Two of these Property values are equal if they are both not
* {@link DataObject#isSet(Property) set}, or set to an equal value
* dataObject1.get(property).equals(dataObject2.get(property))
*
If the type is a sequenced type, the sequence entries must be the same.
* For each entry x in the sequence where the property is used in the comparison,
* dataObject1.getSequence().getValue(x).equals(
* dataObject2.getSequence().getValue(x)) and
* dataObject1.getSequence().getProperty(x) ==
* dataObject2.getSequence().getProperty(x)
* must be true.
*
Two of these Property values are equal if they are both not
* {@link DataObject#isSet(Property) set}, or all the DataObjects
* they refer to are {@link #equal(DataObject, DataObject) equal} in the
* context of dataObject1 and dataObject2.
*
Note that properties to a containing DataObject are not compared
* which means two DataObject trees can be equal even if their containers are not equal.
*
If the type is a sequenced type, the sequence entries must be the same.
* For each entry x in the sequence where the property is used in the comparison,
* equal(dataObject1.getSequence().getValue(x),
* dataObject2.getSequence().getValue(x)) and
* dataObject1.getSequence().getProperty(x) ==
* dataObject2.getSequence().getProperty(x)
* must be true.
* null
for mixed text entries.
* @param index the index of the entry.
* @return the property or null
for the given entry index.
*/
Property getProperty(int index);
/**
* Returns the property value for the given entry index.
* @param index the index of the entry.
* @return the value for the given entry index.
*/
Object getValue(int index);
/**
* Sets the entry at a specified index to the new value.
* @param index the index of the entry.
* @param value the new value for the entry.
*/
Object setValue(int index, Object value);
/**
* Adds a new entry with the specified property name and value
* to the end of the entries.
* @param propertyName the name of the entry's property.
* @param value the value for the entry.
*/
boolean add(String propertyName, Object value);
/**
* Adds a new entry with the specified property index and value
* to the end of the entries.
* @param propertyIndex the index of the entry's property.
* @param value the value for the entry.
*/
boolean add(int propertyIndex, Object value);
/**
* Adds a new entry with the specified property and value
* to the end of the entries.
* @param property the property of the entry.
* @param value the value for the entry.
*/
boolean add(Property property, Object value);
/**
* Adds a new entry with the specified property name and value
* at the specified entry index.
* @param index the index at which to add the entry.
* @param propertyName the name of the entry's property.
* @param value the value for the entry.
*/
void add(int index, String propertyName, Object value);
/**
* Adds a new entry with the specified property index and value
* at the specified entry index.
* @param index the index at which to add the entry.
* @param propertyIndex the index of the entry's property.
* @param value the value for the entry.
*/
void add(int index, int propertyIndex, Object value);
/**
* Adds a new entry with the specified property and value
* at the specified entry index.
* @param index the index at which to add the entry.
* @param property the property of the entry.
* @param value the value for the entry.
*/
void add(int index, Property property, Object value);
/**
* Removes the entry at the given entry index.
* @param index the index of the entry.
*/
void remove(int index);
/**
* Moves the entry at fromIndex
to toIndex
.
* @param toIndex the index of the entry destination.
* @param fromIndex the index of the entry to move.
*/
void move(int toIndex, int fromIndex);
/**
* @deprecated replaced by {@link #addText(String)} in 2.1.0
*/
void add(String text);
/**
* @deprecated replaced by {@link #addText(int, String)} in 2.1.0
*/
void add(int index, String text);
/**
* Adds a new text entry to the end of the Sequence.
* @param text value of the entry.
*/
void addText(String text);
/**
* Adds a new text entry at the given index.
* @param index the index at which to add the entry.
* @param text value of the entry.
*/
void addText(int index, String text);
}
sdo-api-java-1.1.1.orig/src/main/java/commonj/sdo/DataGraph.java 0000644 0000000 0000000 00000004610 10530341364 021173 0 ustar /**
*
* DataObject company = ...;
* company.get("name"); is the same as company.get(company.getType().getProperty("name"))
* company.set("name", "acme");
* company.get("department.0/name") is the same as ((DataObject)((List)company.get("department")).get(0)).get("name")
* .n indexes from 0 ... implies the name property of the first department
* company.get("department[1]/name") [] indexes from 1 ... implies the name property of the first department
* company.get("department[number=123]") returns the first department where number=123
* company.get("..") returns the containing data object
* company.get("/") returns the root containing data object
*
* boolean
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the boolean
value of the specified property.
* @see #get(String)
*/
boolean getBoolean(String path);
/**
* Returns the value of a byte
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the byte
value of the specified property.
* @see #get(String)
*/
byte getByte(String path);
/**
* Returns the value of a char
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the char
value of the specified property.
* @see #get(String)
*/
char getChar(String path);
/**
* Returns the value of a double
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the double
value of the specified property.
* @see #get(String)
*/
double getDouble(String path);
/**
* Returns the value of a float
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the float
value of the specified property.
* @see #get(String)
*/
float getFloat(String path);
/**
* Returns the value of a int
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the int
value of the specified property.
* @see #get(String)
*/
int getInt(String path);
/**
* Returns the value of a long
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the long
value of the specified property.
* @see #get(String)
*/
long getLong(String path);
/**
* Returns the value of a short
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the short
value of the specified property.
* @see #get(String)
*/
short getShort(String path);
/**
* Returns the value of a byte[]
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the byte[]
value of the specified property.
* @see #get(String)
*/
byte[] getBytes(String path);
/**
* Returns the value of a BigDecimal
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the BigDecimal
value of the specified property.
* @see #get(String)
*/
BigDecimal getBigDecimal(String path);
/**
* Returns the value of a BigInteger
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the BigInteger
value of the specified property.
* @see #get(String)
*/
BigInteger getBigInteger(String path);
/**
* Returns the value of a DataObject
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the DataObject
value of the specified property.
* @see #get(String)
*/
DataObject getDataObject(String path);
/**
* Returns the value of a Date
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the Date
value of the specified property.
* @see #get(String)
*/
Date getDate(String path);
/**
* Returns the value of a String
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the String
value of the specified property.
* @see #get(String)
*/
String getString(String path);
/**
* Returns the value of a List
property identified by the specified path.
* @param path the path to a valid object and property.
* @return the List
value of the specified property.
* @see #get(String)
*/
List getList(String path);
/**
* @see #getSequence()
* Returns the value of a Sequence
property identified by the specified path.
* An implementation may throw an UnsupportedOperationException.
* @param path the path to a valid object and property.
* @return the Sequence
value of the specified property.
* @see #get(String)
* @deprecated in 2.1.0.
*/
Sequence getSequence(String path);
/**
* Sets the value of a boolean
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setBoolean(String path, boolean value);
/**
* Sets the value of a byte
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setByte(String path, byte value);
/**
* Sets the value of a char
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setChar(String path, char value);
/**
* Sets the value of a double
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setDouble(String path, double value);
/**
* Sets the value of a float
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setFloat(String path, float value);
/**
* Sets the value of a int
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setInt(String path, int value);
/**
* Sets the value of a long
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setLong(String path, long value);
/**
* Sets the value of a short
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setShort(String path, short value);
/**
* Sets the value of a byte[]
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setBytes(String path, byte[] value);
/**
* Sets the value of a BigDecimal
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setBigDecimal(String path, BigDecimal value);
/**
* Sets the value of a BigInteger
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setBigInteger(String path, BigInteger value);
/**
* Sets the value of a DataObject
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setDataObject(String path, DataObject value);
/**
* Sets the value of a Date
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setDate(String path, Date value);
/**
* Sets the value of a String
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
*/
void setString(String path, String value);
/**
* Sets the value of a List
property identified by the specified path, to the specified value.
* @param path the path to a valid object and property.
* @param value the new value for the property.
* @see #set(String, Object)
* @see #setList(Property, List)
*/
void setList(String path, List value);
/**
* Returns the value of the property at the specified index in {@link Type#getProperties property list}
* of this object's {@link Type type}.
* @param propertyIndex the index of the property.
* @return the value of the specified property.
* @see #get(Property)
*/
Object get(int propertyIndex);
/**
* Sets the property at the specified index in {@link Type#getProperties property list} of this object's
* {@link Type type}, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void set(int propertyIndex, Object value);
/**
* Returns whether the the property at the specified index in {@link Type#getProperties property list} of this object's
* {@link Type type}, is considered to be set.
* @param propertyIndex the index of the property.
* @return whether the specified property is set.
* @see #isSet(Property)
*/
boolean isSet(int propertyIndex);
/**
* Unsets the property at the specified index in {@link Type#getProperties property list} of this object's {@link Type type}.
* @param propertyIndex the index of the property.
* @see #unset(Property)
*/
void unset(int propertyIndex);
/**
* Returns the value of a boolean
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the boolean
value of the specified property.
* @see #get(int)
*/
boolean getBoolean(int propertyIndex);
/**
* Returns the value of a byte
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the byte
value of the specified property.
* @see #get(int)
*/
byte getByte(int propertyIndex);
/**
* Returns the value of a char
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the char
value of the specified property.
* @see #get(int)
*/
char getChar(int propertyIndex);
/**
* Returns the value of a double
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the double
value of the specified property.
* @see #get(int)
*/
double getDouble(int propertyIndex);
/**
* Returns the value of a float
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the float
value of the specified property.
* @see #get(int)
*/
float getFloat(int propertyIndex);
/**
* Returns the value of a int
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the int
value of the specified property.
* @see #get(int)
*/
int getInt(int propertyIndex);
/**
* Returns the value of a long
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the long
value of the specified property.
* @see #get(int)
*/
long getLong(int propertyIndex);
/**
* Returns the value of a short
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the short
value of the specified property.
* @see #get(int)
*/
short getShort(int propertyIndex);
/**
* Returns the value of a byte[]
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the byte[]
value of the specified property.
* @see #get(int)
*/
byte[] getBytes(int propertyIndex);
/**
* Returns the value of a BigDecimal
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the BigDecimal
value of the specified property.
* @see #get(int)
*/
BigDecimal getBigDecimal(int propertyIndex);
/**
* Returns the value of a BigInteger
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the BigInteger
value of the specified property.
* @see #get(int)
*/
BigInteger getBigInteger(int propertyIndex);
/**
* Returns the value of a DataObject
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the DataObject
value of the specified property.
* @see #get(int)
*/
DataObject getDataObject(int propertyIndex);
/**
* Returns the value of a Date
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the Date
value of the specified property.
* @see #get(int)
*/
Date getDate(int propertyIndex);
/**
* Returns the value of a String
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the String
value of the specified property.
* @see #get(int)
*/
String getString(int propertyIndex);
/**
* Returns the value of a List
property identified by the specified property index.
* @param propertyIndex the index of the property.
* @return the List
value of the specified property.
* @see #get(int)
*/
List getList(int propertyIndex);
/**
* @see #getSequence()
* Returns the value of a Sequence
property identified by the specified property index.
* An implementation may throw an UnsupportedOperationException.
* @param propertyIndex the index of the property.
* @return the Sequence
value of the specified property.
* @see #get(int)
* @deprecated in 2.1.0.
*/
Sequence getSequence(int propertyIndex);
/**
* Sets the value of a boolean
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setBoolean(int propertyIndex, boolean value);
/**
* Sets the value of a byte
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setByte(int propertyIndex, byte value);
/**
* Sets the value of a char
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setChar(int propertyIndex, char value);
/**
* Sets the value of a double
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setDouble(int propertyIndex, double value);
/**
* Sets the value of a float
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setFloat(int propertyIndex, float value);
/**
* Sets the value of a int
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setInt(int propertyIndex, int value);
/**
* Sets the value of a long
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setLong(int propertyIndex, long value);
/**
* Sets the value of a short
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setShort(int propertyIndex, short value);
/**
* Sets the value of a byte[]
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setBytes(int propertyIndex, byte[] value);
/**
* Sets the value of a BigDecimal
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setBigDecimal(int propertyIndex, BigDecimal value);
/**
* Sets the value of a BigInteger
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setBigInteger(int propertyIndex, BigInteger value);
/**
* Sets the value of a DataObject
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setDataObject(int propertyIndex, DataObject value);
/**
* Sets the value of a Date
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setDate(int propertyIndex, Date value);
/**
* Sets the value of a String
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
*/
void setString(int propertyIndex, String value);
/**
* Sets the value of a List
property identified by the specified property index, to the specified value.
* @param propertyIndex the index of the property.
* @param value the new value for the property.
* @see #set(int, Object)
* @see #setList(Property, List)
*/
void setList(int propertyIndex, List value);
/**
* Returns the value of the given property of this object.
* boolean
property.
* @param property the property to get.
* @return the boolean
value of the specified property.
* @see #get(Property)
*/
boolean getBoolean(Property property);
/**
* Returns the value of the specified byte
property.
* @param property the property to get.
* @return the byte
value of the specified property.
* @see #get(Property)
*/
byte getByte(Property property);
/**
* Returns the value of the specified char
property.
* @param property the property to get.
* @return the char
value of the specified property.
* @see #get(Property)
*/
char getChar(Property property);
/**
* Returns the value of the specified double
property.
* @param property the property to get.
* @return the double
value of the specified property.
* @see #get(Property)
*/
double getDouble(Property property);
/**
* Returns the value of the specified float
property.
* @param property the property to get.
* @return the float
value of the specified property.
* @see #get(Property)
*/
float getFloat(Property property);
/**
* Returns the value of the specified int
property.
* @param property the property to get.
* @return the int
value of the specified property.
* @see #get(Property)
*/
int getInt(Property property);
/**
* Returns the value of the specified long
property.
* @param property the property to get.
* @return the long
value of the specified property.
* @see #get(Property)
*/
long getLong(Property property);
/**
* Returns the value of the specified short
property.
* @param property the property to get.
* @return the short
value of the specified property.
* @see #get(Property)
*/
short getShort(Property property);
/**
* Returns the value of the specified byte[]
property.
* @param property the property to get.
* @return the byte[]
value of the specified property.
* @see #get(Property)
*/
byte[] getBytes(Property property);
/**
* Returns the value of the specified BigDecimal
property.
* @param property the property to get.
* @return the BigDecimal
value of the specified property.
* @see #get(Property)
*/
BigDecimal getBigDecimal(Property property);
/**
* Returns the value of the specified BigInteger
property.
* @param property the property to get.
* @return the BigInteger
value of the specified property.
* @see #get(Property)
*/
BigInteger getBigInteger(Property property);
/**
* Returns the value of the specified DataObject
property.
* @param property the property to get.
* @return the DataObject
value of the specified property.
* @see #get(Property)
*/
DataObject getDataObject(Property property);
/**
* Returns the value of the specified Date
property.
* @param property the property to get.
* @return the Date
value of the specified property.
* @see #get(Property)
*/
Date getDate(Property property);
/**
* Returns the value of the specified String
property.
* @param property the property to get.
* @return the String
value of the specified property.
* @see #get(Property)
*/
String getString(Property property);
/**
* Returns the value of the specified List
property.
* The List returned contains the current values.
* Updates through the List interface operate on the current values of the DataObject.
* Each access returns the same List object.
* @param property the property to get.
* @return the List
value of the specified property.
* @see #get(Property)
*/
List getList(Property property);
/**
* @see #getSequence()
* Returns the value of the specified Sequence
property.
* An implementation may throw an UnsupportedOperationException.
* @param property the property to get.
* @return the Sequence
value of the specified property.
* @see #get(Property)
* @deprecated in 2.1.0.
*/
Sequence getSequence(Property property);
/**
* Sets the value of the specified boolean
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setBoolean(Property property, boolean value);
/**
* Sets the value of the specified byte
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setByte(Property property, byte value);
/**
* Sets the value of the specified char
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setChar(Property property, char value);
/**
* Sets the value of the specified double
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setDouble(Property property, double value);
/**
* Sets the value of the specified float
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setFloat(Property property, float value);
/**
* Sets the value of the specified int
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setInt(Property property, int value);
/**
* Sets the value of the specified long
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setLong(Property property, long value);
/**
* Sets the value of the specified short
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setShort(Property property, short value);
/**
* Sets the value of the specified byte[]
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setBytes(Property property, byte[] value);
/**
* Sets the value of the specified BigDecimal
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setBigDecimal(Property property, BigDecimal value);
/**
* Sets the value of the specified BigInteger
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setBigInteger(Property property, BigInteger value);
/**
* Sets the value of the specified DataObject
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setDataObject(Property property, DataObject value);
/**
* Sets the value of the specified Date
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setDate(Property property, Date value);
/**
* Sets the value of the specified String
property, to the specified value.
* @param property the property to set.
* @param value the new value for the property.
* @see #set(Property, Object)
*/
void setString(Property property, String value);
/**
* Sets the value of the specified List
property, to the specified value.
* null
if there is no container.
* @return the containing data object or null
.
*/
DataObject getContainer();
/**
* Return the Property of the {@link DataObject data object} containing this data object
* or null
if there is no container.
* @return the property containing this data object.
*/
Property getContainmentProperty();
/**
* Returns the {@link DataGraph data graph} for this object or null
if there isn't one.
* @return the containing data graph or null
.
*/
DataGraph getDataGraph();
/**
* Returns the data object's type.
* Sequence
for this DataObject.
* When getType().isSequencedType() == true,
* the Sequence of a DataObject corresponds to the
* XML elements representing the values of its Properties.
* Updates through DataObject and the Lists or Sequences returned
* from DataObject operate on the same data.
* When getType().isSequencedType() == false, null is returned.
* @return the Sequence
or null.
*/
Sequence getSequence();
/**
* Returns a read-only List of the Properties currently used in this DataObject.
* This list will contain all of the Properties in getType().getProperties()
* and any Properties where isSet(property) is true.
* For example, Properties resulting from the use of
* open or mixed XML content are present if allowed by the Type.
* the List does not contain duplicates.
* The order of the Properties in the List begins with getType().getProperties()
* and the order of the remaining Properties is determined by the implementation.
* The same list will be returned unless the DataObject is updated so that
* the contents of the List change.
* @return the List of Properties currently used in this DataObject.
*/
List /* Property */ getInstanceProperties();
/**
* Returns the named Property from the current instance properties,
* or null if not found. The instance properties are getInstanceProperties().
* @param propertyName the name of the Property
* @return the named Property from the DataObject's current instance properties, or null.
*/
Property getInstanceProperty(String propertyName);
/**
* @deprecated replaced by {@link #getInstanceProperty(String)} in 2.1.0
*/
Property getProperty(String propertyName);
/**
* Returns the root {@link DataObject data object}.
* @return the root data object.
*/
DataObject getRootObject();
/**
* Returns the ChangeSummary with scope covering this dataObject, or null
* if there is no ChangeSummary.
* @return the ChangeSummary with scope covering this dataObject, or null.
*/
ChangeSummary getChangeSummary();
/**
* Removes this DataObject from its container, if any.
* Same as
* getContainer().getList(getContainmentProperty()).remove(this) or
* getContainer().unset(getContainmentProperty())
* depending on getContainmentProperty().isMany() respectively.
*/
void detach();
}
sdo-api-java-1.1.1.orig/src/main/java/commonj/sdo/impl/ 0000755 0000000 0000000 00000000000 11401534125 017432 5 ustar sdo-api-java-1.1.1.orig/src/main/java/commonj/sdo/impl/ExternalizableDelegator.java 0000644 0000000 0000000 00000005344 10530341364 025106 0 ustar /**
* true
) or off (false
).
* @return true
if change logging is on.
* @see #beginLogging
* @see #endLogging
*/
boolean isLogging();
/**
* Returns the {@link DataGraph data graph} associated with this change summary or null.
* @return the data graph.
* @see DataGraph#getChangeSummary
*/
DataGraph getDataGraph();
/**
* Returns a list consisting of all the {@link DataObject data objects} that have been changed while {@link #isLogging logging}.
* true
if the specified data object was created.
* @see #getChangedDataObjects
*/
boolean isCreated(DataObject dataObject);
/**
* Returns whether or not the specified data object was deleted while {@link #isLogging logging}.
* Any object that is not in scope but was in scope when logging began
* will be considered deleted.
* @param dataObject the data object in question.
* @return true
if the specified data object was deleted.
* @see #getChangedDataObjects
*/
boolean isDeleted(DataObject dataObject);
/**
* A setting encapsulates a {@link Property property} and a corresponding single value of the property's {@link Property#getType type}.
*/
public interface Setting
{
/**
* Returns the property of the setting.
* @return the setting property.
*/
Property getProperty();
/**
* Returns the value of the setting.
* @return the setting value.
*/
Object getValue();
/**
* Returns whether or not the property is set.
* @return true
if the property is set.
*/
boolean isSet();
}
/**
* Returns a list of {@link ChangeSummary.Setting settings}
* that represent the property values of the given dataObject
* at the point when logging {@link #beginLogging() began}.
* true
if the specified data object was modified.
* @see #getChangedDataObjects
*/
boolean isModified(DataObject dataObject);
/**
* Returns the ChangeSummary root DataObject - the object from which
* changes are tracked.
* When a DataGraph is used, this is the same as getDataGraph().getRootObject().
* @return the ChangeSummary root DataObject
*/
DataObject getRootObject();
/**
* Returns a {@link ChangeSummary.Setting setting} for the specified property
* representing the property value of the given dataObject
* at the point when logging {@link #beginLogging() began}.
*