diff options
author | cletavernie | 2013-03-11 18:22:34 +0000 |
---|---|---|
committer | cletavernie | 2013-03-11 18:22:34 +0000 |
commit | e16fa2b226a432880e4ade7092fe3a318a941cee (patch) | |
tree | 16221c2f124e643baf10fcdb2236dc93d4a310d3 /tests/junit/extraplugins | |
parent | aa79b57f3f930fdf3c8e5e6b0d50821cf6d9596d (diff) | |
download | org.eclipse.papyrus-e16fa2b226a432880e4ade7092fe3a318a941cee.tar.gz org.eclipse.papyrus-e16fa2b226a432880e4ade7092fe3a318a941cee.tar.xz org.eclipse.papyrus-e16fa2b226a432880e4ade7092fe3a318a941cee.zip |
290952: [CDO] Support for CDO model repository
https://bugs.eclipse.org/bugs/show_bug.cgi?id=290952
Merge the tests from cdo_kepler to the trunk (From r10476)
Diffstat (limited to 'tests/junit/extraplugins')
16 files changed, 2641 insertions, 0 deletions
diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.classpath b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.classpath new file mode 100644 index 00000000000..abfee048d70 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.project b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.project new file mode 100644 index 00000000000..e45a0e19d9d --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.papyrus.cdo.ui.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.settings/org.eclipse.jdt.core.prefs b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..a13557a0d1f --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,287 @@ +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.compliance=1.5 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +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=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=0 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=0 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=0 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=0 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=0 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=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=1 +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_import_groups=1 +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=next_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=next_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_in_block_comment=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false +org.eclipse.jdt.core.formatter.comment.format_block_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_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=false +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false +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=insert +org.eclipse.jdt.core.formatter.comment.line_length=150 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +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=false +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not 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=do not 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_try=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_semicolon_in_try_resources=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_try=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=do not 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=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=do not 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=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=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_semicolon_in_try_resources=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.join_lines_in_comments=false +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +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=200 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +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=5 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false +org.eclipse.jdt.core.formatter.tabulation.char=tab +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.settings/org.eclipse.jdt.ui.prefs b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..272e835ec52 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,58 @@ +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_Papyrus Formatter Profile CDM +formatter_settings_version=12 +org.eclipse.jdt.ui.javadoc=true +org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><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">/**\n * @return the ${bare_field_name}\n */</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">/**\n * @param ${param} the ${bare_field_name} to set\n */</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">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n * CEA LIST - Initial API and implementation\n *****************************************************************************/</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * This is the ${type_name} type. Enjoy.\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">/**\n * \n */</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">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment"/><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\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</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\="true" 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><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">// ${todo} Auto-generated catch block\n${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">// ${todo} Auto-generated method stub\n${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}\n// ${todo} Auto-generated constructor stub</template><template 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></templates> +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=true +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=true +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=false +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=false +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/META-INF/MANIFEST.MF b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/META-INF/MANIFEST.MF new file mode 100644 index 00000000000..03969d968e9 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/META-INF/MANIFEST.MF @@ -0,0 +1,31 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: org.eclipse.papyrus.cdo.ui.tests;singleton:=true +Bundle-Version: 0.10.0.qualifier +Bundle-Vendor: %providerName +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.ui.ide;bundle-version="[3.8.0,4.0.0)", + org.eclipse.papyrus.infra.core;bundle-version="0.10.0", + org.eclipse.papyrus.infra.core.log;bundle-version="0.10.0", + org.eclipse.ui.workbench, + org.eclipse.papyrus.cdo.core;bundle-version="0.10.0", + org.eclipse.emf.cdo.ui;bundle-version="[4.2.0,5.0.0)", + org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="0.10.0", + org.eclipse.emf.cdo.dawn;bundle-version="[2.0.0,3.0.0)", + org.eclipse.emf.cdo.dawn.gmf;bundle-version="[2.1.0,3.0.0)", + org.eclipse.emf.cdo.dawn.ui;bundle-version="[2.0.0,3.0.0)", + org.eclipse.papyrus.infra.emf;bundle-version="0.10.0", + org.eclipse.papyrus.cdo.core.tests;bundle-version="0.10.0", + org.eclipse.papyrus.cdo.ui;bundle-version="0.10.0", + org.eclipse.papyrus.infra.services.validation;bundle-version="0.10.0", + org.eclipse.papyrus.infra.services.markerlistener;bundle-version="0.10.0", + org.eclipse.papyrus.cdo.validation.problems;bundle-version="0.10.0" +Bundle-RequiredExecutionEnvironment: J2SE-1.5 +Bundle-Localization: plugin +Import-Package: com.google.common.base;version="10.0.1", + com.google.common.cache;version="10.0.1", + com.google.common.collect;version="10.0.1" +Export-Package: org.eclipse.papyrus.cdo.internal.ui.editors.tests;x-internal:=true, + org.eclipse.papyrus.cdo.internal.ui.markers.tests;x-internal:=true, + org.eclipse.papyrus.cdo.ui.tests diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/about.html b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/about.html new file mode 100644 index 00000000000..209103075a7 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/about.html @@ -0,0 +1,28 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>November 14, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party ("Redistributor") and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
\ No newline at end of file diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/build.properties b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/build.properties new file mode 100644 index 00000000000..2b112c46131 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/build.properties @@ -0,0 +1,7 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + plugin.properties,\ + about.html +src.includes = about.html diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/plugin.properties b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/plugin.properties new file mode 100644 index 00000000000..1af1ce5c2f7 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/plugin.properties @@ -0,0 +1,13 @@ +# Copyright (c) 2013 CEA LIST. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# CEA LIST - Initial API and implementation +# + +pluginName = Papyrus CDO Model Repository UI Tests (Incubation) +providerName = Eclipse Modeling Project diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.di b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.di new file mode 100644 index 00000000000..7035d603909 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.di @@ -0,0 +1,211 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.eclipse.org/papyrus/0.7.0/sashdi" xmlns:org.eclipse.papyrus.infra.table.instance.papyrustableinstance="http://www.eclipse.org/Papyrus/Table/0.8.0/papyrustableinstance" xmlns:tableinstance="http://www.eclipse.org/EMF_Facet/ModelCellEditor/0.1.0/tableinstance" xmlns:tableinstance2="http://www.eclipse.org/EMF_Facet/Table/0.1.0/tableinstance2"> + <di:SashWindowsMngr> + <pageList> + <availablePage> + <emfPageIdentifier href="model.notation#_PIsWgHFlEeK8x7zQKtpUFg"/> + </availablePage> + <availablePage emfPageIdentifier="/1"/> + <availablePage> + <emfPageIdentifier href="model.notation#_PIuywHFlEeK8x7zQKtpUFg"/> + </availablePage> + <availablePage> + <emfPageIdentifier href="model.notation#_PIxPAHFlEeK8x7zQKtpUFg"/> + </availablePage> + <availablePage> + <emfPageIdentifier href="model.notation#_PIzrQHFlEeK8x7zQKtpUFg"/> + </availablePage> + </pageList> + <sashModel currentSelection="/0/@sashModel/@windows.0/@children.0"> + <windows> + <children xsi:type="di:TabFolder"> + <children> + <emfPageIdentifier href="model.notation#_PIsWgHFlEeK8x7zQKtpUFg"/> + </children> + <children emfPageIdentifier="/1"/> + <children> + <emfPageIdentifier href="model.notation#_PIuywHFlEeK8x7zQKtpUFg"/> + </children> + <children> + <emfPageIdentifier href="model.notation#_PIxPAHFlEeK8x7zQKtpUFg"/> + </children> + <children> + <emfPageIdentifier href="model.notation#_PIzrQHFlEeK8x7zQKtpUFg"/> + </children> + </children> + </windows> + </sashModel> + </di:SashWindowsMngr> + <org.eclipse.papyrus.infra.table.instance.papyrustableinstance:PapyrusTableInstance name="DefaultTable" table="/2"/> + <tableinstance2:TableInstance2 description="Table Description"> + <tableConfiguration href="platform:/plugin/org.eclipse.papyrus.uml.table.default/resources/default.tableconfiguration2#/"/> + <customizations href="emffacet:/customization/UMLPapyrusDefaultBrowserCustomization#/"/> + <customizations href="#/2/@localCustomizations.1"/> + <customizations href="#/2/@localCustomizations.0"/> + <context href="model.uml#_PI4jwHFlEeK8x7zQKtpUFg"/> + <columns xsi:type="tableinstance:DefaultLabelColumn"/> + <columns xsi:type="tableinstance:MetaClassColumn"/> + <columns xsi:type="tableinstance:EContainerColumn"/> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/emf/2002/Ecore#//EModelElement/eAnnotations"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Element/ownedComment"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Element/ownedElement"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Element/owner"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/clientDependency"/> + </columns> + <columns xsi:type="tableinstance:AttributeColumn"> + <attribute href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/nameExpression"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/namespace"/> + </columns> + <columns xsi:type="tableinstance:AttributeColumn"> + <attribute href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/qualifiedName"/> + </columns> + <columns xsi:type="tableinstance:AttributeColumn"> + <attribute href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/visibility"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Namespace/elementImport"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Namespace/packageImport"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Namespace/ownedRule"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Namespace/ownedMember"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Namespace/importedMember"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Namespace/member"/> + </columns> + <columns xsi:type="tableinstance:AttributeColumn"> + <attribute href="http://www.eclipse.org/uml2/4.0.0/UML#//RedefinableElement/isLeaf"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//RedefinableElement/redefinedElement"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//RedefinableElement/redefinitionContext"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//ParameterableElement/owningTemplateParameter"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//ParameterableElement/templateParameter"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Type/package"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//TemplateableElement/ownedTemplateSignature"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//TemplateableElement/templateBinding"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/feature"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/attribute"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/collaborationUse"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/general"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/generalization"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/powertypeExtent"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/inheritedMember"/> + </columns> + <columns xsi:type="tableinstance:AttributeColumn"> + <attribute href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/isAbstract"/> + </columns> + <columns xsi:type="tableinstance:AttributeColumn"> + <attribute href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/isFinalSpecialization"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/ownedUseCase"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/useCase"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/redefinedClassifier"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/representation"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Classifier/substitution"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//StructuredClassifier/ownedAttribute"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//StructuredClassifier/ownedConnector"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//StructuredClassifier/part"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//StructuredClassifier/role"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//EncapsulatedClassifier/ownedPort"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//BehavioredClassifier/classifierBehavior"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//BehavioredClassifier/interfaceRealization"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//BehavioredClassifier/ownedBehavior"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Class/ownedOperation"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Class/extension"/> + </columns> + <columns xsi:type="tableinstance:AttributeColumn"> + <attribute href="http://www.eclipse.org/uml2/4.0.0/UML#//Class/isActive"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Class/nestedClassifier"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Class/ownedReception"/> + </columns> + <columns xsi:type="tableinstance:ReferenceColumn"> + <reference href="http://www.eclipse.org/uml2/4.0.0/UML#//Class/superClass"/> + </columns> + <rows> + <element href="model.uml#_PI4jwnFlEeK8x7zQKtpUFg"/> + </rows> + <localCustomizations metamodelURI="http://www.eclipse.org/emf/2002/Ecore"/> + <localCustomizations metamodelURI="http://www.eclipse.org/uml2/4.0.0/UML"/> + </tableinstance2:TableInstance2> +</xmi:XMI> diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.notation b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.notation new file mode 100644 index 00000000000..9abe6da081d --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.notation @@ -0,0 +1,854 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML"> + <notation:Diagram xmi:id="_PIsWgHFlEeK8x7zQKtpUFg" type="PapyrusUMLClassDiagram" name="classes" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_PIsWgXFlEeK8x7zQKtpUFg" type="2008"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWgnFlEeK8x7zQKtpUFg" type="5029"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_PIsWg3FlEeK8x7zQKtpUFg" type="7017"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIsWhHFlEeK8x7zQKtpUFg" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIsWhXFlEeK8x7zQKtpUFg" key="showTitle" value="true"/> + </eAnnotations> + <styles xmi:type="notation:TitleStyle" xmi:id="_PIsWhnFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIsWh3FlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIsWiHFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWiXFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_PIsWinFlEeK8x7zQKtpUFg" type="7018"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIsWi3FlEeK8x7zQKtpUFg" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIsWjHFlEeK8x7zQKtpUFg" key="showTitle" value="true"/> + </eAnnotations> + <styles xmi:type="notation:TitleStyle" xmi:id="_PIsWjXFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIsWjnFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIsWj3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWkHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_PIsWkXFlEeK8x7zQKtpUFg" type="7019"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIsWknFlEeK8x7zQKtpUFg" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIsWk3FlEeK8x7zQKtpUFg" key="showTitle" value="true"/> + </eAnnotations> + <styles xmi:type="notation:TitleStyle" xmi:id="_PIsWlHFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIsWlXFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIsWlnFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWl3FlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:Class" href="model.uml#_PI4jwnFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWmHFlEeK8x7zQKtpUFg" x="63" y="18"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIsWmXFlEeK8x7zQKtpUFg" type="2008"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWmnFlEeK8x7zQKtpUFg" type="5029"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_PIsWm3FlEeK8x7zQKtpUFg" type="7017"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIsWnHFlEeK8x7zQKtpUFg" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIsWnXFlEeK8x7zQKtpUFg" key="showTitle" value="true"/> + </eAnnotations> + <children xmi:type="notation:Shape" xmi:id="_PIsWnnFlEeK8x7zQKtpUFg" type="3012"> + <element xmi:type="uml:Property" href="model.uml#_PI4kH3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIsWn3FlEeK8x7zQKtpUFg"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_PIsWoHFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIsWoXFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIsWonFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWo3FlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_PIsWpHFlEeK8x7zQKtpUFg" type="7018"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIsWpXFlEeK8x7zQKtpUFg" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIsWpnFlEeK8x7zQKtpUFg" key="showTitle" value="true"/> + </eAnnotations> + <styles xmi:type="notation:TitleStyle" xmi:id="_PIsWp3FlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIsWqHFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIsWqXFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWqnFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_PIsWq3FlEeK8x7zQKtpUFg" type="7019"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIsWrHFlEeK8x7zQKtpUFg" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIsWrXFlEeK8x7zQKtpUFg" key="showTitle" value="true"/> + </eAnnotations> + <styles xmi:type="notation:TitleStyle" xmi:id="_PIsWrnFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIsWr3FlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIsWsHFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWsXFlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:Class" href="model.uml#_PI4kHnFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIsWsnFlEeK8x7zQKtpUFg" x="270" y="18"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_SFbYAIQqEeKq_f8GS5X7FQ" type="2009"> + <children xmi:type="notation:DecorationNode" xmi:id="_SFcmIIQqEeKq_f8GS5X7FQ" type="5032"/> + <element xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFbYAYQqEeKq_f8GS5X7FQ" x="171" y="198"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_PIsWs3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Model" href="model.uml#_PI4jwHFlEeK8x7zQKtpUFg"/> + <edges xmi:type="notation:Connector" xmi:id="_PIsWtHFlEeK8x7zQKtpUFg" type="4001" source="_PIsWgXFlEeK8x7zQKtpUFg" target="_PIsWmXFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWtXFlEeK8x7zQKtpUFg" type="6001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIsWtnFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWt3FlEeK8x7zQKtpUFg" visible="false" type="6002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIsWuHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWuXFlEeK8x7zQKtpUFg" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIsWunFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWu3FlEeK8x7zQKtpUFg" type="6005"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIsWvHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWvXFlEeK8x7zQKtpUFg" type="6033"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIsWvnFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIsWv3FlEeK8x7zQKtpUFg" type="6034"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIsWwHFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIsWwXFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Association" href="model.uml#_PI4kIHFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIsWwnFlEeK8x7zQKtpUFg" points="[21, -6, -217, -15]$[204, -41, -34, -50]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIsWw3FlEeK8x7zQKtpUFg" id="(0.79,0.39)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_VftGgIQqEeKq_f8GS5X7FQ" type="4002" source="_PIsWmXFlEeK8x7zQKtpUFg" target="_SFbYAIQqEeKq_f8GS5X7FQ"> + <children xmi:type="notation:DecorationNode" xmi:id="_VftGg4QqEeKq_f8GS5X7FQ" type="6007"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VftGhIQqEeKq_f8GS5X7FQ" y="40"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_VftGgYQqEeKq_f8GS5X7FQ"/> + <element xmi:type="uml:Generalization" href="model.uml#_VZyEsIQqEeKq_f8GS5X7FQ"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VftGgoQqEeKq_f8GS5X7FQ" points="[-16, 22, 60, -89]$[-70, 102, 6, -9]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VgM1wIQqEeKq_f8GS5X7FQ" id="(0.3482142857142857,0.78)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VgM1wYQqEeKq_f8GS5X7FQ" id="(0.62,0.18)"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_PIuywHFlEeK8x7zQKtpUFg" type="PapyrusUMLActivityDiagram" name="lifecycle" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_PIuywXFlEeK8x7zQKtpUFg" type="2001" fontName="Lucida Grande" fontHeight="11" lineColor="0"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIuywnFlEeK8x7zQKtpUFg" source="ShadowFigure"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIuyw3FlEeK8x7zQKtpUFg" key="ShadowFigure_Value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIuyxHFlEeK8x7zQKtpUFg" source="displayNameLabelIcon"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIuyxXFlEeK8x7zQKtpUFg" key="displayNameLabelIcon_value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIuyxnFlEeK8x7zQKtpUFg" source="QualifiedName"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIuyx3FlEeK8x7zQKtpUFg" key="QualifiedNameDepth" value="1000"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuyyHFlEeK8x7zQKtpUFg" type="5001"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuyyXFlEeK8x7zQKtpUFg" type="7001"> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIuyynFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIuyy3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuyzHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuyzXFlEeK8x7zQKtpUFg" type="7002"> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIuyznFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIuyz3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy0HFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy0XFlEeK8x7zQKtpUFg" type="7003"> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIuy0nFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIuy03FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy1HFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy1XFlEeK8x7zQKtpUFg" type="7004"> + <children xmi:type="notation:Shape" xmi:id="_PIuy1nFlEeK8x7zQKtpUFg" type="3004"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy13FlEeK8x7zQKtpUFg" type="5080"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuy2HFlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy2XFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:InitialNode" href="model.uml#_PI4j5HFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy2nFlEeK8x7zQKtpUFg" x="89" y="122"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIuy23FlEeK8x7zQKtpUFg" type="3005"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy3HFlEeK8x7zQKtpUFg" type="5081"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuy3XFlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy3nFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ActivityFinalNode" href="model.uml#_PI4j5XFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy33FlEeK8x7zQKtpUFg" x="787" y="186"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIuy4HFlEeK8x7zQKtpUFg" type="3065"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy4XFlEeK8x7zQKtpUFg" type="5117"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy4nFlEeK8x7zQKtpUFg" type="7005"> + <children xmi:type="notation:Shape" xmi:id="_PIuy43FlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy5HFlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy5XFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4jyHFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy5nFlEeK8x7zQKtpUFg" x="30" y="66"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIuy53FlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy6HFlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy6XFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4jyXFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy6nFlEeK8x7zQKtpUFg" x="138" y="66"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIuy63FlEeK8x7zQKtpUFg" type="3038"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy7HFlEeK8x7zQKtpUFg" type="5043"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuy7XFlEeK8x7zQKtpUFg" y="5"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy7nFlEeK8x7zQKtpUFg" type="5098"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuy73FlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy8HFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:DecisionNode" href="model.uml#_PI4jynFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy8XFlEeK8x7zQKtpUFg" x="246" y="66"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy8nFlEeK8x7zQKtpUFg"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy83FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:StructuredActivityNode" href="model.uml#_PI4jx3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy9HFlEeK8x7zQKtpUFg" x="76" y="192" width="280" height="154"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIuy9XFlEeK8x7zQKtpUFg" type="3067"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy9nFlEeK8x7zQKtpUFg" type="5118"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy93FlEeK8x7zQKtpUFg" type="7006"> + <children xmi:type="notation:Shape" xmi:id="_PIuy-HFlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuy-XFlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy-nFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4j5nFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy-3FlEeK8x7zQKtpUFg" x="85" y="52"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy_HFlEeK8x7zQKtpUFg"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuy_XFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ActivityPartition" href="model.uml#_PI4jy3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuy_nFlEeK8x7zQKtpUFg" x="391" y="30" width="239" height="148"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIuy_3FlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzAHFlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuzAXFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4j53FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuzAnFlEeK8x7zQKtpUFg" x="497" y="288"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIuzA3FlEeK8x7zQKtpUFg" type="3039"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzBHFlEeK8x7zQKtpUFg" type="5099"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzBXFlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIuzBnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:MergeNode" href="model.uml#_PI4j6HFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuzB3FlEeK8x7zQKtpUFg" x="715" y="183"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuzCHFlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:Activity" href="model.uml#_PI4jxnFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIuzCXFlEeK8x7zQKtpUFg"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_PIuzCnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Activity" href="model.uml#_PI4jxnFlEeK8x7zQKtpUFg"/> + <edges xmi:type="notation:Connector" xmi:id="_PIuzC3FlEeK8x7zQKtpUFg" type="4004" source="_PIuy1nFlEeK8x7zQKtpUFg" target="_PIuy43FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzDHFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzDXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzDnFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzD3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzEHFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzEXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzEnFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzE3FlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIuzFHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4jzHFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIuzFXFlEeK8x7zQKtpUFg" points="[1, 3, -39, -143]$[39, 126, -1, -20]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIuzFnFlEeK8x7zQKtpUFg" id="(0.45,0.8)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIuzF3FlEeK8x7zQKtpUFg" type="4004" source="_PIuy43FlEeK8x7zQKtpUFg" target="_PIuy53FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzGHFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzGXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzGnFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzG3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzHHFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzHXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzHnFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzH3FlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIuzIHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4jz3FlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIuzIXFlEeK8x7zQKtpUFg" points="[11, 2, -73, -1]$[88, -17, 4, -20]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIuzInFlEeK8x7zQKtpUFg" id="(0.8428571428571429,0.425)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIuzI3FlEeK8x7zQKtpUFg" type="4004" source="_PIuy53FlEeK8x7zQKtpUFg" target="_PIuy63FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzJHFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzJXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzJnFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzJ3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzKHFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzKXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzKnFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzK3FlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIuzLHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4j0nFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIuzLXFlEeK8x7zQKtpUFg" points="[35, -4, -48, 1]$[82, 8, -1, 13]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIuzLnFlEeK8x7zQKtpUFg" type="4004" source="_PIuy63FlEeK8x7zQKtpUFg" target="_PIuy-HFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzL3FlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzMHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzMXFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzMnFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzM3FlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzNHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzNXFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzNnFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIuzN3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4j1XFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIuzOHFlEeK8x7zQKtpUFg" points="[6, -6, -181, 151]$[189, -137, 2, 20]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIuzOXFlEeK8x7zQKtpUFg" type="4004" source="_PIuy63FlEeK8x7zQKtpUFg" target="_PIuy_3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzOnFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzO3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzPHFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzPXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzPnFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzP3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzQHFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzQXFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIuzQnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4j2HFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIuzQ3FlEeK8x7zQKtpUFg" points="[13, 2, -195, -27]$[243, 37, 35, 8]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIuzRHFlEeK8x7zQKtpUFg" id="(0.25,0.5)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIuzRXFlEeK8x7zQKtpUFg" type="4004" source="_PIuy_3FlEeK8x7zQKtpUFg" target="_PIuzA3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzRnFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzR3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzSHFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzSXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzSnFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzS3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzTHFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzTXFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIuzTnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4j23FlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIuzT3FlEeK8x7zQKtpUFg" points="[16, -11, -158, 103]$[174, -114, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIuzUHFlEeK8x7zQKtpUFg" id="(0.7714285714285715,0.6)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIuzUXFlEeK8x7zQKtpUFg" type="4004" source="_PIuy-HFlEeK8x7zQKtpUFg" target="_PIuzA3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzUnFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzU3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzVHFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzVXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzVnFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzV3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIuzWHFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIuzWXFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIuzWnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4j3nFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIuzW3FlEeK8x7zQKtpUFg" points="[35, 12, -174, -64]$[208, 62, -1, -14]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIvZ0HFlEeK8x7zQKtpUFg" type="4004" source="_PIuzA3FlEeK8x7zQKtpUFg" target="_PIuy23FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIvZ0XFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIvZ0nFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIvZ03FlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIvZ1HFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIvZ1XFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIvZ1nFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIvZ13FlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIvZ2HFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIvZ2XFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4j4XFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIvZ2nFlEeK8x7zQKtpUFg" points="[7, -4, -65, -2]$[71, -12, -1, -10]"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_PIxPAHFlEeK8x7zQKtpUFg" type="PapyrusUMLStateMachineDiagram" name="fsm" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_PIxPAXFlEeK8x7zQKtpUFg" type="2000" fontName="Lucida Grande" fontHeight="11" lineColor="0"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPAnFlEeK8x7zQKtpUFg" source="ShadowFigure"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPA3FlEeK8x7zQKtpUFg" key="ShadowFigure_Value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPBHFlEeK8x7zQKtpUFg" source="displayNameLabelIcon"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPBXFlEeK8x7zQKtpUFg" key="displayNameLabelIcon_value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPBnFlEeK8x7zQKtpUFg" source="QualifiedName"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPB3FlEeK8x7zQKtpUFg" key="QualifiedNameDepth" value="1000"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPCHFlEeK8x7zQKtpUFg" type="2001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPCXFlEeK8x7zQKtpUFg" width="700" height="13"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPCnFlEeK8x7zQKtpUFg" type="2002"> + <children xmi:type="notation:Shape" xmi:id="_PIxPC3FlEeK8x7zQKtpUFg" type="3000" fontName="Lucida Grande" fontHeight="11" lineColor="0"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPDHFlEeK8x7zQKtpUFg" source="ShadowFigure"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPDXFlEeK8x7zQKtpUFg" key="ShadowFigure_Value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPDnFlEeK8x7zQKtpUFg" source="displayNameLabelIcon"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPD3FlEeK8x7zQKtpUFg" key="displayNameLabelIcon_value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPEHFlEeK8x7zQKtpUFg" source="QualifiedName"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPEXFlEeK8x7zQKtpUFg" key="QualifiedNameDepth" value="1000"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPEnFlEeK8x7zQKtpUFg" source="RegionAnnotationKey"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPE3FlEeK8x7zQKtpUFg" key="RegionZoneKey" value="L"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPFHFlEeK8x7zQKtpUFg" type="3002"> + <children xmi:type="notation:Shape" xmi:id="_PIxPFXFlEeK8x7zQKtpUFg" type="8000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPFnFlEeK8x7zQKtpUFg" type="8001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPF3FlEeK8x7zQKtpUFg" x="25" y="3"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPGHFlEeK8x7zQKtpUFg" type="8002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPGXFlEeK8x7zQKtpUFg" x="25" y="-10"/> + </children> + <element xmi:type="uml:Pseudostate" href="model.uml#_PI4j7nFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPGnFlEeK8x7zQKtpUFg" x="51" y="53"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIxPG3FlEeK8x7zQKtpUFg" type="6000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPHHFlEeK8x7zQKtpUFg" type="6001"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPHXFlEeK8x7zQKtpUFg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPHnFlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:State" href="model.uml#_PI4j73FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPH3FlEeK8x7zQKtpUFg" x="96" y="164"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIxPIHFlEeK8x7zQKtpUFg" type="6000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPIXFlEeK8x7zQKtpUFg" type="6001"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPInFlEeK8x7zQKtpUFg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPI3FlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:State" href="model.uml#_PI4j8HFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPJHFlEeK8x7zQKtpUFg" x="240" y="164"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIxPJXFlEeK8x7zQKtpUFg" type="5000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPJnFlEeK8x7zQKtpUFg" type="5001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPJ3FlEeK8x7zQKtpUFg" x="25" y="3"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPKHFlEeK8x7zQKtpUFg" type="5002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPKXFlEeK8x7zQKtpUFg" x="25" y="-10"/> + </children> + <element xmi:type="uml:FinalState" href="model.uml#_PI4j8XFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPKnFlEeK8x7zQKtpUFg" x="195" y="30"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPK3FlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:Region" href="model.uml#_PI4j6nFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPLHFlEeK8x7zQKtpUFg" width="350" height="287"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIxPLXFlEeK8x7zQKtpUFg" type="3000"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIxPLnFlEeK8x7zQKtpUFg" source="RegionAnnotationKey"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIxPL3FlEeK8x7zQKtpUFg" key="RegionZoneKey" value="R"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPMHFlEeK8x7zQKtpUFg" type="3002"> + <children xmi:type="notation:Shape" xmi:id="_PIxPMXFlEeK8x7zQKtpUFg" type="6000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPMnFlEeK8x7zQKtpUFg" type="6001"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPM3FlEeK8x7zQKtpUFg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPNHFlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:State" href="model.uml#_PI4j-HFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPNXFlEeK8x7zQKtpUFg" x="79" y="110"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIxPNnFlEeK8x7zQKtpUFg" type="6000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPN3FlEeK8x7zQKtpUFg" type="6001"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPOHFlEeK8x7zQKtpUFg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPOXFlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:State" href="model.uml#_PI4j-XFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPOnFlEeK8x7zQKtpUFg" x="205" y="119"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIxPO3FlEeK8x7zQKtpUFg" type="9000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPPHFlEeK8x7zQKtpUFg" type="9001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPPXFlEeK8x7zQKtpUFg" x="25" y="3"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPPnFlEeK8x7zQKtpUFg" type="9002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPP3FlEeK8x7zQKtpUFg" x="25" y="-10"/> + </children> + <element xmi:type="uml:Pseudostate" href="model.uml#_PI4j-nFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPQHFlEeK8x7zQKtpUFg" x="168" y="49"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIxPQXFlEeK8x7zQKtpUFg" type="10000"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPQnFlEeK8x7zQKtpUFg" type="10001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPQ3FlEeK8x7zQKtpUFg" x="25" y="3"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPRHFlEeK8x7zQKtpUFg" type="10002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPRXFlEeK8x7zQKtpUFg" x="25" y="-10"/> + </children> + <element xmi:type="uml:Pseudostate" href="model.uml#_PI4j-3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPRnFlEeK8x7zQKtpUFg" x="173" y="202"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPR3FlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:Region" href="model.uml#_PI4j8nFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPSHFlEeK8x7zQKtpUFg" x="350" width="350" height="287"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPSXFlEeK8x7zQKtpUFg" y="13" width="700" height="287"/> + </children> + <element xmi:type="uml:StateMachine" href="model.uml#_PI4j6XFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIxPSnFlEeK8x7zQKtpUFg" x="30" y="30" width="700" height="300"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_PIxPS3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:StateMachine" href="model.uml#_PI4j6XFlEeK8x7zQKtpUFg"/> + <edges xmi:type="notation:Connector" xmi:id="_PIxPTHFlEeK8x7zQKtpUFg" type="7000" source="_PIxPFXFlEeK8x7zQKtpUFg" target="_PIxPG3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPTXFlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPTnFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPT3FlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPUHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPUXFlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPUnFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIxPU3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j63FlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIxPVHFlEeK8x7zQKtpUFg" points="[4, 10, -51, -111]$[52, 101, -3, -20]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIxPVXFlEeK8x7zQKtpUFg" type="7000" source="_PIxPG3FlEeK8x7zQKtpUFg" target="_PIxPIHFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPVnFlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPV3FlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPWHFlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIxPWXFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIxPWnFlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2EHFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIx2EXFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j7HFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIx2EnFlEeK8x7zQKtpUFg" points="[20, 7, -105, 6]$[128, 21, 3, 20]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIx2E3FlEeK8x7zQKtpUFg" type="7000" source="_PIxPIHFlEeK8x7zQKtpUFg" target="_PIxPQXFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2FHFlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2FXFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2FnFlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2F3FlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2GHFlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2GXFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIx2GnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j7XFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIx2G3FlEeK8x7zQKtpUFg" points="[20, 1, -267, -21]$[287, 17, 0, -5]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIx2HHFlEeK8x7zQKtpUFg" type="7000" source="_PIxPQXFlEeK8x7zQKtpUFg" target="_PIxPMXFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2HXFlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2HnFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2H3FlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2IHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2IXFlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2InFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIx2I3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j83FlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIx2JHFlEeK8x7zQKtpUFg" points="[-2, -2, 77, 72]$[-74, -94, 5, -20]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIx2JXFlEeK8x7zQKtpUFg" id="(0.5,0.2)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIx2JnFlEeK8x7zQKtpUFg" type="7000" source="_PIxPQXFlEeK8x7zQKtpUFg" target="_PIxPNnFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2J3FlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2KHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2KXFlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2KnFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2K3FlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2LHFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIx2LXFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j9HFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIx2LnFlEeK8x7zQKtpUFg" points="[5, -6, -49, 50]$[58, -48, 4, 8]"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIx2L3FlEeK8x7zQKtpUFg" id="(0.675,0.8)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIx2MHFlEeK8x7zQKtpUFg" type="7000" source="_PIxPMXFlEeK8x7zQKtpUFg" target="_PIxPO3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2MXFlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2MnFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2M3FlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2NHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2NXFlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2NnFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIx2N3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j9XFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIx2OHFlEeK8x7zQKtpUFg" points="[6, -5, -72, 54]$[76, -58, -2, 1]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIx2OXFlEeK8x7zQKtpUFg" id="(0.325,0.125)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIx2OnFlEeK8x7zQKtpUFg" id="(0.2,0.7)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIx2O3FlEeK8x7zQKtpUFg" type="7000" source="_PIxPNnFlEeK8x7zQKtpUFg" target="_PIxPO3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2PHFlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2PXFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2PnFlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2P3FlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2QHFlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2QXFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIx2QnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j9nFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIx2Q3FlEeK8x7zQKtpUFg" points="[-13, -20, 39, 65]$[-52, -80, 0, 5]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIx2RHFlEeK8x7zQKtpUFg" type="7000" source="_PIxPO3FlEeK8x7zQKtpUFg" target="_PIxPJXFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2RXFlEeK8x7zQKtpUFg" type="7001"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2RnFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2R3FlEeK8x7zQKtpUFg" type="7002"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2SHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIx2SXFlEeK8x7zQKtpUFg" type="7003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIx2SnFlEeK8x7zQKtpUFg" y="60"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIx2S3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Transition" href="model.uml#_PI4j93FlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIx2THFlEeK8x7zQKtpUFg" points="[-5, -1, 313, 13]$[-315, -4, 3, 10]"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_PIzrQHFlEeK8x7zQKtpUFg" type="PapyrusUMLActivityDiagram" name="activity2" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_PIzrQXFlEeK8x7zQKtpUFg" type="2001" fontName="Lucida Grande" fontHeight="11" lineColor="0"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIzrQnFlEeK8x7zQKtpUFg" source="ShadowFigure"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIzrQ3FlEeK8x7zQKtpUFg" key="ShadowFigure_Value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIzrRHFlEeK8x7zQKtpUFg" source="displayNameLabelIcon"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIzrRXFlEeK8x7zQKtpUFg" key="displayNameLabelIcon_value" value="false"/> + </eAnnotations> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PIzrRnFlEeK8x7zQKtpUFg" source="QualifiedName"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PIzrR3FlEeK8x7zQKtpUFg" key="QualifiedNameDepth" value="1000"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrSHFlEeK8x7zQKtpUFg" type="5001"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrSXFlEeK8x7zQKtpUFg" type="7001"> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIzrSnFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIzrS3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrTHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrTXFlEeK8x7zQKtpUFg" type="7002"> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIzrTnFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIzrT3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrUHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrUXFlEeK8x7zQKtpUFg" type="7003"> + <styles xmi:type="notation:SortingStyle" xmi:id="_PIzrUnFlEeK8x7zQKtpUFg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PIzrU3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrVHFlEeK8x7zQKtpUFg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrVXFlEeK8x7zQKtpUFg" type="7004"> + <children xmi:type="notation:Shape" xmi:id="_PIzrVnFlEeK8x7zQKtpUFg" type="3004"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrV3FlEeK8x7zQKtpUFg" type="5080"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrWHFlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzrWXFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:InitialNode" href="model.uml#_PI4kFnFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrWnFlEeK8x7zQKtpUFg" x="45" y="84"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIzrW3FlEeK8x7zQKtpUFg" type="3067"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrXHFlEeK8x7zQKtpUFg" type="5118"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrXXFlEeK8x7zQKtpUFg" type="7006"> + <children xmi:type="notation:Shape" xmi:id="_PIzrXnFlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrX3FlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzrYHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4kGHFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrYXFlEeK8x7zQKtpUFg" x="85" y="100"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIzrYnFlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrY3FlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzrZHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4kGXFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrZXFlEeK8x7zQKtpUFg" x="85" y="268"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrZnFlEeK8x7zQKtpUFg"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzrZ3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ActivityPartition" href="model.uml#_PI4j_XFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzraHFlEeK8x7zQKtpUFg" x="283" y="-6" width="244" height="397"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIzraXFlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzranFlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzra3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4kF3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrbHFlEeK8x7zQKtpUFg" x="106" y="210"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIzrbXFlEeK8x7zQKtpUFg" type="3007"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrbnFlEeK8x7zQKtpUFg" type="5003"/> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzrb3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:OpaqueAction" href="model.uml#_PI4kGnFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrcHFlEeK8x7zQKtpUFg" x="670" y="210"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIzrcXFlEeK8x7zQKtpUFg" type="3005"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrcnFlEeK8x7zQKtpUFg" type="5081"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrc3FlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzrdHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ActivityFinalNode" href="model.uml#_PI4kG3FlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrdXFlEeK8x7zQKtpUFg" x="742" y="84"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIzrdnFlEeK8x7zQKtpUFg" type="3040"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrd3FlEeK8x7zQKtpUFg" type="5100"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzreHFlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzreXFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ForkNode" href="model.uml#_PI4kHHFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrenFlEeK8x7zQKtpUFg" x="229" y="210"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PIzre3FlEeK8x7zQKtpUFg" type="3041"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrfHFlEeK8x7zQKtpUFg" type="5042"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrfXFlEeK8x7zQKtpUFg" y="5"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrfnFlEeK8x7zQKtpUFg" type="5101"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrf3FlEeK8x7zQKtpUFg" y="5"/> + </children> + <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_PIzrgHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:JoinNode" href="model.uml#_PI4kHXFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrgXFlEeK8x7zQKtpUFg" x="598" y="210"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrgnFlEeK8x7zQKtpUFg"/> + </children> + <element xmi:type="uml:Activity" href="model.uml#_PI4j_HFlEeK8x7zQKtpUFg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PIzrg3FlEeK8x7zQKtpUFg"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_PIzrhHFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:Activity" href="model.uml#_PI4j_HFlEeK8x7zQKtpUFg"/> + <edges xmi:type="notation:Connector" xmi:id="_PIzrhXFlEeK8x7zQKtpUFg" type="4004" source="_PIzrVnFlEeK8x7zQKtpUFg" target="_PIzraXFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrhnFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrh3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzriHFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzriXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrinFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzri3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrjHFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrjXFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIzrjnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4j_nFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIzrj3FlEeK8x7zQKtpUFg" points="[4, 8, -63, -118]$[51, 117, -16, -9]"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PIzrkHFlEeK8x7zQKtpUFg" id="(0.22857142857142856,0.25)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIzrkXFlEeK8x7zQKtpUFg" type="4004" source="_PIzraXFlEeK8x7zQKtpUFg" target="_PIzrdnFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrknFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrk3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrlHFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrlXFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrlnFlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrl3FlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrmHFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PIzrmXFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PIzrmnFlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4kAXFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PIzrm3FlEeK8x7zQKtpUFg" points="[35, 0, -58, 0]$[88, 0, -5, 0]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PIzrnHFlEeK8x7zQKtpUFg" type="4004" source="_PIzrdnFlEeK8x7zQKtpUFg" target="_PIzrXnFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PIzrnXFlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SUHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SUXFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SUnFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SU3FlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SVHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SVXFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SVnFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PI0SV3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4kBHFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PI0SWHFlEeK8x7zQKtpUFg" points="[4, -2, -169, 83]$[138, -80, -35, 5]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PI0SWXFlEeK8x7zQKtpUFg" id="(0.6,0.15)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PI0SWnFlEeK8x7zQKtpUFg" type="4004" source="_PIzrdnFlEeK8x7zQKtpUFg" target="_PIzrYnFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SW3FlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SXHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SXXFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SXnFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SX3FlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SYHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SYXFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SYnFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PI0SY3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4kB3FlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PI0SZHFlEeK8x7zQKtpUFg" points="[5, 2, -150, -71]$[139, 73, -16, 0]"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PI0SZXFlEeK8x7zQKtpUFg" id="(0.22857142857142856,0.525)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PI0SZnFlEeK8x7zQKtpUFg" type="4004" source="_PIzrXnFlEeK8x7zQKtpUFg" target="_PIzre3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SZ3FlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SaHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SaXFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SanFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0Sa3FlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SbHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SbXFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SbnFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PI0Sb3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4kCnFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PI0ScHFlEeK8x7zQKtpUFg" points="[16, 8, -160, -85]$[176, 73, 0, -20]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PI0ScXFlEeK8x7zQKtpUFg" id="(0.7714285714285715,0.65)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PI0ScnFlEeK8x7zQKtpUFg" type="4004" source="_PIzrYnFlEeK8x7zQKtpUFg" target="_PIzre3FlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0Sc3FlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SdHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SdXFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SdnFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0Sd3FlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SeHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SeXFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SenFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PI0Se3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4kDXFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PI0SfHFlEeK8x7zQKtpUFg" points="[17, -7, -160, 65]$[175, -52, -2, 20]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PI0SfXFlEeK8x7zQKtpUFg" id="(0.7571428571428571,0.5)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PI0SfnFlEeK8x7zQKtpUFg" type="4004" source="_PIzre3FlEeK8x7zQKtpUFg" target="_PIzrbXFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0Sf3FlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SgHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SgXFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SgnFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0Sg3FlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0ShHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0ShXFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0ShnFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PI0Sh3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4kEHFlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PI0SiHFlEeK8x7zQKtpUFg" points="[5, -1, -97, 0]$[85, -3, -17, -2]"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PI0SiXFlEeK8x7zQKtpUFg" id="(0.24285714285714285,0.45)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PI0SinFlEeK8x7zQKtpUFg" type="4004" source="_PIzrbXFlEeK8x7zQKtpUFg" target="_PIzrcXFlEeK8x7zQKtpUFg"> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0Si3FlEeK8x7zQKtpUFg" visible="false" type="6003"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SjHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SjXFlEeK8x7zQKtpUFg" visible="false" type="6004"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SjnFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0Sj3FlEeK8x7zQKtpUFg" type="6009"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SkHFlEeK8x7zQKtpUFg" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_PI0SkXFlEeK8x7zQKtpUFg" type="6011"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PI0SknFlEeK8x7zQKtpUFg" y="-20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_PI0Sk3FlEeK8x7zQKtpUFg"/> + <element xmi:type="uml:ControlFlow" href="model.uml#_PI4kE3FlEeK8x7zQKtpUFg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PI0SlHFlEeK8x7zQKtpUFg" points="[-2, -9, 12, 115]$[-14, -114, 0, 10]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PI0SlXFlEeK8x7zQKtpUFg" id="(0.4,0.225)"/> + </edges> + </notation:Diagram> +</xmi:XMI> diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.uml b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.uml new file mode 100644 index 00000000000..c601b47a595 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/resources/model.uml @@ -0,0 +1,136 @@ +<?xml version="1.0" encoding="UTF-8"?> +<uml:Model xmi:version="20110701" xmlns:xmi="http://www.omg.org/spec/XMI/20110701" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xmi:id="_PI4jwHFlEeK8x7zQKtpUFg" name="model"> + <packageImport xmi:type="uml:PackageImport" xmi:id="_PI4jwXFlEeK8x7zQKtpUFg"> + <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/> + </packageImport> + <packagedElement xmi:type="uml:Class" xmi:id="_PI4jwnFlEeK8x7zQKtpUFg" name="Foo" classifierBehavior="_PI4j_HFlEeK8x7zQKtpUFg"> + <ownedAttribute xmi:type="uml:Property" xmi:id="_PI4jw3FlEeK8x7zQKtpUFg" name="bar" type="_PI4kHnFlEeK8x7zQKtpUFg" association="_PI4kIHFlEeK8x7zQKtpUFg"> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PI4jxHFlEeK8x7zQKtpUFg" value="1"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PI4jxXFlEeK8x7zQKtpUFg" value="1"/> + </ownedAttribute> + <ownedBehavior xmi:type="uml:Activity" xmi:id="_PI4jxnFlEeK8x7zQKtpUFg" name="Activity1" group="_PI4jx3FlEeK8x7zQKtpUFg _PI4jy3FlEeK8x7zQKtpUFg" node="_PI4j5HFlEeK8x7zQKtpUFg _PI4j5XFlEeK8x7zQKtpUFg _PI4j5nFlEeK8x7zQKtpUFg _PI4j53FlEeK8x7zQKtpUFg _PI4j6HFlEeK8x7zQKtpUFg"> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4jzHFlEeK8x7zQKtpUFg" name="ControlFlow1" source="_PI4j5HFlEeK8x7zQKtpUFg" target="_PI4jyHFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4jzXFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4jznFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4jz3FlEeK8x7zQKtpUFg" name="ControlFlow2" source="_PI4jyHFlEeK8x7zQKtpUFg" target="_PI4jyXFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j0HFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4j0XFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4j0nFlEeK8x7zQKtpUFg" name="ControlFlow3" source="_PI4jyXFlEeK8x7zQKtpUFg" target="_PI4jynFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j03FlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4j1HFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4j1XFlEeK8x7zQKtpUFg" name="ControlFlow4" source="_PI4jynFlEeK8x7zQKtpUFg" target="_PI4j5nFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j1nFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4j13FlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4j2HFlEeK8x7zQKtpUFg" name="ControlFlow5" source="_PI4jynFlEeK8x7zQKtpUFg" target="_PI4j53FlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j2XFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4j2nFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4j23FlEeK8x7zQKtpUFg" name="ControlFlow6" source="_PI4j53FlEeK8x7zQKtpUFg" target="_PI4j6HFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j3HFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4j3XFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4j3nFlEeK8x7zQKtpUFg" name="ControlFlow7" source="_PI4j5nFlEeK8x7zQKtpUFg" target="_PI4j6HFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j33FlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4j4HFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4j4XFlEeK8x7zQKtpUFg" name="ControlFlow8" source="_PI4j6HFlEeK8x7zQKtpUFg" target="_PI4j5XFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j4nFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4j43FlEeK8x7zQKtpUFg"/> + </edge> + <group xmi:type="uml:StructuredActivityNode" xmi:id="_PI4jx3FlEeK8x7zQKtpUFg" name="StructuredActivityNode1"> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4jyHFlEeK8x7zQKtpUFg" name="OpaqueAction1" outgoing="_PI4jz3FlEeK8x7zQKtpUFg" incoming="_PI4jzHFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4jyXFlEeK8x7zQKtpUFg" name="OpaqueAction2" outgoing="_PI4j0nFlEeK8x7zQKtpUFg" incoming="_PI4jz3FlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:DecisionNode" xmi:id="_PI4jynFlEeK8x7zQKtpUFg" name="DecisionNode1" outgoing="_PI4j1XFlEeK8x7zQKtpUFg _PI4j2HFlEeK8x7zQKtpUFg" incoming="_PI4j0nFlEeK8x7zQKtpUFg"/> + </group> + <group xmi:type="uml:ActivityPartition" xmi:id="_PI4jy3FlEeK8x7zQKtpUFg" name="ActivityPartition1" node="_PI4j5nFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:InitialNode" xmi:id="_PI4j5HFlEeK8x7zQKtpUFg" name="InitialNode1" outgoing="_PI4jzHFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:ActivityFinalNode" xmi:id="_PI4j5XFlEeK8x7zQKtpUFg" name="ActivityFinalNode1" incoming="_PI4j4XFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4j5nFlEeK8x7zQKtpUFg" name="OpaqueAction1" inPartition="_PI4jy3FlEeK8x7zQKtpUFg" outgoing="_PI4j3nFlEeK8x7zQKtpUFg" incoming="_PI4j1XFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4j53FlEeK8x7zQKtpUFg" name="OpaqueAction2" outgoing="_PI4j23FlEeK8x7zQKtpUFg" incoming="_PI4j2HFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:MergeNode" xmi:id="_PI4j6HFlEeK8x7zQKtpUFg" name="MergeNode1" outgoing="_PI4j4XFlEeK8x7zQKtpUFg" incoming="_PI4j23FlEeK8x7zQKtpUFg _PI4j3nFlEeK8x7zQKtpUFg"/> + </ownedBehavior> + <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_PI4j6XFlEeK8x7zQKtpUFg" name="StateMachine1"> + <region xmi:type="uml:Region" xmi:id="_PI4j6nFlEeK8x7zQKtpUFg" name="Region1"> + <transition xmi:type="uml:Transition" xmi:id="_PI4j63FlEeK8x7zQKtpUFg" name="Transition0" source="_PI4j7nFlEeK8x7zQKtpUFg" target="_PI4j73FlEeK8x7zQKtpUFg"/> + <transition xmi:type="uml:Transition" xmi:id="_PI4j7HFlEeK8x7zQKtpUFg" name="Transition1" source="_PI4j73FlEeK8x7zQKtpUFg" target="_PI4j8HFlEeK8x7zQKtpUFg"/> + <transition xmi:type="uml:Transition" xmi:id="_PI4j7XFlEeK8x7zQKtpUFg" name="Transition2" source="_PI4j8HFlEeK8x7zQKtpUFg" target="_PI4j-3FlEeK8x7zQKtpUFg"/> + <subvertex xmi:type="uml:Pseudostate" xmi:id="_PI4j7nFlEeK8x7zQKtpUFg" name="Initial0"/> + <subvertex xmi:type="uml:State" xmi:id="_PI4j73FlEeK8x7zQKtpUFg" name="State0"/> + <subvertex xmi:type="uml:State" xmi:id="_PI4j8HFlEeK8x7zQKtpUFg" name="State1"/> + <subvertex xmi:type="uml:FinalState" xmi:id="_PI4j8XFlEeK8x7zQKtpUFg" name="FinalState0"/> + </region> + <region xmi:type="uml:Region" xmi:id="_PI4j8nFlEeK8x7zQKtpUFg" name="Region0"> + <transition xmi:type="uml:Transition" xmi:id="_PI4j83FlEeK8x7zQKtpUFg" name="Transition0" source="_PI4j-3FlEeK8x7zQKtpUFg" target="_PI4j-HFlEeK8x7zQKtpUFg"/> + <transition xmi:type="uml:Transition" xmi:id="_PI4j9HFlEeK8x7zQKtpUFg" name="Transition1" source="_PI4j-3FlEeK8x7zQKtpUFg" target="_PI4j-XFlEeK8x7zQKtpUFg"/> + <transition xmi:type="uml:Transition" xmi:id="_PI4j9XFlEeK8x7zQKtpUFg" name="Transition2" source="_PI4j-HFlEeK8x7zQKtpUFg" target="_PI4j-nFlEeK8x7zQKtpUFg"/> + <transition xmi:type="uml:Transition" xmi:id="_PI4j9nFlEeK8x7zQKtpUFg" name="Transition3" source="_PI4j-XFlEeK8x7zQKtpUFg" target="_PI4j-nFlEeK8x7zQKtpUFg"/> + <transition xmi:type="uml:Transition" xmi:id="_PI4j93FlEeK8x7zQKtpUFg" name="Transition4" source="_PI4j-nFlEeK8x7zQKtpUFg" target="_PI4j8XFlEeK8x7zQKtpUFg"/> + <subvertex xmi:type="uml:State" xmi:id="_PI4j-HFlEeK8x7zQKtpUFg" name="State0"/> + <subvertex xmi:type="uml:State" xmi:id="_PI4j-XFlEeK8x7zQKtpUFg" name="State1"/> + <subvertex xmi:type="uml:Pseudostate" xmi:id="_PI4j-nFlEeK8x7zQKtpUFg" name="Join0" kind="join"/> + <subvertex xmi:type="uml:Pseudostate" xmi:id="_PI4j-3FlEeK8x7zQKtpUFg" name="Fork0" kind="fork"/> + </region> + </ownedBehavior> + <ownedBehavior xmi:type="uml:Activity" xmi:id="_PI4j_HFlEeK8x7zQKtpUFg" name="Activity2" group="_PI4j_XFlEeK8x7zQKtpUFg" node="_PI4kFnFlEeK8x7zQKtpUFg _PI4kF3FlEeK8x7zQKtpUFg _PI4kGHFlEeK8x7zQKtpUFg _PI4kGXFlEeK8x7zQKtpUFg _PI4kGnFlEeK8x7zQKtpUFg _PI4kG3FlEeK8x7zQKtpUFg _PI4kHHFlEeK8x7zQKtpUFg _PI4kHXFlEeK8x7zQKtpUFg"> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4j_nFlEeK8x7zQKtpUFg" name="ControlFlow1" source="_PI4kFnFlEeK8x7zQKtpUFg" target="_PI4kF3FlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4j_3FlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kAHFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4kAXFlEeK8x7zQKtpUFg" name="ControlFlow2" source="_PI4kF3FlEeK8x7zQKtpUFg" target="_PI4kHHFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4kAnFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kA3FlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4kBHFlEeK8x7zQKtpUFg" name="ControlFlow3" source="_PI4kHHFlEeK8x7zQKtpUFg" target="_PI4kGHFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4kBXFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kBnFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4kB3FlEeK8x7zQKtpUFg" name="ControlFlow4" source="_PI4kHHFlEeK8x7zQKtpUFg" target="_PI4kGXFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4kCHFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kCXFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4kCnFlEeK8x7zQKtpUFg" name="ControlFlow5" source="_PI4kGHFlEeK8x7zQKtpUFg" target="_PI4kHXFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4kC3FlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kDHFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4kDXFlEeK8x7zQKtpUFg" name="ControlFlow6" source="_PI4kGXFlEeK8x7zQKtpUFg" target="_PI4kHXFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4kDnFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kD3FlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4kEHFlEeK8x7zQKtpUFg" name="ControlFlow7" source="_PI4kHXFlEeK8x7zQKtpUFg" target="_PI4kGnFlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4kEXFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kEnFlEeK8x7zQKtpUFg"/> + </edge> + <edge xmi:type="uml:ControlFlow" xmi:id="_PI4kE3FlEeK8x7zQKtpUFg" name="ControlFlow8" source="_PI4kGnFlEeK8x7zQKtpUFg" target="_PI4kG3FlEeK8x7zQKtpUFg"> + <guard xmi:type="uml:LiteralBoolean" xmi:id="_PI4kFHFlEeK8x7zQKtpUFg" value="true"/> + <weight xmi:type="uml:LiteralInteger" xmi:id="_PI4kFXFlEeK8x7zQKtpUFg"/> + </edge> + <group xmi:type="uml:ActivityPartition" xmi:id="_PI4j_XFlEeK8x7zQKtpUFg" name="ActivityPartition1" node="_PI4kGHFlEeK8x7zQKtpUFg _PI4kGXFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:InitialNode" xmi:id="_PI4kFnFlEeK8x7zQKtpUFg" name="InitialNode1" outgoing="_PI4j_nFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4kF3FlEeK8x7zQKtpUFg" name="OpaqueAction1" outgoing="_PI4kAXFlEeK8x7zQKtpUFg" incoming="_PI4j_nFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4kGHFlEeK8x7zQKtpUFg" name="OpaqueAction2" inPartition="_PI4j_XFlEeK8x7zQKtpUFg" outgoing="_PI4kCnFlEeK8x7zQKtpUFg" incoming="_PI4kBHFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4kGXFlEeK8x7zQKtpUFg" name="OpaqueAction3" inPartition="_PI4j_XFlEeK8x7zQKtpUFg" outgoing="_PI4kDXFlEeK8x7zQKtpUFg" incoming="_PI4kB3FlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:OpaqueAction" xmi:id="_PI4kGnFlEeK8x7zQKtpUFg" name="OpaqueAction4" outgoing="_PI4kE3FlEeK8x7zQKtpUFg" incoming="_PI4kEHFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:ActivityFinalNode" xmi:id="_PI4kG3FlEeK8x7zQKtpUFg" name="ActivityFinalNode1" incoming="_PI4kE3FlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:ForkNode" xmi:id="_PI4kHHFlEeK8x7zQKtpUFg" name="ForkNode1" outgoing="_PI4kBHFlEeK8x7zQKtpUFg _PI4kB3FlEeK8x7zQKtpUFg" incoming="_PI4kAXFlEeK8x7zQKtpUFg"/> + <node xmi:type="uml:JoinNode" xmi:id="_PI4kHXFlEeK8x7zQKtpUFg" name="JoinNode1" outgoing="_PI4kEHFlEeK8x7zQKtpUFg" incoming="_PI4kCnFlEeK8x7zQKtpUFg _PI4kDXFlEeK8x7zQKtpUFg"/> + </ownedBehavior> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_PI4kHnFlEeK8x7zQKtpUFg" name="Bar"> + <generalization xmi:type="uml:Generalization" xmi:id="_VZyEsIQqEeKq_f8GS5X7FQ"> + <general xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </generalization> + <ownedAttribute xmi:type="uml:Property" xmi:id="_PI4kH3FlEeK8x7zQKtpUFg" name="name"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Association" xmi:id="_PI4kIHFlEeK8x7zQKtpUFg" name="foo_bar" memberEnd="_PI4kIXFlEeK8x7zQKtpUFg _PI4jw3FlEeK8x7zQKtpUFg"> + <ownedEnd xmi:type="uml:Property" xmi:id="_PI4kIXFlEeK8x7zQKtpUFg" name="foo" type="_PI4jwnFlEeK8x7zQKtpUFg" association="_PI4kIHFlEeK8x7zQKtpUFg"> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PI4kInFlEeK8x7zQKtpUFg" value="1"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PI4kI3FlEeK8x7zQKtpUFg" value="1"/> + </ownedEnd> + </packagedElement> +</uml:Model> diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/editors/tests/BasicEditorTest.java b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/editors/tests/BasicEditorTest.java new file mode 100644 index 00000000000..5acaf5b4c06 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/editors/tests/BasicEditorTest.java @@ -0,0 +1,131 @@ +/***************************************************************************** + * Copyright (c) 2013 CEA LIST. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * CEA LIST - Initial API and implementation + *****************************************************************************/ +package org.eclipse.papyrus.cdo.internal.ui.editors.tests; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.junit.Assert.assertThat; + +import org.eclipse.emf.cdo.CDOObject; +import org.eclipse.emf.cdo.transaction.CDOTransaction; +import org.eclipse.emf.cdo.util.CDOUtil; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.gef.EditPart; +import org.eclipse.papyrus.cdo.internal.core.CDOUtils; +import org.eclipse.papyrus.cdo.internal.ui.expressions.CDOObjectPropertyTester; +import org.eclipse.papyrus.cdo.ui.tests.AbstractPapyrusCDOUITest; +import org.eclipse.uml2.uml.Class; +import org.junit.Test; + +/** + * This is the BasicEditorTest type. Enjoy. + */ +public class BasicEditorTest extends AbstractPapyrusCDOUITest { + + private static final Object[] NO_OBJECTS = {}; + + public BasicEditorTest() { + super(); + } + + @Test + public void editorOpens() { + openEditor(); + + Class foo = expectElement("Foo", Class.class); + EditPart editPart = expectEditPart(foo); + + assertThat(editPart.isActive(), is(true)); + } + + @Test + public void canLock() { + openEditor(); + + Class foo = expectElement("Foo", Class.class); + EditPart editPart = expectEditPart(foo); + + CDOObject cdoObject = (CDOObject)editPart.getAdapter(CDOObject.class); + boolean canLock = new CDOObjectPropertyTester().test(cdoObject, CDOObjectPropertyTester.CAN_LOCK, NO_OBJECTS, true); + assertThat(canLock, is(true)); + } + + @Test + public void isLockedLocally() { + openEditor(); + + Class foo = expectElement("Foo", Class.class); + EditPart editPart = expectEditPart(foo); + + getDawnEditorSupport().lockObject(editPart); + + CDOObject cdoObject = (CDOObject)editPart.getAdapter(CDOObject.class); + boolean isLocked = new CDOObjectPropertyTester().test(cdoObject, CDOObjectPropertyTester.IS_LOCKED_LOCALLY, NO_OBJECTS, true); + assertThat(isLocked, is(true)); + } + + @Test + public void isLockedRemotely() { + openEditor(); + + Class foo = expectElement("Foo", Class.class); + EditPart editPart = expectEditPart(foo); + + URI uri = EcoreUtil.getURI(foo); + + // open another transaction in which to lock the element + CDOTransaction transaction = createTransaction(); + EObject remote = transaction.getResourceSet().getEObject(uri, true); + assertThat(remote, notNullValue()); + CDOUtils.lock(CDOUtil.getCDOObject(remote)); + + // give the lock a chance to propagate + sleep(3); + + CDOObject cdoObject = (CDOObject)editPart.getAdapter(CDOObject.class); + boolean isLocked = new CDOObjectPropertyTester().test(cdoObject, CDOObjectPropertyTester.IS_LOCKED_REMOTELY, NO_OBJECTS, true); + assertThat(isLocked, is(true)); + } + + @Test + public void isConflicting() throws Exception { + + openEditor(); + + final Class foo = expectElement("Foo", Class.class); + EditPart editPart = expectEditPart(foo); + executeEdit(new Runnable() { + + public void run() { + foo.setName("Foo1"); + } + }); + + URI uri = EcoreUtil.getURI(foo); + + // open another transaction in which to lock the element + CDOTransaction transaction = createTransaction(); + Class remote = (Class)transaction.getResourceSet().getEObject(uri, true); + assertThat(remote, notNullValue()); + remote.setName("Foo2"); + transaction.commit(); + + // give the lock a chance to propagate + sleep(3); + + CDOObject cdoObject = (CDOObject)editPart.getAdapter(CDOObject.class); + boolean isConflicting = new CDOObjectPropertyTester().test(cdoObject, CDOObjectPropertyTester.IS_CONFLICTED, NO_OBJECTS, true); + assertThat(isConflicting, is(true)); + } +} diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/editors/tests/DawnEditorAdapterTest.java b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/editors/tests/DawnEditorAdapterTest.java new file mode 100644 index 00000000000..fd4d20914f6 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/editors/tests/DawnEditorAdapterTest.java @@ -0,0 +1,243 @@ +/***************************************************************************** + * Copyright (c) 2013 CEA LIST. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * CEA LIST - Initial API and implementation + *****************************************************************************/ +package org.eclipse.papyrus.cdo.internal.ui.editors.tests; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.not; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.hamcrest.CoreMatchers.sameInstance; +import static org.junit.Assert.assertThat; + +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.emf.cdo.dawn.editors.IDawnEditor; +import org.eclipse.emf.cdo.transaction.CDOTransaction; +import org.eclipse.emf.cdo.transaction.CDOTransactionFinishedEvent; +import org.eclipse.emf.cdo.view.CDOView; +import org.eclipse.gmf.runtime.diagram.ui.parts.IDiagramEditDomain; +import org.eclipse.net4j.util.event.IEvent; +import org.eclipse.net4j.util.event.IListener; +import org.eclipse.papyrus.cdo.internal.ui.editors.DawnEditorAdapter; +import org.eclipse.papyrus.cdo.internal.ui.editors.PapyrusGMFEditorSupport; +import org.eclipse.papyrus.cdo.ui.tests.AbstractPapyrusCDOUITest; +import org.eclipse.swt.graphics.Image; +import org.eclipse.ui.IEditorInput; +import org.eclipse.ui.IEditorPart; +import org.eclipse.ui.IEditorSite; +import org.eclipse.ui.IPropertyListener; +import org.eclipse.ui.IWorkbenchPart; +import org.eclipse.ui.IWorkbenchPartSite; +import org.eclipse.uml2.uml.Class; +import org.junit.Before; +import org.junit.Test; + +/** + * This is the DawnEditorAdapterTest type. Enjoy. + */ +public class DawnEditorAdapterTest extends AbstractPapyrusCDOUITest { + + private IDawnEditor fixture; + + @Test + public void testGetDawnEditor() { + assertThat(fixture, notNullValue()); + } + + @Test + public void testGetView() { + CDOTransaction transaction = getTransaction(getModelSet()); + assertThat(fixture.getView(), sameInstance((CDOView)transaction)); + } + + @Test + public void testGetContributorID() { + assertThat(fixture.getContributorID(), is("org.eclipse.papyrus.uml.diagram.clazz.part.UMLDiagramEditorID")); + } + + @Test + public void testSetDirty() { + getEditor().doSave(new NullProgressMonitor()); + assertThat(getEditor().isDirty(), is(false)); + + TestPropertyListener test = new TestPropertyListener(); + getDiagramEditor().addPropertyListener(test); + + fixture.setDirty(); + + assertThat(test.getAndClearPropertyID(), is(IEditorPart.PROP_DIRTY)); + } + + @Test + public void testGetAdapter() { + Object expected = getDiagramEditor().getAdapter(IDiagramEditDomain.class); + assertThat(expected, notNullValue()); + + Object adapter = fixture.getAdapter(IDiagramEditDomain.class); + assertThat(adapter, is(expected)); + } + + @Test + public void testIsDirty() { + final Class foo = expectElement("Foo", Class.class); + executeEdit(new Runnable() { + + public void run() { + foo.setName("Foo1"); + } + }); + + assertThat(fixture.isDirty(), is(true)); + + getEditor().doSave(new NullProgressMonitor()); + + assertThat(fixture.isDirty(), is(false)); + } + + @Test + public void testGetDawnEditorSupport() { + assertThat(fixture.getDawnEditorSupport(), is(PapyrusGMFEditorSupport.class)); + } + + @Test + public void testGetEditorInput() { + IEditorInput input = fixture.getEditorInput(); + assertThat(input, notNullValue()); + assertThat(input, is(getDiagramEditor().getEditorInput())); + } + + @Test + public void testGetEditorSite() { + IEditorSite site = fixture.getEditorSite(); + assertThat(site, notNullValue()); + assertThat(site, is(getDiagramEditor().getEditorSite())); + } + + @Test + public void testAddRemovePropertyListener() { + TestPropertyListener test = new TestPropertyListener(); + fixture.addPropertyListener(test); + + getEditor().doSave(new NullProgressMonitor()); + fixture.setDirty(); + + fixture.removePropertyListener(test); + + assertThat(test.getAndClearPropertyID(), is(IEditorPart.PROP_DIRTY)); + + getEditor().doSave(new NullProgressMonitor()); + fixture.setDirty(); + + assertThat(test.getAndClearPropertyID(), is(-1)); + } + + @Test + public void testGetSite() { + IWorkbenchPartSite site = fixture.getSite(); + assertThat(site, notNullValue()); + assertThat(site, is(getDiagramEditor().getSite())); + } + + @Test + public void testGetTitle() { + String title = fixture.getTitle(); + assertThat(title, notNullValue()); + assertThat(title, is(getDiagramEditor().getTitle())); + } + + @Test + public void testGetTitleImage() { + Image image = fixture.getTitleImage(); + assertThat(image, notNullValue()); + assertThat(image, is(getDiagramEditor().getTitleImage())); + } + + @Test + public void testGetTitleToolTip() { + String title = fixture.getTitleToolTip(); + assertThat(title, notNullValue()); + assertThat(title, is(getDiagramEditor().getTitleToolTip())); + } + + @Test + public void testSetFocus() { + getRepositoryExplorer().setFocus(); + flushDisplayEvents(); + + assertThat(getWorkbenchPage().getActivePart(), not((IWorkbenchPart)getEditor())); + + fixture.setFocus(); + flushDisplayEvents(); + + assertThat(getWorkbenchPage().getActivePart(), is((IWorkbenchPart)getEditor())); + } + + @Test + public void testDoSave() { + final Class foo = expectElement("Foo", Class.class); + executeEdit(new Runnable() { + + public void run() { + foo.setName("Foo1"); + } + }); + + class Test implements IListener { + + private volatile boolean committed; + + public void notifyEvent(IEvent event) { + if(event instanceof CDOTransactionFinishedEvent) { + committed = true; + } + } + + boolean getAndClearCommitted() { + boolean result = committed; + committed = false; + return result; + } + } + + Test test = new Test(); + getTransaction(getModelSet()).addListener(test); + + fixture.doSave(new NullProgressMonitor()); + sleep(3); // give the transaction some time to notify + + assertThat(test.getAndClearCommitted(), is(true)); + } + + // + // Test framework + // + + @Before + public void prepareEditor() { + openEditor(); + + fixture = DawnEditorAdapter.getDawnEditor(getDiagramEditor()); + } + + private static class TestPropertyListener implements IPropertyListener { + + private int propertyID = -1; + + public void propertyChanged(Object source, int propId) { + propertyID = propId; + } + + int getAndClearPropertyID() { + int result = propertyID; + propertyID = -1; + return result; + } + } +} diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/markers/tests/ModelValidationMarkersTest.java b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/markers/tests/ModelValidationMarkersTest.java new file mode 100644 index 00000000000..514b651599d --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/internal/ui/markers/tests/ModelValidationMarkersTest.java @@ -0,0 +1,217 @@ +/***************************************************************************** + * Copyright (c) 2013 CEA LIST. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * CEA LIST - Initial API and implementation + *****************************************************************************/ +package org.eclipse.papyrus.cdo.internal.ui.markers.tests; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.fail; + +import java.lang.ref.Reference; +import java.lang.ref.ReferenceQueue; +import java.lang.ref.WeakReference; +import java.lang.reflect.Field; +import java.util.List; + +import org.eclipse.core.commands.ExecutionException; +import org.eclipse.core.commands.operations.IUndoableOperation; +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.papyrus.cdo.ui.tests.AbstractPapyrusCDOUITest; +import org.eclipse.papyrus.cdo.validation.problems.EProblem; +import org.eclipse.papyrus.infra.core.services.ServiceException; +import org.eclipse.papyrus.infra.core.utils.ServiceUtils; +import org.eclipse.papyrus.infra.services.markerlistener.IPapyrusMarker; +import org.eclipse.papyrus.infra.services.markerlistener.MarkersMonitorService; +import org.eclipse.papyrus.infra.services.validation.commands.ValidateDelMarkersFromModelCommand; +import org.eclipse.papyrus.infra.services.validation.commands.ValidateModelCommand; +import org.eclipse.ui.PartInitException; +import org.junit.Before; +import org.junit.Test; + +import com.google.common.collect.Iterables; +import com.google.common.collect.Lists; + +/** + * This is the ModelValidationMarkersTest type. Enjoy. + */ +public class ModelValidationMarkersTest + extends AbstractPapyrusCDOUITest { + + public ModelValidationMarkersTest() { + super(); + } + + @Test + public void testCreateMarkers() { + openEditor(); + + validateModel(); + + flushDisplayEvents(); + + // get some marker + IPapyrusMarker marker = null; + try { + marker = Iterables.getFirst( + getMarkersMonitorService().getMarkers( + getUMLModel().eResource(), null, true), null); + assertThat("Did not find a marker.", marker, notNullValue()); + } catch (CoreException e) { + e.printStackTrace(); + fail("Could not get problem markers."); + } + } + + @Test + public void testDeleteMarkers() { + openEditor(); + + validateModel(); + + flushDisplayEvents(); + + // get the markers + List<IPapyrusMarker> markers = null; + try { + markers = Lists.newArrayList(getMarkersMonitorService().getMarkers( + getUMLModel().eResource(), null, true)); + assertThat("Did not find any markers.", markers.isEmpty(), + is(false)); + } catch (CoreException e) { + e.printStackTrace(); + fail("Could not get problem markers."); + } + + for (IPapyrusMarker next : markers) { + try { + next.delete(); + } catch (CoreException e) { + e.printStackTrace(); + fail("Could not delete problem marker."); + } + } + + try { + assertThat( + "Found markers.", + getMarkersMonitorService().getMarkers( + getUMLModel().eResource(), null, true).isEmpty(), is(true)); + } catch (CoreException e) { + e.printStackTrace(); + fail("Could not get problem markers."); + } + } + + @Test + public void testMemoryLeaksInValidation() + throws InterruptedException { + + openEditor(); + + validateModel(); + + flushDisplayEvents(); + + // get some marker + IPapyrusMarker marker = null; + try { + marker = Iterables.getFirst( + getMarkersMonitorService().getMarkers( + getUMLModel().eResource(), null, true), null); + assertThat("Did not find a marker.", marker, notNullValue()); + } catch (CoreException e) { + e.printStackTrace(); + fail("Could not get problem markers."); + } + + ReferenceQueue<Object> queue = new ReferenceQueue<Object>(); + List<Reference<Object>> references = Lists.newArrayList(); + references.add(new WeakReference<Object>(marker, queue)); + references.add(new WeakReference<Object>(getEProblem(marker), queue)); + + marker = null; + + // closing the editor should clean up all services, markers, etc. + closeEditor(); + + // try to force GC + for (int i = 0; i < 10; i++) { + System.gc(); + } + + // assert that the marker and its underlying EProblem are unreachable + for (int i = 0; i < 2; i++) { + Reference<?> ref = queue.remove(1000); + assertThat(references.remove(ref), is(true)); + } + } + + // + // Test framework + // + + @Before + public void ensureValidationView() + throws PartInitException { + getWorkbenchPage().showView( + "org.eclipse.papyrus.views.validation.ModelValidationView"); + } + + void execute(IUndoableOperation operation) { + try { + getWorkbenchPage().getWorkbenchWindow().getWorkbench() + .getOperationSupport().getOperationHistory() + .execute(operation, new NullProgressMonitor(), null); + } catch (ExecutionException e) { + e.printStackTrace(); + fail("Failed to execute operation: " + operation); + } + } + + void validateModel() { + execute(new ValidateModelCommand(getUMLModel())); + } + + void deleteMarkers() { + execute(new ValidateDelMarkersFromModelCommand(getUMLModel())); + } + + MarkersMonitorService getMarkersMonitorService() { + MarkersMonitorService result = null; + + try { + result = ServiceUtils.getInstance().getService( + MarkersMonitorService.class, getEditor().getServicesRegistry()); + } catch (ServiceException e) { + e.printStackTrace(); + fail("Failed to get MarkersMonitorService."); + } + + return result; + } + + EProblem getEProblem(IPapyrusMarker marker) { + EProblem result = null; + + try { + Field eProblemField = marker.getClass().getDeclaredField("problem"); + eProblemField.setAccessible(true); + result = (EProblem) eProblemField.get(marker); + } catch (Exception e) { + e.printStackTrace(); + fail("Failed to get EProblem wrapped by IPapyrusMarker."); + } + + return result; + } +} diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/ui/tests/AbstractPapyrusCDOUITest.java b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/ui/tests/AbstractPapyrusCDOUITest.java new file mode 100644 index 00000000000..59f1bed5556 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/ui/tests/AbstractPapyrusCDOUITest.java @@ -0,0 +1,357 @@ +/***************************************************************************** + * Copyright (c) 2013 CEA LIST. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * CEA LIST - Initial API and implementation + *****************************************************************************/ +package org.eclipse.papyrus.cdo.ui.tests; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.fail; + +import java.util.Iterator; +import java.util.List; + +import org.eclipse.emf.cdo.dawn.editors.IDawnEditor; +import org.eclipse.emf.cdo.dawn.editors.IDawnEditorSupport; +import org.eclipse.emf.cdo.dawn.gmf.util.DawnDiagramUpdater; +import org.eclipse.emf.cdo.transaction.CDOTransaction; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.emf.ecore.resource.ResourceSet; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.transaction.RecordingCommand; +import org.eclipse.emf.transaction.TransactionalEditingDomain; +import org.eclipse.gef.EditPart; +import org.eclipse.gmf.runtime.diagram.ui.editparts.DiagramEditPart; +import org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.DiagramDocumentEditor; +import org.eclipse.gmf.runtime.notation.Diagram; +import org.eclipse.gmf.runtime.notation.View; +import org.eclipse.papyrus.cdo.core.tests.AbstractPapyrusCDOTest; +import org.eclipse.papyrus.cdo.internal.ui.editors.PapyrusCDOEditorManager; +import org.eclipse.papyrus.cdo.internal.ui.views.ModelRepositoriesView; +import org.eclipse.papyrus.infra.core.editor.IMultiDiagramEditor; +import org.eclipse.papyrus.infra.core.resource.ModelSet; +import org.eclipse.swt.widgets.Display; +import org.eclipse.ui.IEditorPart; +import org.eclipse.ui.IPerspectiveDescriptor; +import org.eclipse.ui.IViewPart; +import org.eclipse.ui.IViewReference; +import org.eclipse.ui.IWorkbenchPage; +import org.eclipse.ui.PlatformUI; +import org.eclipse.uml2.uml.NamedElement; +import org.eclipse.uml2.uml.Namespace; +import org.eclipse.uml2.uml.Package; +import org.eclipse.uml2.uml.UMLPackage; +import org.junit.After; +import org.junit.Before; + +import com.google.common.base.Splitter; +import com.google.common.collect.Lists; + +/** + * This is the AbstractPapyrusCDOUITest type. Enjoy. + */ +public abstract class AbstractPapyrusCDOUITest + extends AbstractPapyrusCDOTest { + + public static final String PLUGIN_ID = "org.eclipse.papyrus.cdo.ui.tests"; + + protected static final String TEST_MODEL_NAME = "model.di"; + + protected static final String TEST_UML_NAME = "model.uml"; + + protected static final String TEST_NOTATION_NAME = "model.notation"; + + private IWorkbenchPage page; + + private List<IEditorPart> openedEditors = Lists.newArrayList(); + + private IMultiDiagramEditor lastEditor; + + private DiagramDocumentEditor lastDiagramEditor; + + public AbstractPapyrusCDOUITest() { + super(); + } + + @Before + public void initWorkbench() + throws Exception { + + page = PlatformUI.getWorkbench().getActiveWorkbenchWindow() + .getActivePage(); + + // ensure the Papyrus perspective + IPerspectiveDescriptor perspective = page + .getWorkbenchWindow() + .getWorkbench() + .getPerspectiveRegistry() + .findPerspectiveWithId("org.eclipse.papyrus.infra.core.perspective"); + if (!perspective.getId().equals(page.getPerspective().getId())) { + page.setPerspective(perspective); + } + + // minimize the Welcome view + for (IViewReference next : page.getViewReferences()) { + if ("org.eclipse.ui.internal.introview".equals(next.getId())) { + page.setPartState(next, IWorkbenchPage.STATE_MINIMIZED); + break; + } + } + + // bring the Repository Explorer forward + IViewPart reposView = page.showView(ModelRepositoriesView.ID); + page.activate(reposView); + + page.setEditorAreaVisible(true); + + flushDisplayEvents(); + } + + @Before + public void importTestModel() + throws Exception { + + CDOTransaction transaction = createTransaction(); + ResourceSet rset = transaction.getResourceSet(); + + importResource(transaction, TEST_MODEL_NAME, TEST_MODEL_NAME); + importResource(transaction, TEST_UML_NAME, TEST_UML_NAME); + importResource(transaction, TEST_NOTATION_NAME, TEST_NOTATION_NAME); + + getPapyrusRepository().commit(rset); + getPapyrusRepository().close(rset); + } + + @After + public void closeEditors() { + flushDisplayEvents(); + + for (IEditorPart next : openedEditors) { + try { + page.closeEditor(next, false); + } catch (Exception e) { + e.printStackTrace(); + } + + flushDisplayEvents(); + } + + openedEditors.clear(); + + lastEditor = null; + lastDiagramEditor = null; + + flushDisplayEvents(); + } + + private Resource importResource(CDOTransaction transaction, String srcPath, + String dstPath) { + ResourceSet rset = transaction.getResourceSet(); + + Resource xml = rset.getResource(URI.createPlatformPluginURI(PLUGIN_ID + + "/resources/" + srcPath, true), true); + + EcoreUtil.resolveAll(xml); + + Resource result = transaction + .getOrCreateResource(getResourcePath(dstPath)); + result.getContents().clear(); + result.getContents().addAll(xml.getContents()); + + xml.unload(); + rset.getResources().remove(xml); + + return result; + } + + protected IWorkbenchPage getWorkbenchPage() { + return page; + } + + protected IViewPart getRepositoryExplorer() { + return page.findView(ModelRepositoriesView.ID); + } + + protected IEditorPart openEditor() { + URI uri = getTestResourceURI(TEST_MODEL_NAME); + + try { + IEditorPart result = PapyrusCDOEditorManager.INSTANCE.openEditor( + getWorkbenchPage(), uri, TEST_MODEL_NAME); + + openedEditors.add(result); + + assertThat(result, is(IMultiDiagramEditor.class)); + + lastEditor = (IMultiDiagramEditor) result; + if (lastEditor.getActiveEditor() instanceof DiagramDocumentEditor) { + lastDiagramEditor = (DiagramDocumentEditor) lastEditor + .getActiveEditor(); + } + + flushDisplayEvents(); + + return result; + } catch (Exception e) { + e.printStackTrace(); + fail("Failed to open editor on test model."); + return null; // make the compiler happy + } + } + + protected void closeEditor() { + closeEditor(lastEditor); + + lastDiagramEditor = null; + lastEditor = null; + } + + protected void closeEditor(IEditorPart editor) { + page.closeEditor(editor, false); + openedEditors.remove(editor); + + flushDisplayEvents(); + } + + protected void flushDisplayEvents() { + while (Display.getCurrent().readAndDispatch()) { + // pass + } + } + + protected void sleep(int seconds) { + for (int i = 0; i < seconds; i++) { + try { + Thread.sleep(1000); + } catch (Exception e) { + // fine. So, we don't sleep so long + } + + flushDisplayEvents(); + } + } + + protected IDawnEditor getDawnEditor() { + return (IDawnEditor) lastEditor.getAdapter(IDawnEditor.class); + } + + protected IDawnEditorSupport getDawnEditorSupport() { + return getDawnEditor().getDawnEditorSupport(); + } + + protected void executeEdit(final Runnable edit) { + TransactionalEditingDomain domain = getModelSet() + .getTransactionalEditingDomain(); + + domain.getCommandStack().execute(new RecordingCommand(domain, "Edit") { + + @Override + protected void doExecute() { + edit.run(); + } + }); + } + + protected ModelSet getModelSet() { + ModelSet result = null; + + try { + result = lastEditor.getServicesRegistry() + .getService(ModelSet.class); + } catch (Exception e) { + e.printStackTrace(); + fail("Failed to get ModelSet from current editor."); + } + + return result; + } + + protected Package getUMLModel() { + Resource resource = getModelSet().getResource( + getTestResourceURI(TEST_UML_NAME), true); + assertThat("UML model not found.", resource, notNullValue()); + return (Package) EcoreUtil.getObjectByType(resource.getContents(), + UMLPackage.Literals.PACKAGE); + } + + protected <N extends NamedElement> N findElement(String relativeName, + Class<N> type) { + + N result = null; + Namespace namespace = getUMLModel(); + + for (Iterator<String> iter = Splitter.on(NamedElement.SEPARATOR) + .split(relativeName).iterator(); iter.hasNext();) { + + NamedElement next = namespace.getMember(iter.next()); + if (next instanceof Namespace) { + namespace = (Namespace) next; + } + + if (!iter.hasNext()) { + if (type.isInstance(next)) { + result = type.cast(next); + } + } + } + + return result; + } + + protected <N extends NamedElement> N expectElement(String relativeName, + Class<N> type) { + + N result = findElement(relativeName, type); + assertThat("UML element not found.", result, notNullValue()); + return result; + } + + protected IMultiDiagramEditor getEditor() { + return lastEditor; + } + + protected DiagramDocumentEditor getDiagramEditor() { + return lastDiagramEditor; + } + + protected DiagramEditPart getDiagramEditPart() { + return getDiagramEditor().getDiagramEditPart(); + } + + protected Diagram getDiagram() { + return getDiagramEditPart().getDiagramView(); + } + + protected View findView(EObject element) { + return DawnDiagramUpdater.findViewForModel(element, getDiagramEditor()); + } + + protected View expectView(EObject element) { + View result = findView(element); + assertThat("Required view not found.", result, notNullValue()); + return result; + } + + protected EditPart findEditPart(EObject element) { + View view = findView(element); + return (view == null) + ? null + : DawnDiagramUpdater.findEditPart(view, getDiagramEditor()); + } + + protected EditPart expectEditPart(EObject element) { + EditPart result = findEditPart(element); + assertThat("Required edit-part not found.", result, notNullValue()); + return result; + } +} diff --git a/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/ui/tests/AllTests.java b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/ui/tests/AllTests.java new file mode 100644 index 00000000000..d5d2a15b435 --- /dev/null +++ b/tests/junit/extraplugins/cdo/org.eclipse.papyrus.cdo.ui.tests/src/org/eclipse/papyrus/cdo/ui/tests/AllTests.java @@ -0,0 +1,33 @@ +/***************************************************************************** + * Copyright (c) 2013 CEA LIST. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * CEA LIST - Initial API and implementation + *****************************************************************************/ +package org.eclipse.papyrus.cdo.ui.tests; + +import org.eclipse.papyrus.cdo.internal.ui.editors.tests.BasicEditorTest; +import org.eclipse.papyrus.cdo.internal.ui.editors.tests.DawnEditorAdapterTest; +import org.eclipse.papyrus.cdo.internal.ui.markers.tests.ModelValidationMarkersTest; +import org.junit.runner.RunWith; +import org.junit.runners.Suite; +import org.junit.runners.Suite.SuiteClasses; + +/** + * This is the AllTests type. Enjoy. + */ +@RunWith(Suite.class) +@SuiteClasses({BasicEditorTest.class, DawnEditorAdapterTest.class, + ModelValidationMarkersTest.class}) +public class AllTests { + + public AllTests() { + super(); + } + +} |