Return-Path: Delivered-To: apmail-openjpa-commits-archive@www.apache.org Received: (qmail 9679 invoked from network); 15 Feb 2008 09:24:50 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 15 Feb 2008 09:24:50 -0000 Received: (qmail 26637 invoked by uid 500); 15 Feb 2008 09:24:44 -0000 Delivered-To: apmail-openjpa-commits-archive@openjpa.apache.org Received: (qmail 26619 invoked by uid 500); 15 Feb 2008 09:24:44 -0000 Mailing-List: contact commits-help@openjpa.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openjpa.apache.org Delivered-To: mailing list commits@openjpa.apache.org Received: (qmail 26610 invoked by uid 99); 15 Feb 2008 09:24:44 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Feb 2008 01:24:44 -0800 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Feb 2008 09:23:58 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 306EC1A987C; Fri, 15 Feb 2008 01:23:32 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r627979 [33/39] - in /openjpa/trunk: openjpa-lib/src/test/java/org/apache/openjpa/lib/test/ openjpa-persistence-jdbc/ openjpa-persistence-jdbc/src/test/java/ openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/ openjpa-per... Date: Fri, 15 Feb 2008 09:20:40 -0000 To: commits@openjpa.apache.org From: pcl@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080215092332.306EC1A987C@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/BlobTest.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/BlobTest.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/BlobTest.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/BlobTest.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,55 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.OneToOne; + +@Entity +public class BlobTest { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private int id; + + @Column(name = "blobtab") + @OneToOne(cascade = { CascadeType.PERSIST, CascadeType.REMOVE }) + private Object blob; + + public BlobTest() { + } + + public void setBlob(Object blob) { + this.blob = blob; + } + + public byte[] getBlob() { + return (byte[]) this.blob; + } + + public int getId() { + return this.id; + } +} + Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ByteArray.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ByteArray.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ByteArray.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ByteArray.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,70 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "bytearray") +public class ByteArray { + + @Id + private int ids; + + @Column(length = 50) + private String string; + + public byte[] bytes; + + public ByteArray() { + } + + public ByteArray(String str, int id) { + string = str; + this.ids = id; + } + + public String getString() { + return string; + } + + public void setString(String s) { + string = s; + } + + public byte[] getBytes() { + return bytes; + } + + public void setBytes(byte[] bs) { + bytes = bs; + } + + public int getIds() { + return ids; + } + + public void setIds(int ids) { + this.ids = ids; + } +} + Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/CalendarFields.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/CalendarFields.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/CalendarFields.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/CalendarFields.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,111 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.util.Arrays; +import java.util.Calendar; +import java.util.List; +import java.util.TimeZone; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "CAL_FLDS") +public class CalendarFields { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private int id; + + private Calendar unassigned; + private Calendar gmt = Calendar.getInstance(TimeZone.getTimeZone("GMT")); + private Calendar pacific = + Calendar.getInstance(TimeZone.getTimeZone("US/Pacific")); + private Calendar newYork = + Calendar.getInstance(TimeZone.getTimeZone("America/New_York")); + private Calendar berlin = + Calendar.getInstance(TimeZone.getTimeZone("Europe/Berlin")); + private Calendar singapore = + Calendar.getInstance(TimeZone.getTimeZone("Asia/Singapore")); + + public CalendarFields() { + } + + public void setGmt(Calendar gmt) { + this.gmt = gmt; + } + + public Calendar getGmt() { + return this.gmt; + } + + public void setPacific(Calendar pacific) { + this.pacific = pacific; + } + + public Calendar getPacific() { + return this.pacific; + } + + public void setNewYork(Calendar newYork) { + this.newYork = newYork; + } + + public Calendar getNewYork() { + return this.newYork; + } + + public void setBerlin(Calendar berlin) { + this.berlin = berlin; + } + + public Calendar getBerlin() { + return this.berlin; + } + + public void setSingapore(Calendar singapore) { + this.singapore = singapore; + } + + public Calendar getSingapore() { + return this.singapore; + } + + public void setUnassigned(Calendar unassigned) { + this.unassigned = unassigned; + } + + public Calendar getUnassigned() { + return this.unassigned; + } + + public List getCalendars() { + return Arrays.asList(new Calendar[]{ + unassigned, gmt, pacific, newYork, berlin, singapore + }); + } + + public int getId() { + return id; + } +} + Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ColumnIOPC.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ColumnIOPC.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ColumnIOPC.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ColumnIOPC.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,104 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.OneToOne; +import javax.persistence.Table; + +@Entity +@Table(name = "columnpc") +public class ColumnIOPC { + + @Column(length = 40) + private String name; + + @Column(name = "ignsert") + private int ignoreInsert; + + @Column(name = "ignpdate") + private int ignoreUpdate; + + private int ident; + + @Id + private int id; + + @OneToOne(cascade = { CascadeType.PERSIST, CascadeType.REMOVE }) + private ColumnIOPC rel; + + public ColumnIOPC() { + + } + + public ColumnIOPC(int id) { + this.id = id; + } + + public String getName() { + return this.name; + } + + public void setName(String name) { + this.name = name; + } + + public int getIgnoreInsert() { + return this.ignoreInsert; + } + + public void setIgnoreInsert(int ignoreInsert) { + this.ignoreInsert = ignoreInsert; + } + + public int getIgnoreUpdate() { + return this.ignoreUpdate; + } + + public void setIgnoreUpdate(int ignoreUpdate) { + this.ignoreUpdate = ignoreUpdate; + } + + public int getIdent() { + return this.ident; + } + + public void setIdent(int ident) { + this.ident = ident; + } + + public ColumnIOPC getRel() { + return this.rel; + } + + public void setRel(ColumnIOPC rel) { + this.rel = rel; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ComplexEmbeddedPC.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ComplexEmbeddedPC.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ComplexEmbeddedPC.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ComplexEmbeddedPC.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,70 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Basic; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.OneToOne; + +/** + *

Embedded type used in testing.

+ * + * @author Abe White + */ +@Entity +//@DiscriminatorValue("cep") +public class ComplexEmbeddedPC //extends RecursivelyEmbeddedPC +{ + + @Basic + @Column(name = "cembedstring") + private String stringField; + + @OneToOne + private EmbeddedOwnerPC ownerField; + + private Set stringSet = new HashSet(); + + public String getStringField() { + return this.stringField; + } + + public void setStringField(String stringField) { + this.stringField = stringField; + } + + public EmbeddedOwnerPC getOwnerField() { + return this.ownerField; + } + + public void setOwnerField(EmbeddedOwnerPC ownerField) { + this.ownerField = ownerField; + } + + public Set getStringSet() { + return this.stringSet; + } + + public void setStringSet(Set stringSet) { + this.stringSet = stringSet; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ConcreteMappedAppIdSub.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ConcreteMappedAppIdSub.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ConcreteMappedAppIdSub.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ConcreteMappedAppIdSub.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,36 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Entity; + +@Entity +public class ConcreteMappedAppIdSub + extends AbstractMappedAppIdSuper { + + private String name; + + public String getName() { + return this.name; + } + + public void setName(String name) { + this.name = name; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DateVersion.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DateVersion.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DateVersion.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DateVersion.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,60 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "dversion") +public class DateVersion { + + @Column(length = 35) + private String string; + + @Id + private int id; + + public DateVersion(String s, int id) { + string = s; + this.id = id; + } + + public void setString(String s) { + string = s; + } + + public String getString() { + return string; + } + + public String toString() { + return string; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DependentFieldsPC.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DependentFieldsPC.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DependentFieldsPC.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DependentFieldsPC.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,155 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.ManyToMany; +import javax.persistence.ManyToOne; +import javax.persistence.OneToMany; +import javax.persistence.Table; + +import org.apache.openjpa.persistence.jdbc.KeyColumn; +import org.apache.openjpa.persistence.Dependent; +import org.apache.openjpa.persistence.ElementDependent; +import org.apache.openjpa.persistence.PersistentMap; +import org.apache.openjpa.persistence.jdbc.ElementJoinColumn; +import org.apache.openjpa.persistence.jdbc.ForeignKey; +import org.apache.openjpa.persistence.jdbc.KeyColumn; + +/** + *

Persistent type used in testing dependent field deletion through + * {@link TestDependentFields}.

+ * + * @author Abe White + */ +@Entity +@Table(name = "DEPFIELDPC") +public class DependentFieldsPC { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Column(name = "ID") + private long pk; + + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST) + private DependentFieldsPC relation = null; + + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST) + //@ForeignKey(deleteAction=ForeignKeyAction.RESTRICT) + @ForeignKey + private DependentFieldsPC owner = null; + + @ManyToMany(cascade = CascadeType.PERSIST) + private List list = new ArrayList(); + + @PersistentMap(elementCascade = CascadeType.PERSIST) + @KeyColumn(name = "depfpc") + private Map map = new HashMap(); + + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST) + @Dependent + private DependentFieldsPC dependentRelation = null; + + @ManyToMany(cascade = CascadeType.PERSIST) + @ElementDependent + private List dependentList = new ArrayList(); + + @OneToMany(mappedBy = "owner", cascade = CascadeType.PERSIST) + @ElementDependent + private List dependentMappedList = new ArrayList(); + + @OneToMany(cascade = CascadeType.PERSIST) + @ElementDependent + @ElementJoinColumn(name = "DEP_INV_KEY", referencedColumnName = "ID") + private List dependentInverseKeyList = new ArrayList(); + + @PersistentMap(elementCascade = CascadeType.PERSIST) + @ElementDependent + @KeyColumn(name = "depmap") + private Map dependentMap = new HashMap(); + + public DependentFieldsPC() { + } + + public long getPK() { + return this.pk; + } + + public void setPK(long pk) { + this.pk = pk; + } + + public DependentFieldsPC getRelation() { + return this.relation; + } + + public void setRelation(DependentFieldsPC relation) { + this.relation = relation; + } + + public DependentFieldsPC getOwner() { + return this.owner; + } + + public void setOwner(DependentFieldsPC owner) { + this.owner = owner; + } + + public List getList() { + return this.list; + } + + public Map getMap() { + return this.map; + } + + public DependentFieldsPC getDependentRelation() { + return this.dependentRelation; + } + + public void setDependentRelation(DependentFieldsPC relation) { + this.dependentRelation = relation; + } + + public List getDependentList() { + return this.dependentList; + } + + public List getDependentMappedList() { + return this.dependentMappedList; + } + + public List getDependentInverseKeyList() { + return this.dependentInverseKeyList; + } + + public Map getDependentMap() { + return this.dependentMap; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DetachSMPC.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DetachSMPC.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DetachSMPC.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/DetachSMPC.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,61 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.TreeMap; +import javax.persistence.Entity; + +import org.apache.openjpa.persistence.jdbc.KeyColumn; +import org.apache.openjpa.persistence.PersistentCollection; + +@Entity +public class DetachSMPC + implements Serializable { + + private int intField; + + @PersistentCollection + private Set relSet = new HashSet(); + @KeyColumn(name = "strngkey") + private Map stringIntMap = new TreeMap(); + + public void setIntField(int intField) { + this.intField = intField; + } + + public int getIntField() { + return this.intField; + } + + public Set getRelSet() { + return this.relSet; + } + + public void setStringIntMap(Map stringIntMap) { + this.stringIntMap = stringIntMap; + } + + public Map getStringIntMap() { + return this.stringIntMap; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedOwnerPC.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedOwnerPC.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedOwnerPC.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedOwnerPC.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,125 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import javax.persistence.Basic; +import javax.persistence.Embedded; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +import org.apache.openjpa.persistence.jdbc.EmbeddedMapping; + +/** + *

Persistent type used in testing embedded instances.

+ * + * @author Abe White + */ +@Entity +@Table(name = "embownpc") +@IdClass(EmbeddedOwnerPC.EmbKey.class) +public class EmbeddedOwnerPC { + + @Id + private int id1; + @Id + private int id2; + @Basic + private String stringField; + + @Embedded + @EmbeddedMapping(nullIndicatorAttributeName = "stringField") + private EmbeddedPC embedded; + + @Embedded + private ComplexEmbeddedPC complexEmbedded; + + protected EmbeddedOwnerPC() { + } + + public EmbeddedOwnerPC(int id1, int id2) { + this.id1 = id1; + this.id2 = id2; + } + + public int getId1() { + return id1; + } + + public int getId2() { + return id2; + } + + public EmbeddedPC getEmbedded() { + return this.embedded; + } + + public void setEmbedded(EmbeddedPC embedded) { + this.embedded = embedded; + } + + public String getStringField() { + return this.stringField; + } + + public void setStringField(String stringField) { + this.stringField = stringField; + } + + public ComplexEmbeddedPC getComplexEmbedded() { + return this.complexEmbedded; + } + + public void setComplexEmbedded(ComplexEmbeddedPC complexEmbedded) { + this.complexEmbedded = complexEmbedded; + } + + public static class EmbKey implements Serializable { + + public int id1; + public int id2; + + public EmbKey() { + } + + public EmbKey(String str) { + int index = str.indexOf(":"); + if (index != -1) { + id1 = Integer.parseInt(str.substring(0, index)); + id2 = Integer.parseInt(str.substring(index + 1)); + } + } + + @Override + public boolean equals(Object other) { + if (!(other instanceof EmbKey)) + return false; + + EmbKey touse = (EmbKey) other; + return touse.id1 == id1 && touse.id2 == id2; + } + + @Override + public int hashCode() { + return (id1 + id2 + "").hashCode(); + } + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedPC.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedPC.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedPC.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/EmbeddedPC.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,66 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Table; + +/** + *

Embedded type used in testing.

+ * + * @author Abe White + */ +@Entity +@Table(name = "embpc") +public class EmbeddedPC { + + @Column(name = "embedint") + private int intField; + + @Column(name = "embedint1") + private int intField1; + + @Column(name = "embedstring") + private String stringField; + + public int getIntField() { + return this.intField; + } + + public void setIntField(int intField) { + this.intField = intField; + } + + public int getIntField1() { + return this.intField1; + } + + public void setIntField1(int intField1) { + this.intField1 = intField1; + } + + public String getStringField() { + return this.stringField; + } + + public void setStringField(String stringField) { + this.stringField = stringField; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity1.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity1.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity1.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity1.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,101 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import javax.persistence.Basic; +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.EntityResult; +import javax.persistence.Id; +import javax.persistence.Inheritance; +import javax.persistence.InheritanceType; +import javax.persistence.OneToOne; +import javax.persistence.SqlResultSetMapping; +import javax.persistence.Table; +import javax.persistence.Version; + +@Entity +@Table(name = "entity_1") +@Inheritance(strategy = InheritanceType.JOINED) +@SqlResultSetMapping(name = "NativeTestResult", entities = @EntityResult( + entityClass = org.apache.openjpa.persistence.kernel.common.apps.Entity1.class)) +public class Entity1 implements Serializable { + + private static final long serialVersionUID = 2882935803066041165L; + + @Id + protected long pk; + + @Basic + @Column(length = 35) + protected String stringField; + + @Basic + protected int intField; + + @OneToOne(cascade = { CascadeType.REMOVE, CascadeType.PERSIST }) + protected Entity2 entity2Field; + + @Version + protected int versionField; + + public Entity1() { + } + + public Entity1(long pk, String stringField, int intField) { + this.pk = pk; + this.stringField = stringField; + this.intField = intField; + } + + public long getPk() { + return pk; + } + + public void setStringField(String val) { + stringField = val; + } + + public String getStringField() { + return stringField; + } + + public void setIntField(int val) { + intField = val; + } + + public int getIntField() { + return intField; + } + + public void setEntity2Field(Entity2 val) { + entity2Field = val; + } + + public Entity2 getEntity2Field() { + return entity2Field; + } + + public String toString() { + return ("PK: " + pk + " StringField: " + stringField + " IntField: " + + intField); + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity2.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity2.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity2.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Entity2.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,81 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import javax.persistence.Basic; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Inheritance; +import javax.persistence.InheritanceType; + +@Entity(name = "entity2ExplicitName") +@Inheritance(strategy = InheritanceType.SINGLE_TABLE) +public class Entity2 implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 4723739219953167343L; + + @Id + protected long pk; + + @Basic + @Column(length = 35) + protected String stringField; + + @Basic + protected int intField; + + public Entity2() { + } + + public Entity2(long pk, String stringField, int intField) { + this.pk = pk; + this.stringField = stringField; + this.intField = intField; + } + + public long getPk() { + return pk; + } + + public void setStringField(String val) { + stringField = val; + } + + public String getStringField() { + return stringField; + } + + public void setIntField(int val) { + intField = val; + } + + public int getIntField() { + return intField; + } + + public String toString() { + return ("PK: " + pk + " StringField: " + stringField + " IntField: " + + intField); + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ExternalValues.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ExternalValues.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ExternalValues.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/ExternalValues.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,129 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "extnlval") +public class ExternalValues { + + private boolean booleanToShort; + private byte byteToDouble; + private int intToFloat; + private long longToChar; + private short shortToString; + private float floatToBoolean; + private double doubleToByte; + private char charToInt; + @Column(length = 50) + private String stringToLong; + @Id + private int id; + + public ExternalValues() { + } + + public ExternalValues(int id) { + this.id = id; + } + + public boolean getBooleanToShort() { + return booleanToShort; + } + + public void setBooleanToShort(boolean b) { + booleanToShort = b; + } + + public byte getByteToDouble() { + return byteToDouble; + } + + public void setByteToDouble(byte b) { + byteToDouble = b; + } + + public int getIntToFloat() { + return intToFloat; + } + + public void setIntToFloat(int i) { + intToFloat = i; + } + + public long getLongToChar() { + return longToChar; + } + + public void setLongToChar(long l) { + longToChar = l; + } + + public short getShortToString() { + return shortToString; + } + + public void setShortToString(short s) { + shortToString = s; + } + + public double getDoubleToByte() { + return doubleToByte; + } + + public void setDoubleToByte(double d) { + doubleToByte = d; + } + + public float getFloatToBoolean() { + return floatToBoolean; + } + + public void setFloatToBoolean(float f) { + floatToBoolean = f; + } + + public char getCharToInt() { + return charToInt; + } + + public void setCharToInt(char c) { + charToInt = c; + } + + public String getStringToLong() { + return stringToLong; + } + + public void setStringToLong(String s) { + stringToLong = s; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObject.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObject.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObject.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObject.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,157 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.math.BigInteger; +import java.util.Date; +import javax.persistence.Basic; +import javax.persistence.CascadeType; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.OneToOne; +import javax.persistence.Table; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; + +import org.apache.openjpa.persistence.FetchAttribute; +import org.apache.openjpa.persistence.FetchGroup; +import org.apache.openjpa.persistence.FetchGroups; +import org.apache.openjpa.persistence.LoadFetchGroup; + +@Entity +@Table(name = "FETCH_GRP_TOBJ") +@FetchGroups({ +@FetchGroup(name = "g1", attributes = { +@FetchAttribute(name = "b"), +@FetchAttribute(name = "c"), +@FetchAttribute(name = "d") + }), +@FetchGroup(name = "g2", attributes = { +@FetchAttribute(name = "e"), +@FetchAttribute(name = "f"), +@FetchAttribute(name = "g") + }) + }) +public class FetchGroupTestObject { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private int id; + + private int a; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g1") + private String b; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g1") + private BigInteger c; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g1") + @Temporal(TemporalType.DATE) + private Date d; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g2") + private String e; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g2") + private String f; + + @OneToOne(cascade = { CascadeType.PERSIST }, fetch = FetchType.LAZY) + @LoadFetchGroup("g2") + private FetchGroupTestObject g; + + @OneToOne(cascade = { CascadeType.PERSIST }) + private FetchGroupTestObject h; + + public int getId() { + return this.id; + } + + public void setA(int val) { + a = val; + } + + public int getA() { + return a; + } + + public void setB(String val) { + b = val; + } + + public String getB() { + return b; + } + + public void setC(BigInteger val) { + c = val; + } + + public BigInteger getC() { + return c; + } + + public void setD(Date val) { + d = val; + } + + public Date getD() { + return d; + } + + public void setE(String val) { + e = val; + } + + public String getE() { + return e; + } + + public void setF(String val) { + f = val; + } + + public String getF() { + return f; + } + + public void setG(FetchGroupTestObject val) { + g = val; + } + + public FetchGroupTestObject getG() { + return g; + } + + public void setH(FetchGroupTestObject val) { + h = val; + } + + public FetchGroupTestObject getH() { + return h; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObjectChild.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObjectChild.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObjectChild.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/FetchGroupTestObjectChild.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,91 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Basic; +import javax.persistence.DiscriminatorValue; +import javax.persistence.Entity; +import javax.persistence.FetchType; + +import org.apache.openjpa.persistence.FetchAttribute; +import org.apache.openjpa.persistence.FetchGroup; +import org.apache.openjpa.persistence.FetchGroups; +import org.apache.openjpa.persistence.LoadFetchGroup; + +@Entity +@DiscriminatorValue("FETCH_GRP_TOBJCHILD") +@FetchGroups({ +@FetchGroup(name = "g1", attributes = { +@FetchAttribute(name = "childB") + }), +@FetchGroup(name = "g2", attributes = { +@FetchAttribute(name = "childC") + }), +@FetchGroup(name = "g3", attributes = { +@FetchAttribute(name = "childD") + }) + }) +public class FetchGroupTestObjectChild extends FetchGroupTestObject { + + private int childA; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g1") + private int childB; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g2") + private int childC; + + @Basic(fetch = FetchType.LAZY) + @LoadFetchGroup("g3") + private int childD; + + public void setChildA(int val) { + childA = val; + } + + public int getChildA() { + return childA; + } + + public void setChildB(int val) { + childB = val; + } + + public int getChildB() { + return childB; + } + + public void setChildC(int val) { + childC = val; + } + + public int getChildC() { + return childC; + } + + public void setChildD(int val) { + childD = val; + } + + public int getChildD() { + return childD; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Inner.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Inner.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Inner.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Inner.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,62 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Basic; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "nullvalue") +public class Inner { + + @Basic + private Integer none = null; + @Basic(optional = false) + private Integer exception = null; + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private int Id; + + public Inner() { + } + + public int getId() { + return Id; + } + + public Integer getNone() { + return none; + } + + public Integer getException() { + return exception; + } + + public void setNone(Integer val) { + none = val; + } + + public void setException(Integer val) { + exception = val; + } +} \ No newline at end of file Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InstanceCallbacksTest.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InstanceCallbacksTest.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InstanceCallbacksTest.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InstanceCallbacksTest.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,186 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Basic; +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.OneToOne; +import javax.persistence.PostLoad; +import javax.persistence.PrePersist; +import javax.persistence.PreRemove; +import javax.persistence.PreUpdate; +import javax.persistence.Table; + +import org.apache.openjpa.persistence.OpenJPAEntityManager; +import org.apache.openjpa.persistence.OpenJPAPersistence; + +/** + * Used in testing; should be enhanced. + */ +@Entity +@Table(name = "icbt") +public class InstanceCallbacksTest { + + public static long preDeleteInvocations = 0; + public static long postLoadInvocations = 0; + public static long preStoreInvocations = 0; + public static long preClearInvocations = 0; + + public transient boolean postLoadCalled = false; + public transient boolean preStoreCalled = false; + public transient boolean preDeleteCalled = false; + public transient boolean preClearCalled = false; + + public transient int preDeleteCycle = -1; + public transient boolean flushInPreStore = false; + + // this string should never be null in jdoPostLoad + @Column(length = 35) + private String nonNullString = null; + + @Column(length = 35) + private String stringField = null; + @Basic + private int intField = 0; + @Basic + private int nonDFGField = 0; + + @OneToOne(cascade = CascadeType.PERSIST) + private RuntimeTest1 oneOne = null; + + @OneToOne(cascade = CascadeType.PERSIST) + private InstanceCallbacksTest rel; + private transient Object relId; + + public InstanceCallbacksTest() { + } + + public InstanceCallbacksTest(String stringField, int intField) { + this.stringField = stringField; + this.intField = intField; + } + + public void setNonNullString(String val) { + nonNullString = val; + } + + public String getStringField() { + return this.stringField; + } + + public void setStringField(String stringField) { + this.stringField = stringField; + } + + public int getIntField() { + return this.intField; + } + + public void setIntField(int intField) { + this.intField = intField; + } + + public int getNonDFGField() { + return this.nonDFGField; + } + + public void setNonDFGField(int nonDFGField) { + this.nonDFGField = nonDFGField; + } + + public RuntimeTest1 getOneOne() { + return this.oneOne; + } + + public void setOneOne(RuntimeTest1 oneOne) { + this.oneOne = oneOne; + } + + @PostLoad + public void jdoPostLoad() { + postLoadInvocations++; + + postLoadCalled = true; + if (nonNullString == null) + throw new IllegalStateException(); + } + + public void jdoPreClear() { + preClearInvocations++; + + preClearCalled = true; + } + + @PrePersist + @PreUpdate + public void jdoPreStore() { + preStoreInvocations++; + + preStoreCalled = true; + + // ensure that whenever this object is persisted, + // nonNullString is, in fact, not null. + if (nonNullString == null) + nonNullString = "** this string is not null **"; + + // assign new value to relation; should get persisted + if ("bar".equals(stringField)) + oneOne = new RuntimeTest1("jdoPreStore", + (int) (Math.random() * Integer.MAX_VALUE)); + OpenJPAEntityManager em = OpenJPAPersistence.getEntityManager(this); + if (em != null) { + if (relId != null) { + InstanceCallbacksTest rel = em.find(InstanceCallbacksTest.class, + relId); + rel.setRel(this); + rel.setIntField(8888); + } + if (flushInPreStore) + em.flush(); + } + } + + @PreRemove + public void jdoPreDelete() { + preDeleteInvocations++; + preDeleteCalled = true; + if (preDeleteCycle >= 0 && preDeleteCycle < 5) { + preDeleteCycle++; + OpenJPAPersistence.getEntityManager(this).remove(this); + } + } + + public InstanceCallbacksTest getRel() { + return this.rel; + } + + public void setRel(InstanceCallbacksTest rel) { + this.rel = rel; + } + + public Object getRelId() { + return this.relId; + } + + public void setRelId(Object relId) { + this.relId = relId; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceHolder.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceHolder.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceHolder.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceHolder.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,85 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Basic; +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.Id; +import javax.persistence.OneToOne; +import javax.persistence.Table; + +@Entity +@Table(name = "holder") +public class InterfaceHolder implements Serializable { + + private Set intfs = new HashSet(); + + @Basic + @Column(length = 35) + private String stringField; + + @OneToOne(fetch = FetchType.LAZY, + cascade = { CascadeType.PERSIST, CascadeType.REMOVE }) + private InterfaceTest intf; + + @Id + private int id; + + public InterfaceHolder() { + } + + public InterfaceHolder(int id) { + this.id = id; + } + + public void setIntf(InterfaceTest intf) { + this.intf = intf; + } + + public InterfaceTest getIntf() { + return this.intf; + } + + public void setIntfs(Set intfs) { + this.intfs = intfs; + } + + public Set getIntfs() { + return this.intfs; + } + + public void setId(int id) { + this.id = id; + } + + public int getId() { + return this.id; + } + + public String toString() { + return "intfs: " + intfs + ", StringField: " + stringField + + ", Intf: " + intf + "."; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,32 @@ +/* + * 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.persistence.kernel.common.apps; + +/** + *

Interface used in testing

+ * + * @author Abe White + */ + +public interface InterfaceTest { + + public String getStringField(); + + public void setStringField(String str); +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest2.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest2.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest2.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTest2.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,32 @@ +/* + * 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.persistence.kernel.common.apps; + +/** + *

Interface used in testing

+ * + * @author Abe White + */ +public interface InterfaceTest2 + extends InterfaceTest { + + public int getIntField(); + + public void setIntField(int i); +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl1.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl1.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl1.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl1.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,52 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import javax.persistence.Entity; +import javax.persistence.Table; + +/** + *

Persistent type used in testing

+ * + * @author Abe White + */ + +@SuppressWarnings("serial") +@Entity +@Table(name = "impl_1") +public class InterfaceTestImpl1 implements InterfaceTest, Serializable { + + private String stringField; + + protected InterfaceTestImpl1() { + } + + public InterfaceTestImpl1(String str) { + this.stringField = str; + } + + public String getStringField() { + return this.stringField; + } + + public void setStringField(String str) { + this.stringField = str; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl2.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl2.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl2.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl2.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,50 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import javax.persistence.Entity; +import javax.persistence.Table; + +/** + *

Persistent type used in testing

+ * + * @author Abe White + */ +@Entity +@Table(name = "impl_2") +public class InterfaceTestImpl2 implements InterfaceTest, Serializable { + + private String stringField; + + protected InterfaceTestImpl2() { + } + + public InterfaceTestImpl2(String str) { + this.stringField = str; + } + + public String getStringField() { + return this.stringField; + } + + public void setStringField(String str) { + this.stringField = str; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl3.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl3.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl3.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl3.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,49 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Entity; + +/** + *

Persistent type used in testing

+ * + * @author Abe White + */ +@Entity +public class InterfaceTestImpl3 + extends InterfaceTestImpl2 + implements InterfaceTest2 { + + private int intField; + + protected InterfaceTestImpl3() { + } + + public InterfaceTestImpl3(String str) { + super(str); + } + + public int getIntField() { + return this.intField; + } + + public void setIntField(int i) { + this.intField = i; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl4.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl4.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl4.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InterfaceTestImpl4.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,58 @@ +/* + * 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.persistence.kernel.common.apps; + +import javax.persistence.Entity; + +/** + *

Persistent type used in testing

+ * + * @author Abe White + */ + +@Entity +public class InterfaceTestImpl4 + implements InterfaceTest2 { + + private String stringField; + private int intField; + + protected InterfaceTestImpl4() { + } + + public InterfaceTestImpl4(String str) { + this.stringField = str; + } + + public String getStringField() { + return this.stringField; + } + + public void setStringField(String str) { + this.stringField = str; + } + + public int getIntField() { + return this.intField; + } + + public void setIntField(int i) { + this.intField = i; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseA.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseA.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseA.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseA.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,118 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "inverseA") +public class InverseA { + + @Column(length = 35) + private String stringField; + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private int intField; + @Column(name = "oneone") + private InverseA oneOne; + @Column(name = "oneowner") + private InverseA oneOneOwner; + @Column(name = "onemany") + private InverseA oneMany; + private Set manyOne = new HashSet(); + private Set manyMany = new HashSet(); + private Set manyManyOwner = new HashSet(); + private Set nullSet = null; + private InverseA nullOwner; + + public String getStringField() { + return stringField; + } + + public void setStringField(String s) { + stringField = s; + } + + public int getIntField() { + return intField; + } + + public void setIntField(int i) { + intField = i; + } + + public InverseA getOneOne() { + return oneOne; + } + + public void setOneOne(InverseA a) { + oneOne = a; + } + + public InverseA getOneOneOwner() { + return oneOneOwner; + } + + public void setOneOneOwner(InverseA a) { + oneOneOwner = a; + } + + public InverseA getOneMany() { + return oneMany; + } + + public void setOneMany(InverseA a) { + oneMany = a; + } + + public Set getManyOne() { + return manyOne; + } + + public Set getManyMany() { + return manyMany; + } + + public Set getManyManyOwner() { + return manyManyOwner; + } + + public Set getNullSet() { + return nullSet; + } + + public void setNullSet(Set s) { + nullSet = s; + } + + public InverseA getNullOwner() { + return nullOwner; + } + + public void setNullOwner(InverseA a) { + nullOwner = a; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseB.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseB.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseB.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/InverseB.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,53 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Entity; +import javax.persistence.Table; + +@Entity +@Table(name = "inverseB") +public class InverseB { + + private String stringField; + private InverseB oneOne; + private Set manyMany = new HashSet(); + + public String getStringField() { + return stringField; + } + + public void setStringField(String s) { + stringField = s; + } + + public InverseB getOneOne() { + return oneOne; + } + + public void setOneOne(InverseB a) { + oneOne = a; + } + + public Set getManyMany() { + return manyMany; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Lobs.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Lobs.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Lobs.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/Lobs.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,77 @@ +/** + * + */ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import javax.persistence.Basic; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.Id; +import javax.persistence.Lob; +import javax.persistence.Table; + +/** + * @author aokeke + */ +@Entity +@Table(name = "lobs") +public class Lobs implements Serializable { + + private static final long serialVersionUID = 1L; + + @Lob + @Basic(fetch = FetchType.EAGER) + @Column(name = "report") + protected String lob = null; + + @Id + public int id; + + public Lobs() { + } + + public Lobs(int key) { + id = key; + } + + public Lobs(String report, int key) { + this.lob = report; + this.id = key; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getLob() { + return lob; + } + + public void setLob(String lob) { + this.lob = lob; + } +} Added: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/LockGroupPC.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/LockGroupPC.java?rev=627979&view=auto ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/LockGroupPC.java (added) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/kernel/common/apps/LockGroupPC.java Fri Feb 15 01:19:55 2008 @@ -0,0 +1,102 @@ +/* + * 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.persistence.kernel.common.apps; + +import java.io.Serializable; +import javax.persistence.Column; +import javax.persistence.Entity; + +@Entity +public class LockGroupPC + implements Serializable { + + @Column(name = "DEF_LockGSF") + private String defaultLockGroupStringField; + @Column(name = "EXDEF_LockGIF") + private int explicitDefaultLockGroupIntField; + + @Column(name = "LockGIF") + private int lockGroup0IntField; + @Column(name = "LockGSF") + private String lockGroup0StringField; + + @Column(name = "LockGRF") + private transient RuntimeTest1 lockGroup1RelationField; + @Column(name = "LGF") + private int lockGroup1IntField; + + @Column(name = "UNLS") + private String unlockedStringField; + + public void setDefaultLockGroupStringField(String val) { + defaultLockGroupStringField = val; + } + + public String getDefaultLockGroupStringField() { + return defaultLockGroupStringField; + } + + public void setExplicitDefaultLockGroupIntField(int val) { + explicitDefaultLockGroupIntField = val; + } + + public int getExplicitDefaultLockGroupIntField() { + return explicitDefaultLockGroupIntField; + } + + public void setLockGroup0IntField(int val) { + lockGroup0IntField = val; + } + + public int getLockGroup0IntField() { + return lockGroup0IntField; + } + + public void setLockGroup0StringField(String val) { + lockGroup0StringField = val; + } + + public String getLockGroup0StringField() { + return lockGroup0StringField; + } + + public void setLockGroup1RelationField(RuntimeTest1 val) { + lockGroup1RelationField = val; + } + + public RuntimeTest1 getLockGroup1RelationField() { + return lockGroup1RelationField; + } + + public void setLockGroup1IntField(int val) { + lockGroup1IntField = val; + } + + public int getLockGroup1IntField() { + return lockGroup1IntField; + } + + public void setUnlockedStringField(String val) { + unlockedStringField = val; + } + + public String getUnlockedStringField() { + return unlockedStringField; + } +} \ No newline at end of file