You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2007/01/03 18:26:10 UTC

svn commit: r492227 - in /incubator/cayenne/main/trunk/integration-test: ./ jpa-chapter3/ jpa-chapter3/.settings/ jpa-chapter3/src/ jpa-chapter3/src/main/ jpa-chapter3/src/main/java/ jpa-chapter3/src/main/java/org/ jpa-chapter3/src/main/java/org/apache...

Author: aadamchik
Date: Wed Jan  3 09:26:06 2007
New Revision: 492227

URL: http://svn.apache.org/viewvc?view=rev&rev=492227
Log:
more JPA itests

Added:
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/   (with props)
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.classpath
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.project
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.core.prefs
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.ui.prefs
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/pom.xml
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/NonEntity.java
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/SimpleEntity.java
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/resources/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/resources/META-INF/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/resources/META-INF/persistence.xml
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/itest/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/itest/ch3/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/itest/ch3/_3_1_1_EntityManagerTest.java
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/resources/
    incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/resources/schema-hsqldb.sql
Modified:
    incubator/cayenne/main/trunk/integration-test/pom.xml

Propchange: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Jan  3 09:26:06 2007
@@ -0,0 +1 @@
+target

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.classpath
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.classpath?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.classpath (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.classpath Wed Jan  3 09:26:06 2007
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src/main/java"/>
+	<classpathentry kind="src" path="src/test/java"/>
+	<classpathentry excluding="**" output="src/main/resources" kind="src" path="src/main/resources"/>
+	<classpathentry excluding="**" output="src/test/resources" kind="src" path="src/test/resources"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+	<classpathentry kind="output" path="target/classes"/>
+</classpath>

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.project
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.project?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.project (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.project Wed Jan  3 09:26:06 2007
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>jpa-chapter3</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.maven.ide.eclipse.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.maven.ide.eclipse.maven2Nature</nature>
+	</natures>
+</projectDescription>

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.core.prefs
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.core.prefs?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.core.prefs (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.core.prefs Wed Jan  3 09:26:06 2007
@@ -0,0 +1,303 @@
+#Sun Jul 23 18:13:04 EDT 2006
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=48
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=48
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=48
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=48
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines=true
+org.eclipse.jdt.core.formatter.comment.format_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
+org.eclipse.jdt.core.formatter.comment.line_length=90
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=90
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=space
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.ui.prefs
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.ui.prefs?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.ui.prefs (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/.settings/org.eclipse.jdt.ui.prefs Wed Jan  3 09:26:06 2007
@@ -0,0 +1,8 @@
+#Sun Jul 23 18:13:03 EDT 2006
+eclipse.preferences.version=1
+formatter_settings_version=10
+internal.default.compliance=default
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment"></template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment"></template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment"></template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecom
 ment" name\="filecomment">/**\n * \n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author \n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment"></template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment"></template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment"></template><templ
 ate autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*****************************************************************\n *   Licensed to the Apache Software Foundation (ASF) under one\n *  or more contributor license agreements.  See the NOTICE file\n *  distributed with this work for additional information\n *  regarding copyright ownership.  The ASF licenses this file\n *  to you under the Apache License, Version 2.0 (the\n *  "License"); you may not use this file except in compliance\n *  with the License.  You may obtain a copy of the License at\n *\n *    http\://www.apache.org/licenses/LICENSE-2.0\n *\n *  Unless required by applicable law or agreed to in writing,\n *  software distributed under the License is distributed on an\n *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n *  KIND, either express or implied.  See the Lic
 ense for the\n *  specific language governing permissions and limitations\n *  under the License.\n ****************************************************************/\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}</template><t
 emplate autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="t
 rue" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template></templates>

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/pom.xml
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/pom.xml?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/pom.xml (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/pom.xml Wed Jan  3 09:26:06 2007
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Copyright 2006 The Apache Software Foundation
+
+    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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.apache.cayenne.itest</groupId>
+		<artifactId>cayenne-itest-parent</artifactId>
+		<version>3.0-SNAPSHOT</version>
+	</parent>
+
+	<description>Integration Tests - JPA Chapter 3</description>
+	<artifactId>jpa-chapter3</artifactId>
+	<name>Integration Tests - JPA Chapter 3</name>
+	<packaging>jar</packaging>
+
+	<dependencies>
+		<dependency>
+			<groupId>junit</groupId>
+			<artifactId>junit</artifactId>
+		</dependency>
+
+		<dependency>
+			<groupId>org.apache.cayenne.itest</groupId>
+			<artifactId>itest-common</artifactId>
+			<version>${version}</version>
+		</dependency>
+
+		<dependency>
+			<groupId>org.apache.geronimo.specs</groupId>
+			<artifactId>geronimo-jpa_3.0_spec</artifactId>
+		</dependency>
+
+	</dependencies>
+
+	<build>
+		<plugins>
+			<plugin>
+				<artifactId>maven-compiler-plugin</artifactId>
+				<configuration>
+					<source>1.5</source>
+					<target>1.5</target>
+				</configuration>
+			</plugin>
+
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-surefire-plugin</artifactId>
+
+				<configuration>
+					<forkMode>once</forkMode>
+					<argLine>
+						-javaagent:${settings.localRepository}/org/apache/cayenne/cayenne-agent/${version}/cayenne-agent-${version}.jar
+					</argLine>
+				</configuration>
+			</plugin>
+		</plugins>
+	</build>
+</project>

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/NonEntity.java
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/NonEntity.java?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/NonEntity.java (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/NonEntity.java Wed Jan  3 09:26:06 2007
@@ -0,0 +1,31 @@
+/*****************************************************************
+ *   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.cayenne.jpa.itest.ch3.entity;
+
+import javax.persistence.Id;
+
+/**
+ * A class that is not annotated as an entity.
+ */
+public class NonEntity {
+
+    @Id
+    protected int id;
+    protected String property1;
+}

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/SimpleEntity.java
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/SimpleEntity.java?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/SimpleEntity.java (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/java/org/apache/cayenne/jpa/itest/ch3/entity/SimpleEntity.java Wed Jan  3 09:26:06 2007
@@ -0,0 +1,46 @@
+/*****************************************************************
+ *   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.cayenne.jpa.itest.ch3.entity;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+
+@Entity
+public class SimpleEntity {
+
+    @Id
+    protected int id;
+    protected String property1;
+
+    public int idField() {
+        return id;
+    }
+    
+    public void updateIdField(int id) {
+        this.id = id;
+    }
+
+    public String getProperty1() {
+        return property1;
+    }
+
+    public void setProperty1(String property1) {
+        this.property1 = property1;
+    }
+}

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/resources/META-INF/persistence.xml
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/resources/META-INF/persistence.xml?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/resources/META-INF/persistence.xml (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/main/resources/META-INF/persistence.xml Wed Jan  3 09:26:06 2007
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   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.
+-->
+
+<persistence>
+	<persistence-unit name="itest">
+		<description>Integration test peristence unit #1.</description>
+		<class>org.apache.cayenne.jpa.itest.ch3.entity.SimpleEntity</class>
+	</persistence-unit>
+</persistence>

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/itest/ch3/_3_1_1_EntityManagerTest.java
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/itest/ch3/_3_1_1_EntityManagerTest.java?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/itest/ch3/_3_1_1_EntityManagerTest.java (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/java/org/apache/cayenne/jpa/itest/ch3/_3_1_1_EntityManagerTest.java Wed Jan  3 09:26:06 2007
@@ -0,0 +1,253 @@
+/*****************************************************************
+ *   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.cayenne.jpa.itest.ch3;
+
+import javax.persistence.EntityExistsException;
+import javax.persistence.PersistenceException;
+
+import org.apache.cayenne.itest.jpa.EntityManagerCase;
+import org.apache.cayenne.jpa.itest.ch3.entity.NonEntity;
+import org.apache.cayenne.jpa.itest.ch3.entity.SimpleEntity;
+
+public class _3_1_1_EntityManagerTest extends EntityManagerCase {
+
+    public void testPersist() throws Exception {
+        getDbHelper().deleteAll("SimpleEntity");
+
+        SimpleEntity e = new SimpleEntity();
+        e.setProperty1("XXX");
+        getEntityManager().persist(e);
+        getEntityManager().getTransaction().commit();
+
+        assertEquals(1, getDbHelper().getRowCount("SimpleEntity"));
+    }
+
+    public void testPersistNonEntity() throws Exception {
+        try {
+            getEntityManager().persist(new NonEntity());
+            fail("Must have thrown IllegalARgumentException on non entity");
+        }
+        catch (IllegalArgumentException e) {
+            // expected
+        }
+    }
+
+    public void testPersistEntityExistsException() {
+        SimpleEntity e1 = new SimpleEntity();
+        e1.updateIdField(3);
+
+        SimpleEntity e2 = new SimpleEntity();
+        e2.updateIdField(3);
+
+        getEntityManager().persist(e1);
+
+        try {
+            getEntityManager().persist(e2);
+        }
+        catch (EntityExistsException e) {
+            // expected
+            return;
+        }
+
+        // if no EntityExistsException was thrown immediately, try doing a commit - an
+        // exception must be thrown here
+
+        try {
+            getEntityManager().flush();
+        }
+        catch (PersistenceException e) {
+            // expected
+            return;
+        }
+
+        try {
+            getEntityManager().getTransaction().commit();
+        }
+        catch (PersistenceException e) {
+            // expected
+            return;
+        }
+
+        fail("Must have thrown on EntityExists condition.");
+    }
+
+    // TODO: andrus, 1/3/2007 - implement - need to emulate the container environment
+    public void _testPersistTransactionRequiredException() {
+        // throws TransactionRequiredException if invoked on a
+        // container-managed entity manager of type
+        // PersistenceContextType.TRANSACTION and there is
+        // no transaction.
+    }
+
+    // TODO: andrus, 1/3/2007 - this fails with Null ObjectId exception
+    public void _testMerge() throws Exception {
+        getDbHelper().deleteAll("SimpleEntity");
+
+        getDbHelper().insert("SimpleEntity", new String[] {
+                "id", "property1"
+        }, new Object[] {
+                1, "XXX"
+        });
+
+        SimpleEntity e1 = new SimpleEntity();
+        e1.setProperty1("YYY");
+        e1.updateIdField(1);
+
+        // detailed merge logic is described in chapter 3.2.4.1
+        Object merged = getEntityManager().merge(e1);
+        assertNotNull(merged);
+        assertTrue(merged instanceof SimpleEntity);
+
+        SimpleEntity e2 = (SimpleEntity) merged;
+
+        assertEquals("YYY", e2.getProperty1());
+
+        getEntityManager().getTransaction().commit();
+        assertEquals(1, getDbHelper().getRowCount("SimpleEntity"));
+        assertEquals("YYY", getDbHelper().getObject("SimpleEntity", "property1"));
+    }
+
+    public void testMergeRemovedEntity() throws Exception {
+        getDbHelper().deleteAll("SimpleEntity");
+
+        getDbHelper().insert("SimpleEntity", new String[] {
+                "id", "property1"
+        }, new Object[] {
+                1, "XXX"
+        });
+
+        SimpleEntity e1 = (SimpleEntity) getEntityManager().find(SimpleEntity.class, 1);
+        assertNotNull(e1);
+        getEntityManager().remove(e1);
+
+        try {
+            getEntityManager().merge(e1);
+            fail("must have thrown IllegalArgumentException on merging a removed entity.");
+        }
+        catch (IllegalArgumentException e) {
+            // expected
+        }
+    }
+
+    public void testMergeNonEntity() throws Exception {
+
+        try {
+            getEntityManager().merge(new NonEntity());
+            fail("must have thrown IllegalArgumentException on merging a non entity.");
+        }
+        catch (IllegalArgumentException e) {
+            // expected
+        }
+    }
+
+    // TODO: andrus, 1/3/2007 - implement - need to emulate the container environment
+    public void _testMergeTransactionRequiredException() {
+        // throws TransactionRequiredException if invoked on a
+        // container-managed entity manager of type
+        // PersistenceContextType.TRANSACTION and there is
+        // no transaction.
+    }
+
+    public void testRemove() throws Exception {
+        getDbHelper().deleteAll("SimpleEntity");
+
+        getDbHelper().insert("SimpleEntity", new String[] {
+                "id", "property1"
+        }, new Object[] {
+                1, "XXX"
+        });
+
+        SimpleEntity e1 = (SimpleEntity) getEntityManager().find(SimpleEntity.class, 1);
+        assertNotNull(e1);
+        getEntityManager().remove(e1);
+        getEntityManager().getTransaction().commit();
+
+        assertEquals(0, getDbHelper().getRowCount("SimpleEntity"));
+    }
+
+    public void testRemoveNonEntity() throws Exception {
+        try {
+            getEntityManager().remove(new NonEntity());
+            fail("Must have thrown IllegalArgumentException on non entity");
+        }
+        catch (IllegalArgumentException e) {
+            // expected
+        }
+    }
+
+    public void testRemoveDetachedEntity() throws Exception {
+        try {
+            getEntityManager().remove(new SimpleEntity());
+            fail("Must have thrown IllegalArgumentException on detached entity");
+        }
+        catch (IllegalArgumentException e) {
+            // expected
+        }
+    }
+
+    // TODO: andrus, 1/3/2007 - implement - need to emulate the container environment
+    public void _testRemoveTransactionRequiredException() {
+        // throws TransactionRequiredException if invoked on a
+        // container-managed entity manager of type
+        // PersistenceContextType.TRANSACTION and there is
+        // no transaction.
+    }
+
+    public void testFind() throws Exception {
+        getDbHelper().deleteAll("SimpleEntity");
+
+        getDbHelper().insert("SimpleEntity", new String[] {
+                "id", "property1"
+        }, new Object[] {
+                15, "XXX"
+        });
+
+        assertNotNull(getEntityManager().find(SimpleEntity.class, 15));
+        assertNull(getEntityManager().find(SimpleEntity.class, 16));
+    }
+
+    public void testFindNonEntity() {
+        try {
+            getEntityManager().find(NonEntity.class, 1);
+            fail("must have thrown");
+        }
+        catch (IllegalArgumentException e) {
+            // expected
+        }
+    }
+
+    // TODO: andrus, 1/3/2007 - this fails - need algorithm for id validation.
+    public void _testFindBadIdType() {
+        try {
+            getEntityManager().find(SimpleEntity.class, "abc");
+            fail("must have thrown on invalid id class.");
+        }
+        catch (IllegalArgumentException e) {
+            // expected
+        }
+    }
+
+    // TODO: andrus, 1/3/2007 - implement - need to emulate the container environment
+    public void _testRefreshTransactionRequiredException() {
+        // throws TransactionRequiredException if invoked on a
+        // container-managed entity manager of type
+        // PersistenceContextType.TRANSACTION and there is
+        // no transaction.
+    }
+}

Added: incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/resources/schema-hsqldb.sql
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/resources/schema-hsqldb.sql?view=auto&rev=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/resources/schema-hsqldb.sql (added)
+++ incubator/cayenne/main/trunk/integration-test/jpa-chapter3/src/test/resources/schema-hsqldb.sql Wed Jan  3 09:26:06 2007
@@ -0,0 +1,4 @@
+create table AUTO_PK_SUPPORT (TABLE_NAME CHAR(100) NOT NULL,  NEXT_ID INTEGER NOT NULL, PRIMARY KEY(TABLE_NAME));
+insert into AUTO_PK_SUPPORT (TABLE_NAME, NEXT_ID) VALUES ('SimpleEntity', 1);
+
+create table SimpleEntity (id int not null, property1 VARCHAR(100), primary key(id));

Modified: incubator/cayenne/main/trunk/integration-test/pom.xml
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/integration-test/pom.xml?view=diff&rev=492227&r1=492226&r2=492227
==============================================================================
--- incubator/cayenne/main/trunk/integration-test/pom.xml (original)
+++ incubator/cayenne/main/trunk/integration-test/pom.xml Wed Jan  3 09:26:06 2007
@@ -37,6 +37,7 @@
       <module>itest-common</module>
       <module>pojo</module>
       <module>jpa-chapter2</module>
+      <module>jpa-chapter3</module>
       <module>jpa-chapter9</module>
     </modules>
 </project>