diff --git a/openjpa-xmlmapping-5/pom.xml b/openjpa-xmlmapping-5/pom.xml deleted file mode 100644 index 339f6ee01..000000000 --- a/openjpa-xmlmapping-5/pom.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - 4.0.0 - org.apache.openjpa - openjpa-xmlmapping-5 - jar - OpenJPA Xmlmapping 1.5 - OpenJPA Xmlmapping 1.5 - http://incubator.apache.org/projects/openjpa - - org.apache.openjpa - openjpa-parent - 1.0.0-SNAPSHOT - - - - org.apache.openjpa - openjpa-kernel - ${pom.version} - - - org.apache.openjpa - openjpa-jdbc - ${pom.version} - - - javax.xml.bind - jaxb-api - 2.1 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.5 - 1.5 - - - - - \ No newline at end of file diff --git a/openjpa-xmlmapping-5/src/main/java/org/apache/openjpa/xmlmapping/XmlValueHandler.java b/openjpa-xmlmapping-5/src/main/java/org/apache/openjpa/xmlmapping/XmlValueHandler.java deleted file mode 100644 index 79b6c4497..000000000 --- a/openjpa-xmlmapping-5/src/main/java/org/apache/openjpa/xmlmapping/XmlValueHandler.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * 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 org.apache.openjpa.xmlmapping; - -import java.io.StringReader; -import java.io.StringWriter; -import java.io.Writer; - -import javax.xml.bind.JAXBContext; -import javax.xml.bind.JAXBException; -import javax.xml.bind.Marshaller; -import javax.xml.bind.Unmarshaller; -import javax.xml.transform.stream.StreamSource; - -import org.apache.openjpa.jdbc.kernel.JDBCStore; -import org.apache.openjpa.jdbc.meta.ValueMapping; -import org.apache.openjpa.jdbc.meta.strats.AbstractValueHandler; -import org.apache.openjpa.jdbc.schema.Column; -import org.apache.openjpa.jdbc.schema.ColumnIO; -import org.apache.openjpa.meta.JavaTypes; -import org.apache.openjpa.util.InternalException; - -/** - * Base class for xml value handlers. - * - * @author Catalina Wei - * @since 1.0 - */ -public class XmlValueHandler - extends AbstractValueHandler { - private static final String PROXY_SUFFIX = "$proxy"; - - public Column[] map(ValueMapping vm, String name, ColumnIO io, - boolean adapt) { - Column col = new Column(); - col.setName(name); - col.setJavaType(JavaTypes.STRING); - col.setSize(-1); - col.setTypeName(vm.getMappingRepository().getDBDictionary() - .xmlTypeName); - return new Column[]{ col }; - } - - public Object toDataStoreValue(ValueMapping vm, Object val, - JDBCStore store) { - // check for null value. - if (val == null) - return null; - try { - JAXBContext jc = JAXBContext.newInstance( - // on update val is a proxy, that can not be marshalled. - // so we get original type if val is a proxy. - (val.getClass().getName().endsWith(PROXY_SUFFIX)) - ? val.getClass().getSuperclass() - : val.getClass()); - Marshaller m = jc.createMarshaller(); - Writer result = new StringWriter(); - m.marshal( val, result ); - return result.toString(); - } - catch(JAXBException je) { - throw new InternalException(je); - } - } - - public Object toObjectValue(ValueMapping vm, Object val) { - // check for null value. - if (val == null) - return null; - try { - String packageName = vm.getDeclaredType().getPackage().getName(); - JAXBContext jc = JAXBContext.newInstance(packageName); - Unmarshaller u = jc.createUnmarshaller(); - return u.unmarshal(new StreamSource(new StringReader - (val.toString()))); - } - catch(JAXBException je) { - throw new InternalException(je); - } - } -}