diff options
author | Miles Parker | 2012-12-13 23:21:01 +0000 |
---|---|---|
committer | Miles Parker | 2012-12-18 19:26:02 +0000 |
commit | 1031b4e1afabfc516d11bc3a0d390dd63576a960 (patch) | |
tree | d9af2bb9764a7362284a9b657eb2ff13b61a8fa2 | |
parent | b0bc1e45a23c7e2e24ca9490f2a14b226625b490 (diff) | |
download | org.eclipse.mylyn.reviews.r4e-1031b4e1afabfc516d11bc3a0d390dd63576a960.tar.gz org.eclipse.mylyn.reviews.r4e-1031b4e1afabfc516d11bc3a0d390dd63576a960.tar.xz org.eclipse.mylyn.reviews.r4e-1031b4e1afabfc516d11bc3a0d390dd63576a960.zip |
395230: Implement Example Emf Connector based on Generic Emf Connector
Change-Id: I48432371d7249a6a3fbf48d0f5e200d4bfea9220
Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=395230
133 files changed, 13875 insertions, 0 deletions
diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.classpath b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.classpath new file mode 100644 index 00000000..a48380cc --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.classpath @@ -0,0 +1,14 @@ +<?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/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"> + <accessrules> + <accessrule kind="accessible" pattern="org/eclipse/mylyn/tasks/core/**"/> + <accessrule kind="accessible" pattern="org/eclipse/mylyn/tests/util/**"/> + <accessrule kind="accessible" pattern="org/eclipse/mylyn/internal/tasks/core/**"/> + <accessrule kind="accessible" pattern="org/eclipse/mylyn/internal/tasks/emf/connector/**"/> + </accessrules> + </classpathentry> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.project b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.project new file mode 100644 index 00000000..8adb3224 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.project @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.mylyn.reviews.example.emftasks.core.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> + <buildCommand> + <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature> + </natures> +</projectDescription> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 00000000..5a0ad22d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.core.runtime.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +line.separator=\n diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000..e6f2755b --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,357 @@ +#Wed Mar 30 23:08:12 CEST 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.codeComplete.argumentPrefixes= +org.eclipse.jdt.core.codeComplete.argumentSuffixes= +org.eclipse.jdt.core.codeComplete.fieldPrefixes= +org.eclipse.jdt.core.codeComplete.fieldSuffixes= +org.eclipse.jdt.core.codeComplete.localPrefixes= +org.eclipse.jdt.core.codeComplete.localSuffixes= +org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=error +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled +org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL +org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=1 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +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=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines=false +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=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=false +org.eclipse.jdt.core.formatter.comment.format_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_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=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert +org.eclipse.jdt.core.formatter.comment.line_length=120 +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=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +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=insert +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_member=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=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=do not 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=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_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_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=true +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=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=true +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=true +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=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_outer_expressions_when_nested=true diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000..f6c0a161 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,63 @@ +#Wed Mar 02 16:00:06 PST 2011 +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_Mylyn based on Eclipse +formatter_settings_version=12 +internal.default.compliance=default +org.eclipse.jdt.ui.exception.name=e +org.eclipse.jdt.ui.gettersetter.use.is=true +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.keywordthis=false +org.eclipse.jdt.ui.overrideannotation=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">/**\r\n * @return the ${bare_field_name}\r\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">/**\r\n * @param ${param} the ${bare_field_name} to set\r\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">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\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">/**\r\n * @author ${user}\r\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">/**\r\n * \r\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">/**\r\n * ${tags}\r\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\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\r\n * Copyright (c) ${year} Tasktop Technologies and others.\r\n * All rights reserved. This program and the accompanying materials\r\n * are made available under the terms of the Eclipse Public License v1.0\r\n * which accompanies this distribution, and is available at\r\n * http\://www.eclipse.org/legal/epl-v10.html\r\n *\r\n * Contributors\:\r\n * Tasktop Technologies - initial API and implementation\r\n *******************************************************************************/\r\n\r\n${package_declaration}\r\n\r\n${typecomment}\r\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">\r\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">\r\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">\r\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">\r\n</template><template autoinsert\="false" 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\r\n${exception_var}.printStackTrace();</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ignore\r\n${body_statement}</template><template autoinsert\="false" 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}\r\n// ignore</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><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">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * @return the ${bare_field_name}\r\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * @param ${param} the ${bare_field_name} to set\r\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created JavaScript files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\r\n * @author ${user}\r\n *\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for vars" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Jsdoc)\r\n * ${see_to_overridden}\r\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\r\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created function stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated function stub\r\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\r\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.wst.jsdt.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.wst.jsdt.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_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=true +sp_cleanup.correct_indentation=true +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_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=true +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +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=true +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=true +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/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.ltk.core.refactoring.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.ltk.core.refactoring.prefs new file mode 100644 index 00000000..5e7f2bd4 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.ltk.core.refactoring.prefs @@ -0,0 +1,3 @@ +#Tue Aug 18 22:42:26 PDT 2009 +eclipse.preferences.version=1 +org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.mylyn.tasks.ui.prefs new file mode 100644 index 00000000..d8c6d26a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.mylyn.tasks.ui.prefs @@ -0,0 +1,4 @@ +#Mon Jun 25 03:02:37 GMT 2007 +eclipse.preferences.version=1 +project.repository.kind=bugzilla +project.repository.url=https\://bugs.eclipse.org/bugs diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.mylyn.team.ui.prefs new file mode 100644 index 00000000..10d0afb9 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.mylyn.team.ui.prefs @@ -0,0 +1,2 @@ +commit.comment.template=${task.key}\: ${task.description}\n\nTask-Url\: ${task.url} +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.pde.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.pde.prefs new file mode 100644 index 00000000..e8f2d562 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/.settings/org.eclipse.pde.prefs @@ -0,0 +1,18 @@ +#Tue Apr 15 11:07:59 PDT 2008 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=2 +compilers.p.missing-bundle-classpath-entries=1 +compilers.p.missing-packages=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=0 +compilers.p.unknown-class=0 +compilers.p.unknown-element=0 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=0 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.use-project=true +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/META-INF/MANIFEST.MF new file mode 100644 index 00000000..1dff0275 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/META-INF/MANIFEST.MF @@ -0,0 +1,21 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Mylyn Emf Example Connector Tests +Bundle-SymbolicName: org.eclipse.mylyn.reviews.example.emftasks.core.tests;singleton:=true +Bundle-Version: 0.13.0.qualifier +Bundle-Vendor: Eclipse Mylyn +Fragment-Host: org.eclipse.mylyn.reviews.example.emftasks.core +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Require-Bundle: org.junit;bundle-version="4.5.0", + org.hamcrest;bundle-version="[0.13.0,2.0.0)", + org.eclipse.equinox.security, + org.eclipse.mylyn.commons.net, + org.eclipse.core.net, + org.eclipse.mylyn.tests.util, + org.eclipse.mylyn.tasks.ui, + org.eclipse.emf.ecore.xmi, + org.eclipse.mylyn.reviews.example.emftasks.model, + org.apache.commons.io +Export-Package: org.eclipse.mylyn.reviews.example.emftasks;x-internal:=true, + org.eclipse.mylyn.reviews.example.emftasks.client;x-internal:=true, + org.eclipse.mylyn.reviews.example.emftasks.query;x-internal:=true diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/about.html b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/about.html new file mode 100644 index 00000000..d774b07c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/about.html @@ -0,0 +1,27 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> +<html> +<head> +<title>About</title> +<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1"> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 25, 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</a>.</p> + +</body> +</html>
\ No newline at end of file diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/build.properties b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/build.properties new file mode 100644 index 00000000..86837b87 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/build.properties @@ -0,0 +1,7 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + about.html,\ + testdata/ +src.includes = about.html diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/pom.xml b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/pom.xml new file mode 100644 index 00000000..fe26fd08 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/pom.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" + xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>org.eclipse.mylyn.reviews.r4e-parent</artifactId> + <groupId>org.eclipse.mylyn.reviews.r4e</groupId> + <version>0.13.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.mylyn.reviews.example.emftasks.core.tests</artifactId> + <version>0.13.0-SNAPSHOT</version> + <packaging>eclipse-test-plugin</packaging> + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-source-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfBaseClientTest.java b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfBaseClientTest.java new file mode 100644 index 00000000..ceda8292 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfBaseClientTest.java @@ -0,0 +1,87 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ + +package org.eclipse.mylyn.reviews.example.emftasks; + +import java.io.File; + +import junit.framework.TestCase; + +import org.apache.commons.io.FileUtils; +import org.eclipse.emf.common.util.URI; +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleConnector; +import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector; +import org.eclipse.mylyn.reviews.connector.client.EmfClient; +import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +/** + * Unit tests for {@link EmfClient}. + * + * @author Miles Parker + */ +@SuppressWarnings("nls") +public abstract class EmfBaseClientTest extends TestCase { + + protected static final String TARGET_FOLDER_NAME = "mylyn.emf.test"; + + protected static final String TEST_DIR = "testdata"; + + protected static final String TEST_EXAMPLE_FILE = "Example.emftasks"; + + protected static final String TEST_MODIFIED_EXAMPLE_FILE = "ExampleModified.emftasks"; + + protected static final String TEST_COPY_EXAMPLE_FILE = "ExampleCopy.emftasks"; + + protected static final String TEST_ENCODING_FILE = "ExampleEncoding.emftasks"; + + protected AbstractEmfConnector connector; + + protected EmfClient client; + + protected URI targetTestDirUri; + + protected String getFullUri(String modelName) { + return targetTestDirUri.appendSegment(modelName).toString(); + } + + @Override + @Before + public void setUp() throws Exception { + File sourceDir = new File(TEST_DIR); + File targetTestDir = new File(FileUtils.getTempDirectory().getAbsolutePath() + File.separator + + TARGET_FOLDER_NAME + File.separator); + FileUtils.copyDirectory(sourceDir, targetTestDir); + + targetTestDirUri = URI.createFileURI(targetTestDir.getAbsolutePath()); + + connector = new EmfExampleConnector(); + client = connector.getClientManager().getClient( + new TaskRepository(EmfExampleConnector.CONNECTOR_KIND, getFullUri(TEST_EXAMPLE_FILE))); + client.open(); + } + + @Override + @After + public void tearDown() throws Exception { + client.close(); + } + + @Test + public void testDummy() { + assertNotNull(client); + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfConnectorEncodingTest.java b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfConnectorEncodingTest.java new file mode 100644 index 00000000..8f96a308 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfConnectorEncodingTest.java @@ -0,0 +1,139 @@ +/******************************************************************************* + * Copyright (c) 2012 Tasktop Technologies and others. + * 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: + * Tasktop Technologies - initial API and implementation + *******************************************************************************/ + +package org.eclipse.mylyn.reviews.example.emftasks; + +import static org.hamcrest.Matchers.greaterThan; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.not; +import static org.hamcrest.Matchers.startsWith; +import static org.junit.Assert.assertThat; + +import java.io.File; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.HashSet; + +import org.apache.commons.io.FileUtils; +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleConnector; +import org.eclipse.mylyn.reviews.connector.EmfTaskSchema.FieldFeature; +import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.eclipse.mylyn.tasks.core.data.DefaultTaskSchema; +import org.eclipse.mylyn.tasks.core.data.TaskAttribute; +import org.eclipse.mylyn.tasks.core.data.TaskData; +import org.junit.Before; +import org.junit.Test; + +@SuppressWarnings("nls") +public class EmfConnectorEncodingTest extends EmfBaseClientTest { + + String enDashString = "3\u2013Alpha"; + + String hyphenString = "3-Alpha"; + + @Override + @Before + public void setUp() throws Exception { + File sourceDir = new File(TEST_DIR); + File targetTestDir = new File(FileUtils.getTempDirectory().getAbsolutePath() + File.separator + + TARGET_FOLDER_NAME + File.separator); + FileUtils.copyDirectory(sourceDir, targetTestDir); + + targetTestDirUri = URI.createFileURI(targetTestDir.getAbsolutePath()); + + connector = new EmfExampleConnector() { + + private final DefaultTaskSchema parentSchema = DefaultTaskSchema.getInstance(); + + private final FieldFeature[] PAIRS_2 = new FieldFeature[] { + new FieldFeature(parentSchema.TASK_KEY, EmfTasksPackage.Literals.SIMPLE_TASK__DESCRIPTION), + new FieldFeature(parentSchema.SUMMARY, EmfTasksPackage.Literals.SIMPLE_TASK__SUMMARY), + new FieldFeature(parentSchema.DATE_COMPLETION, + EmfTasksPackage.Literals.SIMPLE_TASK__COMPLETION_DATE), + new FieldFeature(parentSchema.DATE_DUE, EmfTasksPackage.Literals.SIMPLE_TASK__DUE_DATE), + new FieldFeature(parentSchema.DATE_MODIFICATION, + EmfTasksPackage.Literals.SIMPLE_TASK__MODIFICATION_DATE), + new FieldFeature(parentSchema.DATE_CREATION, EmfTasksPackage.Literals.SIMPLE_TASK__CREATION_DATE), + new FieldFeature(parentSchema.PRIORITY, EmfTasksPackage.Literals.SIMPLE_TASK__PRIORITY), + new FieldFeature(parentSchema.STATUS, EmfTasksPackage.Literals.SIMPLE_TASK__STATUS), + new FieldFeature(parentSchema.RANK, EmfTasksPackage.Literals.SIMPLE_TASK__RANKING) }; + + @Override + public FieldFeature[] getTaskFeatures() { + return PAIRS_2; + } + }; + client = connector.getClientManager().getClient( + new TaskRepository(EmfExampleConnector.CONNECTOR_KIND, getFullUri(TEST_ENCODING_FILE))); + client.open(); + assertThat(enDashString, is(not(hyphenString))); + } + + @Test + public void testGetObject() throws CoreException { + //We should get in both cases + EObject object = connector.getTaskObject(client.getRepository(), hyphenString, new NullProgressMonitor()); + assertThat(object, instanceOf(SimpleTask.class)); + assertThat(((SimpleTask) object).getDescription(), is(hyphenString)); + EObject object2 = connector.getTaskObject(client.getRepository(), hyphenString, new NullProgressMonitor()); + assertNotNull(object2); + assertEquals(object, object2); + } + + @Test + public void testPullTaskData() throws CoreException { + //We should get in both cases + TaskData taskData = connector.getTaskData(client.getRepository(), enDashString, new NullProgressMonitor()); + assertThat(taskData.getTaskId(), is(enDashString)); + taskData = connector.getTaskData(client.getRepository(), hyphenString, new NullProgressMonitor()); + assertThat(taskData.getTaskId(), is(enDashString)); + TaskAttribute root = taskData.getRoot(); + TaskAttribute mappedAttribute = root.getMappedAttribute(TaskAttribute.TASK_KEY); + assertNotNull(mappedAttribute); + assertThat(hyphenString, is(mappedAttribute.getValue())); + TaskAttribute attribute = root.getAttribute("emf.emftasks.simpletask.description"); + assertNotNull(attribute); + assertThat(hyphenString, is(attribute.getValue())); + } + + @Test + public void testPostTaskDataEncoded() throws CoreException { + TaskData taskData = connector.getTaskData(client.getRepository(), enDashString, new NullProgressMonitor()); + TaskAttribute root = taskData.getRoot(); + TaskAttribute attribute = root.getAttribute("emf.emftasks.simpletask.summary"); + + assertThat("Encoded Task", is(attribute.getValue())); + attribute.setValue("Modified Encoded Task"); + HashSet<TaskAttribute> oldAttributes = new HashSet<TaskAttribute>(); + oldAttributes.add(attribute); + connector.postTaskData(client.getRepository(), taskData, oldAttributes, new NullProgressMonitor()); + EObject object = connector.getTaskObject(client.getRepository(), hyphenString, new NullProgressMonitor()); + String summary = connector.getEmfMapper(client.getRepository()).getEmfString(object, TaskAttribute.SUMMARY); + assertThat(summary, is("Modified Encoded Task")); + Date modified = (Date) connector.getEmfMapper(client.getRepository()).getEmfValue(object, + TaskAttribute.DATE_MODIFICATION); + assertNotNull(modified); + Calendar calendar = Calendar.getInstance(); + Date current = calendar.getTime(); + assertThat(modified.getTime() + 5000, greaterThan(current.getTime())); + + TaskAttribute dateAttribute = root.getMappedAttribute(TaskAttribute.DATE_MODIFICATION); + DateFormat testFormat = new SimpleDateFormat("yyyy-MM-dd"); + assertThat(dateAttribute.getValue(), not(startsWith(testFormat.format(current)))); + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfConnectorTest.java b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfConnectorTest.java new file mode 100644 index 00000000..945e839e --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/EmfConnectorTest.java @@ -0,0 +1,159 @@ +/******************************************************************************* + * Copyright (c) 2012 Tasktop Technologies and others. + * 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: + * Tasktop Technologies - initial API and implementation + *******************************************************************************/ + +package org.eclipse.mylyn.reviews.example.emftasks; + +import static org.hamcrest.Matchers.greaterThan; +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.not; +import static org.hamcrest.Matchers.startsWith; +import static org.junit.Assert.assertThat; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.HashSet; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.mylyn.tasks.core.RepositoryResponse; +import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.eclipse.mylyn.tasks.core.data.TaskAttribute; +import org.eclipse.mylyn.tasks.core.data.TaskData; +import org.junit.Test; + +@SuppressWarnings("nls") +public class EmfConnectorTest extends EmfBaseClientTest { + + @Test + public void testCreateTaskData() { + TaskRepository repository = new TaskRepository(connector.getConnectorKind(), "http://ignore"); //$NON-NLS-1$ + TaskData data = connector.createTaskData(repository, "123", null); //$NON-NLS-1$ + String key = connector.getSchema().getKey(EmfTasksPackage.Literals.SIMPLE_TASK__ID); + assertNotNull(key); + TaskAttribute attribute = data.getRoot().getAttribute(key); + assertNotNull(attribute); + assertThat(attribute.getValue(), is("")); + TaskAttribute mappedAttribute = data.getRoot().getMappedAttribute(TaskAttribute.TASK_KEY); + assertNotNull(mappedAttribute); + assertThat(attribute, is(mappedAttribute)); + + TaskData data2 = connector.createTaskData(repository, "456", null); //$NON-NLS-1$ + TaskAttribute mappedAttribute2 = data2.getRoot().getMappedAttribute(TaskAttribute.TASK_KEY); + assertThat(mappedAttribute2.getValue(), is("")); + } + + @Test + public void testCreatePartialTaskData() { + TaskRepository repository = new TaskRepository(connector.getConnectorKind(), "http://ignore"); //$NON-NLS-1$ + TaskData data = connector.createPartialTaskData(repository, "123", null); //$NON-NLS-1$ + TaskAttribute attribute = data.getRoot().getMappedAttribute(TaskAttribute.TASK_KEY); + assertNotNull(attribute); + assertThat(attribute.getValue(), is("")); + assertNotNull(data.getRoot().getMappedAttribute(TaskAttribute.SUMMARY)); + assertNotNull(data.getRoot().getAttribute( + connector.getSchema().getKey(EmfTasksPackage.Literals.SIMPLE_TASK__ID))); + assertEquals( + data.getRoot().getMappedAttribute(TaskAttribute.DATE_MODIFICATION), + data.getRoot().getAttribute( + connector.getSchema().getKey(EmfTasksPackage.Literals.SIMPLE_TASK__MODIFICATION_DATE))); + } + + @Test + public void testGetObject() throws CoreException { + client.updateConfiguration(new NullProgressMonitor()); + EObject object = connector.getTaskObject(client.getRepository(), "1", new NullProgressMonitor()); + assertNotNull(object); + assertThat(1, is(connector.getEmfMapper(client.getRepository()).getEmfValue(object, TaskAttribute.TASK_KEY))); + assertThat("1", is(connector.getEmfMapper(client.getRepository()).getEmfString(object, TaskAttribute.TASK_KEY))); + assertThat("1", + is(connector.getEmfMapper(client.getRepository()).getEmfString(object, "emf.emftasks.simpletask.id"))); + SimpleTask eClassClassifier = (SimpleTask) object; + assertThat("Test Task 1", is(eClassClassifier.getSummary())); + } + + @Test + public void testPullTaskData() throws CoreException { + TaskData taskData = connector.getTaskData(client.getRepository(), "1", new NullProgressMonitor()); + TaskAttribute root = taskData.getRoot(); + TaskAttribute mappedAttribute = root.getMappedAttribute(TaskAttribute.TASK_KEY); + assertNotNull(mappedAttribute); + assertThat("1", is(mappedAttribute.getValue())); + TaskAttribute attribute = root.getAttribute("emf.emftasks.simpletask.id"); + assertNotNull(attribute); + assertThat("1", is(attribute.getValue())); + attribute = root.getAttribute("emf.emftasks.simpletask.summary"); + assertNotNull(attribute); + assertThat("Test Task 1", is(attribute.getValue())); + } + + ///Developer/workspaces/runtime-EmfExample/temp/My2.emftasks + + @Test + public void testPostTaskData() throws CoreException { + TaskData taskData = connector.getTaskData(client.getRepository(), "1", new NullProgressMonitor()); + TaskAttribute root = taskData.getRoot(); + TaskAttribute summaryAttribute = root.getAttribute("emf.emftasks.simpletask.summary"); + + assertThat("Test Task 1", is(summaryAttribute.getValue())); + summaryAttribute.setValue("Modified Test Task 1"); + HashSet<TaskAttribute> oldAttributes = new HashSet<TaskAttribute>(); + oldAttributes.add(summaryAttribute); + connector.postTaskData(client.getRepository(), taskData, oldAttributes, new NullProgressMonitor()); + EObject object = connector.getTaskObject(client.getRepository(), "1", new NullProgressMonitor()); + String summary = connector.getEmfMapper(client.getRepository()).getEmfString(object, TaskAttribute.SUMMARY); + assertThat(summary, is("Modified Test Task 1")); + Date modified = (Date) connector.getEmfMapper(client.getRepository()).getEmfValue(object, + TaskAttribute.DATE_MODIFICATION); + assertNotNull(modified); + Calendar calendar = Calendar.getInstance(); + Date current = calendar.getTime(); + assertThat(modified.getTime() + 5000, greaterThan(current.getTime())); + + TaskAttribute dateAttribute = root.getMappedAttribute(TaskAttribute.DATE_MODIFICATION); + DateFormat testFormat = new SimpleDateFormat("yyyy-MM-dd"); + assertThat(dateAttribute.getValue(), not(startsWith(testFormat.format(current)))); + } + + @Test + public void testPostNewTaskData() throws CoreException { + Object lastId = client.getRootContainer().eGet(EmfTasksPackage.Literals.TASK_COLLECTION__LAST_TASK_ID); + assertThat(lastId, instanceOf(Integer.class)); + assertThat(((Integer) lastId), is(100)); + TaskRepository repository = client.getRepository(); + TaskData taskData = connector.createTaskData(repository, "", new NullProgressMonitor()); + TaskAttribute root = taskData.getRoot(); + TaskAttribute summaryAttribute = root.createAttribute("emf.emftasks.simpletask.summary"); + summaryAttribute.setValue("A New Task"); + + HashSet<TaskAttribute> oldAttributes = new HashSet<TaskAttribute>(); + oldAttributes.add(summaryAttribute); + RepositoryResponse postTaskData = connector.postTaskData(repository, taskData, oldAttributes, + new NullProgressMonitor()); + lastId = client.getRootContainer().eGet(EmfTasksPackage.Literals.TASK_COLLECTION__LAST_TASK_ID); + assertThat(((Integer) lastId), is(101)); + + assertThat(postTaskData.getTaskId(), is("101")); + EObject object = connector.getTaskObject(repository, "101", new NullProgressMonitor()); + + assertThat(((SimpleTask) object).getId(), is(101)); + assertThat(((SimpleTask) object).getSummary(), is("A New Task")); + + String id = connector.getEmfMapper(repository).getEmfString(object, TaskAttribute.TASK_KEY); + assertThat(id, is("101")); + + String summary = connector.getEmfMapper(repository).getEmfString(object, TaskAttribute.SUMMARY); + assertThat(summary, is("A New Task")); + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/client/EmfExampleClientTest.java b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/client/EmfExampleClientTest.java new file mode 100644 index 00000000..b3dc2c3a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/client/EmfExampleClientTest.java @@ -0,0 +1,124 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ + +package org.eclipse.mylyn.reviews.example.emftasks.client; + +import static org.hamcrest.Matchers.endsWith; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.not; +import static org.hamcrest.Matchers.sameInstance; +import static org.junit.Assert.assertThat; + +import org.eclipse.core.runtime.NullProgressMonitor; +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.resource.impl.ResourceSetImpl; +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleConnector; +import org.eclipse.mylyn.reviews.connector.EmfConfiguration; +import org.eclipse.mylyn.reviews.connector.client.EmfClient; +import org.eclipse.mylyn.reviews.example.emftasks.EmfBaseClientTest; +import org.eclipse.mylyn.reviews.example.emftasks.TaskCollection; +import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.junit.Test; + +/** + * Unit tests for {@link EmfClient} exercising Ecore. (May be redundant with newer example model tests.) + * + * @author Miles Parker + */ +@SuppressWarnings("nls") +public class EmfExampleClientTest extends EmfBaseClientTest { + + @Test + public void testRefreshConfig() throws Exception { + EmfConfiguration config = client.updateConfiguration(new NullProgressMonitor()); + assertNotNull(config); + } + + @Test + public void testClose() throws Exception { + String fullUri = getFullUri(TEST_MODIFIED_EXAMPLE_FILE); + client.getRepository().setRepositoryUrl(fullUri); + client.updateConfiguration(new NullProgressMonitor()); + ((TaskCollection) client.getRootContainer()).getTasks().get(0).setSummary("Modified Task 1"); + client.close(); + ResourceSet set = new ResourceSetImpl(); + Resource resource = set.getResource(targetTestDirUri.appendSegment(TEST_MODIFIED_EXAMPLE_FILE), true); + assertThat(((TaskCollection) resource.getContents().get(0)).getTasks().get(0).getSummary(), not("Task 1")); + } + + @Test + public void testModifyAndCloseModel() throws Exception { + String fullUri = getFullUri(TEST_EXAMPLE_FILE); + client.getRepository().setRepositoryUrl(fullUri); + client.updateConfiguration(new NullProgressMonitor()); + assertThat(((TaskCollection) client.getRootContainer()).getTasks().get(0).getSummary(), is("Test Task 1")); + ((TaskCollection) client.getRootContainer()).getTasks().get(0).setSummary("Modified Task 1"); + client.save(); + ResourceSet set = new ResourceSetImpl(); + Resource resource = set.getResource(targetTestDirUri.appendSegment(TEST_EXAMPLE_FILE), true); + assertThat(((TaskCollection) resource.getContents().get(0)).getTasks().get(0).getSummary(), + is("Modified Task 1")); + } + + @Test + public void testModifyAndSaveModel() throws Exception { + String fullUri = getFullUri(TEST_COPY_EXAMPLE_FILE); + client.getRepository().setRepositoryUrl(fullUri); + client.updateConfiguration(new NullProgressMonitor()); + assertThat(((TaskCollection) client.getRootContainer()).getTasks().get(0).getSummary(), is("Test Task 1")); + ((TaskCollection) client.getRootContainer()).getTasks().get(0).setSummary("Modified Task 1"); + client.save(); + client.close(); + ResourceSet set = new ResourceSetImpl(); + Resource resource = set.getResource(targetTestDirUri.appendSegment(TEST_COPY_EXAMPLE_FILE), true); + assertThat(((TaskCollection) resource.getContents().get(0)).getTasks().get(0).getSummary(), + is("Modified Task 1")); + } + + @Test + public void testChangeUrlConfig() throws Exception { + EObject container1 = client.getRootContainer(); + client.getRepository().setRepositoryUrl(getFullUri(TEST_COPY_EXAMPLE_FILE)); + assertThat(container1.eResource().getURI().toString(), endsWith(TEST_EXAMPLE_FILE)); + EmfConfiguration config = client.updateConfiguration(new NullProgressMonitor()); + assertNotNull(config); + EObject container2 = client.getRootContainer(); + assertThat(container1, not(sameInstance(container2))); + assertThat(container2.eResource().getURI().toString(), endsWith(TEST_COPY_EXAMPLE_FILE)); + } + + @Test + public void testChangeUrlConfigSave() throws Exception { + EObject container1 = client.getRootContainer(); + assertThat(((TaskCollection) container1).getLabel(), is("Test Tasks")); + String modifiedUri = getFullUri(TEST_MODIFIED_EXAMPLE_FILE); + TaskRepository repository = new TaskRepository(EmfExampleConnector.CONNECTOR_KIND, modifiedUri); + EmfClient client2 = connector.getClient(repository); + assertThat(client2.getRepository().getUrl(), is(modifiedUri + "")); + client2.open(); + EObject container2 = client2.getRootContainer(); + assertThat(((TaskCollection) container2).getLabel(), is("Modified Test Tasks")); + client.getRepository().setRepositoryUrl(getFullUri(TEST_EXAMPLE_FILE)); + client.updateConfiguration(new NullProgressMonitor()); + container2 = client.getRootContainer(); + assertThat(((TaskCollection) container2).getLabel(), is("Test Tasks")); + client.getRepository().setRepositoryUrl(modifiedUri); + client.updateConfiguration(new NullProgressMonitor()); + EObject container1_Reopen = client.getRootContainer(); + assertThat(((TaskCollection) container1_Reopen).getLabel(), is("Modified Test Tasks")); + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/query/EmfQueryEngineTest.java b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/query/EmfQueryEngineTest.java new file mode 100644 index 00000000..949ae356 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/src/org/eclipse/mylyn/reviews/example/emftasks/query/EmfQueryEngineTest.java @@ -0,0 +1,397 @@ +/******************************************************************************* + * Copyright (c) 2012 Tasktop Technologies and others. + * 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: + * Tasktop Technologies - initial API and implementation + *******************************************************************************/ + +package org.eclipse.mylyn.reviews.example.emftasks.query; + +import static org.hamcrest.Matchers.instanceOf; +import static org.hamcrest.Matchers.is; +import static org.junit.Assert.assertThat; + +import java.util.Calendar; +import java.util.List; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleConnector; +import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery; +import org.eclipse.mylyn.reviews.connector.query.EmfQueryEngine; +import org.eclipse.mylyn.reviews.connector.query.QueryClause; +import org.eclipse.mylyn.reviews.connector.query.QueryException; +import org.eclipse.mylyn.reviews.connector.query.QueryOperation; +import org.eclipse.mylyn.reviews.example.emftasks.EmfBaseClientTest; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.reviews.example.emftasks.SimpleTask; +import org.eclipse.mylyn.tasks.core.IRepositoryQuery; +import org.junit.Before; +import org.junit.Test; + +@SuppressWarnings("nls") +public class EmfQueryEngineTest extends EmfBaseClientTest { + + private EmfQueryEngine engine; + + /** + * (Example.ecore) + * + * <pre> + * <tasks id="1" summary="Test Task 1" description="This is test task 1." priority="STANDARD" duedate="2012-10-28T00:00:00.000-0700" creationDate="2012-10-21T00:00:00.000-0700"/> + * <tasks id="2" summary="Test Task 2" description="This is test task 2." priority="IMPORTANT" duedate="2012-10-29T00:00:00.000-0700" creationDate="2012-10-22T00:00:00.000-0700"/> + * <tasks id="3" summary="Test Task 3" description="This is test task 3." priority="URGENT" duedate="2012-10-30T00:00:00.000-0700" creationDate="2012-10-23T00:00:00.000-0700"/> + * </pre> + **/ + + @Override + @Before + public void setUp() throws Exception { + super.setUp(); + engine = connector.getQueryEngine(client.getRepository()); + } + + @Test + public void testGetClauses() throws QueryException { + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "substring"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "foo"); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "regexp"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", "baz"); + QueryClause[] clauses = engine.getClauses(query); + assertThat(clauses.length, is(2)); + QueryClause cFoo = clauses[0]; + QueryClause cBaz = clauses[1]; + if (cFoo.getValue().equals("baz")) { + assertThat(clauses[1].getValue(), is("foo")); + cFoo = clauses[1]; + cBaz = clauses[0]; + } + assertThat(cFoo.getFeature(), instanceOf(EAttribute.class)); + assertThat((EAttribute) cFoo.getFeature(), is(EmfTasksPackage.Literals.SIMPLE_TASK__SUMMARY)); + assertThat(cFoo.getOperation(), is(QueryOperation.SUBSTRING)); + assertThat(cFoo.getValue(), is("foo")); + assertThat(cBaz.getFeature(), instanceOf(EAttribute.class)); + assertThat((EAttribute) cBaz.getFeature(), is(EmfTasksPackage.Literals.SIMPLE_TASK__DESCRIPTION)); + assertThat(cBaz.getOperation(), is(QueryOperation.REGEXP)); + assertThat(cBaz.getValue(), is("baz")); + } + + { + //Out of order + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "regexp"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "foo"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "substring"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", "baz"); + QueryClause[] clauses = engine.getClauses(query); + assertThat(clauses.length, is(2)); + QueryClause cFoo = clauses[0]; + QueryClause cBaz = clauses[1]; + if (cFoo.getValue().equals("baz")) { + assertThat(clauses[1].getValue(), is("foo")); + cFoo = clauses[1]; + cBaz = clauses[0]; + } + assertThat(cFoo.getFeature(), instanceOf(EAttribute.class)); + assertThat((EAttribute) cFoo.getFeature(), is(EmfTasksPackage.Literals.SIMPLE_TASK__SUMMARY)); + assertThat(cFoo.getOperation(), is(QueryOperation.SUBSTRING)); + assertThat(cFoo.getValue(), is("foo")); + assertThat(cBaz.getFeature(), instanceOf(EAttribute.class)); + assertThat((EAttribute) cBaz.getFeature(), is(EmfTasksPackage.Literals.SIMPLE_TASK__DESCRIPTION)); + assertThat(cBaz.getOperation(), is(QueryOperation.REGEXP)); + assertThat(cBaz.getValue(), is("baz")); + } + } + + @Test + public void testPerformQuery() throws QueryException, CoreException { + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "Test Task 2"); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + assertThat(results.get(0), instanceOf(SimpleTask.class)); + assertThat(((SimpleTask) results.get(0)).getId(), is(2)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "substring"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "Task"); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + assertThat(results.get(0), instanceOf(SimpleTask.class)); + } + { + + assertTrue("this has 3".matches(".*3")); + + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "regexp"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", ".*\\s\\d\\."); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + assertThat(results.get(0), instanceOf(SimpleTask.class)); + } + } + + @Test + public void testPerformQueryMultipleClauses() throws QueryException, CoreException { + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "Test Task 2"); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "Test Task 2"); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", "Nope"); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(0)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", "This is test task 2."); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "nope"); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(0)); + } + + //Queries must match all results + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "Test Task 2"); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", "This is test task 2."); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", "This is test task 2."); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "Test Task 2"); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + + } + + @Test + public void testPerformQueryNoClauses() throws QueryException, CoreException { + //When no queries present we simply return all (this might change) + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + } + } + + @Test + public void testPerformQueryEmptyValueClauses() throws QueryException, CoreException { + //When no queries present we simply return all (this might change) + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", ""); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", ""); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + } + } + + @Test + public void testPerformMultipleWithEmptyClause() throws QueryException, CoreException { + //When no queries present we simply return all (this might change) + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.summary_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.summary_query.value", "Test Task 2"); + query.setAttribute("emf.emftasks.simpletask.description_query.operation", "exact"); + query.setAttribute("emf.emftasks.simpletask.description_query.value", ""); + + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + } + + @Test + public void testPerformListAny() throws QueryException, CoreException { + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.priority_query.operation", "anyitems"); + query.setAttribute("emf.emftasks.simpletask.priority_query.value", ""); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.priority_query.operation", "anyitems"); + query.setAttribute("emf.emftasks.simpletask.priority_query.value", "foo,bar"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(0)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.priority_query.operation", "anyitems"); + query.setAttribute("emf.emftasks.simpletask.priority_query.value", "Standard"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.priority_query.operation", "anyitems"); + query.setAttribute("emf.emftasks.simpletask.priority_query.value", "Standard,Important"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(2)); + } + } + + @Test + public void testPerformDateBefore() throws QueryException, CoreException { + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "before"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-09-28T00:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(0)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "before"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-10-28T00:23:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + EObject result = results.get(0); + assertThat(result, instanceOf(SimpleTask.class)); + SimpleTask taskResult = (SimpleTask) result; + Calendar testDate = Calendar.getInstance(); + testDate.set(2012, 9, 28, 23, 0, 0); + assertTrue(taskResult.getDueDate().before(testDate.getTime())); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "before"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-10-28T00:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "before"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-11-28T00:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + } + } + + @Test + public void testPerformDateAfter() throws QueryException, CoreException { + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "after"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-10-30T23:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(0)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "after"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-10-29T00:23:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + EObject result = results.get(0); + assertThat(result, instanceOf(SimpleTask.class)); + SimpleTask taskResult = (SimpleTask) result; + Calendar testDate = Calendar.getInstance(); + testDate.set(2012, 9, 29, 23, 0, 0); + assertTrue(taskResult.getDueDate().after(testDate.getTime())); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "after"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-10-30T00:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "after"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", "2012-09-28T00:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + } + } + + @Test + public void testPerformDateInRange() throws QueryException, CoreException { + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "inrange"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", ""); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(3)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "inrange"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", + "2012-09-28T00:00:00.000-0700,2012-09-30T00:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(0)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "inrange"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", + "2013-09-28T00:00:00.000-0700,2013-09-30T00:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(0)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "inrange"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", + "2012-10-28T23:00:00.000-0700,2012-10-29T23:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + { + IRepositoryQuery query = new RepositoryQuery(EmfExampleConnector.CONNECTOR_KIND, "1"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.operation", "inrange"); + query.setAttribute("emf.emftasks.simpletask.duedate_query.value", + "2012-10-30T00:00:00.000-0700,2062-10-29T23:00:00.000-0700"); + List<EObject> results = engine.performQuery(query, new NullProgressMonitor()); + assertThat(results.size(), is(1)); + } + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/Ecore.ecore b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/Ecore.ecore new file mode 100644 index 00000000..8a633164 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/Ecore.ecore @@ -0,0 +1,522 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="ecore" + nsURI="http://www.eclipse.org/emf/2002/Ecore" nsPrefix="ecore"> + <eClassifiers xsi:type="ecore:EClass" name="EAttribute" eSuperTypes="#//EStructuralFeature"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="ConsistentTransient"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="iD" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAttributeType" lowerBound="1" + eType="#//EDataType" changeable="false" volatile="true" transient="true" derived="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EAnnotation" eSuperTypes="#//EModelElement"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="WellFormedSourceURI"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="source" eType="#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="details" upperBound="-1" + eType="#//EStringToStringMapEntry" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eModelElement" eType="#//EModelElement" + transient="true" resolveProxies="false" eOpposite="#//EModelElement/eAnnotations"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1" + eType="#//EObject" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="references" upperBound="-1" + eType="#//EObject"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EClass" eSuperTypes="#//EClassifier"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="InterfaceIsAbstract AtMostOneID UniqueFeatureNames UniqueOperationSignatures NoCircularSuperTypes WellFormedMapEntryClass ConsistentSuperTypes DisjointFeatureAndOperationSignatures"/> + </eAnnotations> + <eOperations name="isSuperTypeOf" eType="#//EBoolean"> + <eParameters name="someClass" eType="#//EClass"/> + </eOperations> + <eOperations name="getFeatureCount" eType="#//EInt"/> + <eOperations name="getEStructuralFeature" eType="#//EStructuralFeature"> + <eParameters name="featureID" eType="#//EInt"/> + </eOperations> + <eOperations name="getFeatureID" eType="#//EInt"> + <eParameters name="feature" eType="#//EStructuralFeature"/> + </eOperations> + <eOperations name="getEStructuralFeature" eType="#//EStructuralFeature"> + <eParameters name="featureName" eType="#//EString"/> + </eOperations> + <eOperations name="getOperationCount" eType="#//EInt"/> + <eOperations name="getEOperation" eType="#//EOperation"> + <eParameters name="operationID" eType="#//EInt"/> + </eOperations> + <eOperations name="getOperationID" eType="#//EInt"> + <eParameters name="operation" eType="#//EOperation"/> + </eOperations> + <eOperations name="getOverride" eType="#//EOperation"> + <eParameters name="operation" eType="#//EOperation"/> + </eOperations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="interface" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eSuperTypes" upperBound="-1" + eType="#//EClass" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="eOperations" upperBound="-1" + eType="#//EOperation" containment="true" resolveProxies="false" eOpposite="#//EOperation/eContainingClass"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAllAttributes" upperBound="-1" + eType="#//EAttribute" changeable="false" volatile="true" transient="true" + derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAllReferences" upperBound="-1" + eType="#//EReference" changeable="false" volatile="true" transient="true" + derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eReferences" upperBound="-1" + eType="#//EReference" changeable="false" volatile="true" transient="true" + derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAttributes" upperBound="-1" + eType="#//EAttribute" changeable="false" volatile="true" transient="true" + derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAllContainments" upperBound="-1" + eType="#//EReference" changeable="false" volatile="true" transient="true" + derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAllOperations" upperBound="-1" + eType="#//EOperation" changeable="false" volatile="true" transient="true" + derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAllStructuralFeatures" + upperBound="-1" eType="#//EStructuralFeature" changeable="false" volatile="true" + transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAllSuperTypes" upperBound="-1" + eType="#//EClass" changeable="false" volatile="true" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eIDAttribute" eType="#//EAttribute" + changeable="false" volatile="true" transient="true" derived="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eStructuralFeatures" upperBound="-1" + eType="#//EStructuralFeature" containment="true" resolveProxies="false" eOpposite="#//EStructuralFeature/eContainingClass"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eGenericSuperTypes" upperBound="-1" + eType="#//EGenericType" unsettable="true" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAllGenericSuperTypes" + upperBound="-1" eType="#//EGenericType" changeable="false" volatile="true" + transient="true" derived="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EClassifier" abstract="true" eSuperTypes="#//ENamedElement"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="WellFormedInstanceTypeName UniqueTypeParameterNames"/> + </eAnnotations> + <eOperations name="isInstance" eType="#//EBoolean"> + <eParameters name="object" eType="#//EJavaObject"/> + </eOperations> + <eOperations name="getClassifierID" eType="#//EInt"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="instanceClassName" eType="#//EString" + volatile="true" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="instanceClass" changeable="false" + volatile="true" transient="true" derived="true"> + <eGenericType eClassifier="#//EJavaClass"> + <eTypeArguments/> + </eGenericType> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="#//EJavaObject" + changeable="false" volatile="true" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="instanceTypeName" eType="#//EString" + volatile="true" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="ePackage" eType="#//EPackage" + changeable="false" transient="true" eOpposite="#//EPackage/eClassifiers"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eTypeParameters" upperBound="-1" + eType="#//ETypeParameter" containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EDataType" eSuperTypes="#//EClassifier"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="serializable" eType="#//EBoolean" + defaultValueLiteral="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EEnum" eSuperTypes="#//EDataType"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="UniqueEnumeratorNames UniqueEnumeratorLiterals"/> + </eAnnotations> + <eOperations name="getEEnumLiteral" eType="#//EEnumLiteral"> + <eParameters name="name" eType="#//EString"/> + </eOperations> + <eOperations name="getEEnumLiteral" eType="#//EEnumLiteral"> + <eParameters name="value" eType="#//EInt"/> + </eOperations> + <eOperations name="getEEnumLiteralByLiteral" eType="#//EEnumLiteral"> + <eParameters name="literal" eType="#//EString"/> + </eOperations> + <eStructuralFeatures xsi:type="ecore:EReference" name="eLiterals" upperBound="-1" + eType="#//EEnumLiteral" containment="true" resolveProxies="false" eOpposite="#//EEnumLiteral/eEnum"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EEnumLiteral" eSuperTypes="#//ENamedElement"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="#//EInt"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="instance" eType="#//EEnumerator" + transient="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="literal" eType="#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eEnum" eType="#//EEnum" + changeable="false" transient="true" resolveProxies="false" eOpposite="#//EEnum/eLiterals"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EFactory" eSuperTypes="#//EModelElement"> + <eOperations name="create" eType="#//EObject"> + <eParameters name="eClass" eType="#//EClass"/> + </eOperations> + <eOperations name="createFromString" eType="#//EJavaObject"> + <eParameters name="eDataType" eType="#//EDataType"/> + <eParameters name="literalValue" eType="#//EString"/> + </eOperations> + <eOperations name="convertToString" eType="#//EString"> + <eParameters name="eDataType" eType="#//EDataType"/> + <eParameters name="instanceValue" eType="#//EJavaObject"/> + </eOperations> + <eStructuralFeatures xsi:type="ecore:EReference" name="ePackage" lowerBound="1" + eType="#//EPackage" transient="true" resolveProxies="false" eOpposite="#//EPackage/eFactoryInstance"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EModelElement" abstract="true"> + <eOperations name="getEAnnotation" eType="#//EAnnotation"> + <eParameters name="source" eType="#//EString"/> + </eOperations> + <eStructuralFeatures xsi:type="ecore:EReference" name="eAnnotations" upperBound="-1" + eType="#//EAnnotation" containment="true" resolveProxies="false" eOpposite="#//EAnnotation/eModelElement"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ENamedElement" abstract="true" eSuperTypes="#//EModelElement"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="WellFormedName"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EObject"> + <eOperations name="eClass" eType="#//EClass"/> + <eOperations name="eIsProxy" eType="#//EBoolean"/> + <eOperations name="eResource" eType="#//EResource"/> + <eOperations name="eContainer" eType="#//EObject"/> + <eOperations name="eContainingFeature" eType="#//EStructuralFeature"/> + <eOperations name="eContainmentFeature" eType="#//EReference"/> + <eOperations name="eContents"> + <eGenericType eClassifier="#//EEList"> + <eTypeArguments eClassifier="#//EObject"/> + </eGenericType> + </eOperations> + <eOperations name="eAllContents"> + <eGenericType eClassifier="#//ETreeIterator"> + <eTypeArguments eClassifier="#//EObject"/> + </eGenericType> + </eOperations> + <eOperations name="eCrossReferences"> + <eGenericType eClassifier="#//EEList"> + <eTypeArguments eClassifier="#//EObject"/> + </eGenericType> + </eOperations> + <eOperations name="eGet" eType="#//EJavaObject"> + <eParameters name="feature" eType="#//EStructuralFeature"/> + </eOperations> + <eOperations name="eGet" eType="#//EJavaObject"> + <eParameters name="feature" eType="#//EStructuralFeature"/> + <eParameters name="resolve" eType="#//EBoolean"/> + </eOperations> + <eOperations name="eSet"> + <eParameters name="feature" eType="#//EStructuralFeature"/> + <eParameters name="newValue" eType="#//EJavaObject"/> + </eOperations> + <eOperations name="eIsSet" eType="#//EBoolean"> + <eParameters name="feature" eType="#//EStructuralFeature"/> + </eOperations> + <eOperations name="eUnset"> + <eParameters name="feature" eType="#//EStructuralFeature"/> + </eOperations> + <eOperations name="eInvoke" eType="#//EJavaObject" eExceptions="#//EInvocationTargetException"> + <eParameters name="operation" eType="#//EOperation"/> + <eParameters name="arguments"> + <eGenericType eClassifier="#//EEList"> + <eTypeArguments/> + </eGenericType> + </eParameters> + </eOperations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EOperation" eSuperTypes="#//ETypedElement"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="UniqueParameterNames UniqueTypeParameterNames NoRepeatingVoid"/> + </eAnnotations> + <eOperations name="getOperationID" eType="#//EInt"/> + <eOperations name="isOverrideOf" eType="#//EBoolean"> + <eParameters name="someOperation" eType="#//EOperation"/> + </eOperations> + <eStructuralFeatures xsi:type="ecore:EReference" name="eContainingClass" eType="#//EClass" + changeable="false" transient="true" resolveProxies="false" eOpposite="#//EClass/eOperations"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eTypeParameters" upperBound="-1" + eType="#//ETypeParameter" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eParameters" upperBound="-1" + eType="#//EParameter" containment="true" resolveProxies="false" eOpposite="#//EParameter/eOperation"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eExceptions" upperBound="-1" + eType="#//EClassifier" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="eGenericExceptions" upperBound="-1" + eType="#//EGenericType" unsettable="true" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EPackage" eSuperTypes="#//ENamedElement"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="WellFormedNsURI WellFormedNsPrefix UniqueSubpackageNames UniqueClassifierNames UniqueNsURIs"/> + </eAnnotations> + <eOperations name="getEClassifier" eType="#//EClassifier"> + <eParameters name="name" eType="#//EString"/> + </eOperations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="nsURI" eType="#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="nsPrefix" eType="#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eFactoryInstance" lowerBound="1" + eType="#//EFactory" transient="true" resolveProxies="false" eOpposite="#//EFactory/ePackage"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eClassifiers" upperBound="-1" + eType="#//EClassifier" containment="true" eOpposite="#//EClassifier/ePackage"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eSubpackages" upperBound="-1" + eType="#//EPackage" containment="true" eOpposite="#//EPackage/eSuperPackage"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eSuperPackage" eType="#//EPackage" + changeable="false" transient="true" eOpposite="#//EPackage/eSubpackages"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EParameter" eSuperTypes="#//ETypedElement"> + <eStructuralFeatures xsi:type="ecore:EReference" name="eOperation" eType="#//EOperation" + changeable="false" transient="true" resolveProxies="false" eOpposite="#//EOperation/eParameters"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EReference" eSuperTypes="#//EStructuralFeature"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="ConsistentOpposite SingleContainer ConsistentKeys ConsistentUnique ConsistentContainer"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="container" eType="#//EBoolean" + changeable="false" volatile="true" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="resolveProxies" eType="#//EBoolean" + defaultValueLiteral="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eOpposite" eType="#//EReference"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eReferenceType" lowerBound="1" + eType="#//EClass" changeable="false" volatile="true" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eKeys" upperBound="-1" + eType="#//EAttribute"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EStructuralFeature" abstract="true" + eSuperTypes="#//ETypedElement"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="ValidDefaultValueLiteral"/> + </eAnnotations> + <eOperations name="getFeatureID" eType="#//EInt"/> + <eOperations name="getContainerClass"> + <eGenericType eClassifier="#//EJavaClass"> + <eTypeArguments/> + </eGenericType> + </eOperations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="changeable" eType="#//EBoolean" + defaultValueLiteral="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="volatile" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="transient" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValueLiteral" eType="#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="#//EJavaObject" + changeable="false" volatile="true" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="unsettable" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="derived" eType="#//EBoolean"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eContainingClass" eType="#//EClass" + changeable="false" transient="true" resolveProxies="false" eOpposite="#//EClass/eStructuralFeatures"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ETypedElement" abstract="true" eSuperTypes="#//ENamedElement"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="ValidLowerBound ValidUpperBound ConsistentBounds ValidType"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="ordered" eType="#//EBoolean" + defaultValueLiteral="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="unique" eType="#//EBoolean" + defaultValueLiteral="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="#//EInt"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="#//EInt" + defaultValueLiteral="1"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="many" eType="#//EBoolean" + changeable="false" volatile="true" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="required" eType="#//EBoolean" + changeable="false" volatile="true" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eType" eType="#//EClassifier" + volatile="true" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="eGenericType" eType="#//EGenericType" + volatile="true" unsettable="true" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="suppressedIsSetVisibility" value="true"/> + <details key="suppressedUnsetVisibility" value="true"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EBigDecimal" instanceClassName="java.math.BigDecimal"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#decimal"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EBigInteger" instanceClassName="java.math.BigInteger"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#integer"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EBoolean" instanceClassName="boolean"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#boolean"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EBooleanObject" instanceClassName="java.lang.Boolean"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="EBoolean"/> + <details key="name" value="EBoolean:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EByte" instanceClassName="byte"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#byte"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EByteArray" instanceClassName="byte[]"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#hexBinary"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EByteObject" instanceClassName="java.lang.Byte"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="EByte"/> + <details key="name" value="EByte:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EChar" instanceClassName="char"/> + <eClassifiers xsi:type="ecore:EDataType" name="ECharacterObject" instanceClassName="java.lang.Character"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="EChar"/> + <details key="name" value="EChar:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EDate" instanceClassName="java.util.Date"/> + <eClassifiers xsi:type="ecore:EDataType" name="EDiagnosticChain" instanceClassName="org.eclipse.emf.common.util.DiagnosticChain" + serializable="false"/> + <eClassifiers xsi:type="ecore:EDataType" name="EDouble" instanceClassName="double"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#double"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EDoubleObject" instanceClassName="java.lang.Double"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="EDouble"/> + <details key="name" value="EDouble:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EEList" instanceClassName="org.eclipse.emf.common.util.EList" + serializable="false"> + <eTypeParameters name="E"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EEnumerator" instanceClassName="org.eclipse.emf.common.util.Enumerator" + serializable="false"/> + <eClassifiers xsi:type="ecore:EDataType" name="EFeatureMap" instanceClassName="org.eclipse.emf.ecore.util.FeatureMap" + serializable="false"/> + <eClassifiers xsi:type="ecore:EDataType" name="EFeatureMapEntry" instanceClassName="org.eclipse.emf.ecore.util.FeatureMap$Entry" + serializable="false"/> + <eClassifiers xsi:type="ecore:EDataType" name="EFloat" instanceClassName="float"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#float"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EFloatObject" instanceClassName="java.lang.Float"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="EFloat"/> + <details key="name" value="EFloat:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EInt" instanceClassName="int"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#int"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EIntegerObject" instanceClassName="java.lang.Integer"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="EInt"/> + <details key="name" value="EInt:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EJavaClass" instanceClassName="java.lang.Class"> + <eTypeParameters name="T"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EJavaObject" instanceClassName="java.lang.Object"/> + <eClassifiers xsi:type="ecore:EDataType" name="ELong" instanceClassName="long"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#long"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="ELongObject" instanceClassName="java.lang.Long"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="ELong"/> + <details key="name" value="ELong:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EMap" instanceClassName="java.util.Map" + serializable="false"> + <eTypeParameters name="K"/> + <eTypeParameters name="V"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EResource" instanceClassName="org.eclipse.emf.ecore.resource.Resource" + serializable="false"/> + <eClassifiers xsi:type="ecore:EDataType" name="EResourceSet" instanceClassName="org.eclipse.emf.ecore.resource.ResourceSet" + serializable="false"/> + <eClassifiers xsi:type="ecore:EDataType" name="EShort" instanceClassName="short"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#short"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EShortObject" instanceClassName="java.lang.Short"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="EShort"/> + <details key="name" value="EShort:Object"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EString" instanceClassName="java.lang.String"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="baseType" value="http://www.w3.org/2001/XMLSchema#string"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EStringToStringMapEntry" instanceClassName="java.util.Map$Entry"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="key" eType="#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="ETreeIterator" instanceClassName="org.eclipse.emf.common.util.TreeIterator" + serializable="false"> + <eTypeParameters name="E"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EGenericType"> + <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> + <details key="constraints" value="ConsistentType ConsistentBounds ConsistentArguments"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="eUpperBound" eType="#//EGenericType" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eTypeArguments" upperBound="-1" + eType="#//EGenericType" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eRawType" lowerBound="1" + eType="#//EClassifier" changeable="false" transient="true" derived="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eLowerBound" eType="#//EGenericType" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eTypeParameter" eType="#//ETypeParameter" + resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="eClassifier" eType="#//EClassifier"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ETypeParameter" eSuperTypes="#//ENamedElement"> + <eStructuralFeatures xsi:type="ecore:EReference" name="eBounds" upperBound="-1" + eType="#//EGenericType" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="EInvocationTargetException" instanceClassName="java.lang.reflect.InvocationTargetException" + serializable="false"/> +</ecore:EPackage> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/Example.emftasks b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/Example.emftasks new file mode 100644 index 00000000..2499f8ca --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/Example.emftasks @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<emftasks:TaskCollection xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:emftasks="http://eclipse.org/mylyn/tasks/emftasks/1.0" label="Test Tasks" lastTaskId="100"> + <tasks id="1" summary="Test Task 1" description="This is test task 1." priority="STANDARD" dueDate="2012-10-28T00:00:00.000-0700" creationDate="2012-10-21T00:00:00.000-0700"/> + <tasks id="2" summary="Test Task 2" description="This is test task 2." priority="IMPORTANT" dueDate="2012-10-29T00:00:00.000-0700" creationDate="2012-10-22T00:00:00.000-0700"/> + <tasks id="3" summary="Test Task 3" description="This is test task 3." priority="URGENT" dueDate="2012-10-30T00:00:00.000-0700" creationDate="2012-10-23T00:00:00.000-0700"/> +</emftasks:TaskCollection> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleCopy.emftasks b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleCopy.emftasks new file mode 100644 index 00000000..1e98eaaf --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleCopy.emftasks @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<emftasks:TaskCollection xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:emftasks="http://eclipse.org/mylyn/tasks/emftasks/1.0" label="Test Tasks"> + <tasks id="1" summary="Test Task 1" description="This is test task 1." priority="STANDARD" dueDate="2012-10-28T00:00:00.000-0700" creationDate="2012-10-21T00:00:00.000-0700"/> + <tasks id="2" summary="Test Task 2" description="This is test task 2." priority="IMPORTANT" dueDate="2012-10-29T00:00:00.000-0700" creationDate="2012-10-22T00:00:00.000-0700"/> + <tasks id="3" summary="Test Task 3" description="This is test task 3." priority="URGENT" dueDate="2012-10-30T00:00:00.000-0700" creationDate="2012-10-23T00:00:00.000-0700"/> +</emftasks:TaskCollection> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleEncoding.emftasks b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleEncoding.emftasks new file mode 100644 index 00000000..9828c366 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleEncoding.emftasks @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<emftasks:TaskCollection xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:emftasks="http://eclipse.org/mylyn/tasks/emftasks/1.0" label="Test Tasks"> + <tasks id="0" summary="Encoded Task" description="3-Alpha" priority="URGENT" dueDate="2012-10-30T00:00:00.000-0700" creationDate="2012-10-23T00:00:00.000-0700"/> +</emftasks:TaskCollection> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleModified.emftasks b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleModified.emftasks new file mode 100644 index 00000000..e6fcce9a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleModified.emftasks @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<emftasks:TaskCollection xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:emftasks="http://eclipse.org/mylyn/tasks/emftasks/1.0" label="Modified Test Tasks"> + <tasks id="1" summary="Modified Test Task 1" description="This is test task 1." priority="STANDARD" dueDate="2012-10-28T00:00:00.000-0700" creationDate="2012-10-21T00:00:00.000-0700"/> + <tasks id="2" summary="Test Task 2" description="This is test task 2." priority="IMPORTANT" dueDate="2012-10-29T00:00:00.000-0700" creationDate="2012-10-22T00:00:00.000-0700"/> + <tasks id="3" summary="Test Task 3" description="This is test task 3." priority="URGENT" dueDate="2012-10-30T00:00:00.000-0700" creationDate="2012-10-23T00:00:00.000-0700"/> +</emftasks:TaskCollection> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleWorkspace.emftasks b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleWorkspace.emftasks new file mode 100644 index 00000000..6dc0844a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core.tests/testdata/ExampleWorkspace.emftasks @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<emftasks:TaskCollection xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:emftasks="http://eclipse.org/mylyn/tasks/emftasks/1.0" label="Test Tasks"> + <tasks id="1" summary="Test Task 1 4" description="This is test task 1." priority="STANDARD" dueDate="2012-10-28T00:00:00.000-0700" completionDate="2012-10-31T00:00:00.000-0700" creationDate="2012-10-21T00:00:00.000-0700"> + <collaborators>Melvin</collaborators> + <collaborators>Dincus</collaborators> + </tasks> + <tasks id="2" summary="Test Task 2 Unmodified 3" description="This is test task 2. I think. Really. For sure." priority="IMPORTANT" dueDate="2012-10-29T00:00:00.000-0700" creationDate="2012-10-22T00:00:00.000-0700"/> + <tasks id="3" summary="Test Task 3 Hey" description="This is test task 3." priority="URGENT" dueDate="2012-10-30T00:00:00.000-0700" creationDate="2012-10-23T00:00:00.000-0700"/> +</emftasks:TaskCollection> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.classpath b/org.eclipse.mylyn.reviews.example.emftasks.core/.classpath new file mode 100644 index 00000000..ad32c83a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.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/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.project b/org.eclipse.mylyn.reviews.example.emftasks.core/.project new file mode 100644 index 00000000..1d9983c6 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.project @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.mylyn.reviews.example.emftasks.core</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> + <buildCommand> + <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature> + </natures> +</projectDescription> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 00000000..5a0ad22d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.core.runtime.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +line.separator=\n diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000..bc2c501d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,353 @@ +#Thu Mar 10 01:20:38 PST 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.codeComplete.argumentPrefixes= +org.eclipse.jdt.core.codeComplete.argumentSuffixes= +org.eclipse.jdt.core.codeComplete.fieldPrefixes= +org.eclipse.jdt.core.codeComplete.fieldSuffixes= +org.eclipse.jdt.core.codeComplete.localPrefixes= +org.eclipse.jdt.core.codeComplete.localSuffixes= +org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=error +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled +org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL +org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=1 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +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=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=false +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=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert +org.eclipse.jdt.core.formatter.comment.line_length=120 +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=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +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=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=do not 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=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_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_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=true +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=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=true +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=true +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=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_outer_expressions_when_nested=true diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000..f6c0a161 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,63 @@ +#Wed Mar 02 16:00:06 PST 2011 +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_Mylyn based on Eclipse +formatter_settings_version=12 +internal.default.compliance=default +org.eclipse.jdt.ui.exception.name=e +org.eclipse.jdt.ui.gettersetter.use.is=true +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.keywordthis=false +org.eclipse.jdt.ui.overrideannotation=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">/**\r\n * @return the ${bare_field_name}\r\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">/**\r\n * @param ${param} the ${bare_field_name} to set\r\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">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\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">/**\r\n * @author ${user}\r\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">/**\r\n * \r\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">/**\r\n * ${tags}\r\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\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\r\n * Copyright (c) ${year} Tasktop Technologies and others.\r\n * All rights reserved. This program and the accompanying materials\r\n * are made available under the terms of the Eclipse Public License v1.0\r\n * which accompanies this distribution, and is available at\r\n * http\://www.eclipse.org/legal/epl-v10.html\r\n *\r\n * Contributors\:\r\n * Tasktop Technologies - initial API and implementation\r\n *******************************************************************************/\r\n\r\n${package_declaration}\r\n\r\n${typecomment}\r\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">\r\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">\r\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">\r\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">\r\n</template><template autoinsert\="false" 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\r\n${exception_var}.printStackTrace();</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ignore\r\n${body_statement}</template><template autoinsert\="false" 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}\r\n// ignore</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><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">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * @return the ${bare_field_name}\r\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * @param ${param} the ${bare_field_name} to set\r\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created JavaScript files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\r\n * @author ${user}\r\n *\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for vars" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Jsdoc)\r\n * ${see_to_overridden}\r\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\r\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created function stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated function stub\r\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\r\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.wst.jsdt.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.wst.jsdt.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_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=true +sp_cleanup.correct_indentation=true +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_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=true +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +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=true +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=true +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/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.ltk.core.refactoring.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.ltk.core.refactoring.prefs new file mode 100644 index 00000000..5e7f2bd4 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.ltk.core.refactoring.prefs @@ -0,0 +1,3 @@ +#Tue Aug 18 22:42:26 PDT 2009 +eclipse.preferences.version=1 +org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.mylyn.tasks.ui.prefs new file mode 100644 index 00000000..d8c6d26a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.mylyn.tasks.ui.prefs @@ -0,0 +1,4 @@ +#Mon Jun 25 03:02:37 GMT 2007 +eclipse.preferences.version=1 +project.repository.kind=bugzilla +project.repository.url=https\://bugs.eclipse.org/bugs diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.mylyn.team.ui.prefs new file mode 100644 index 00000000..10d0afb9 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.mylyn.team.ui.prefs @@ -0,0 +1,2 @@ +commit.comment.template=${task.key}\: ${task.description}\n\nTask-Url\: ${task.url} +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.pde.prefs b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.pde.prefs new file mode 100644 index 00000000..e8f2d562 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/.settings/org.eclipse.pde.prefs @@ -0,0 +1,18 @@ +#Tue Apr 15 11:07:59 PDT 2008 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=2 +compilers.p.missing-bundle-classpath-entries=1 +compilers.p.missing-packages=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=0 +compilers.p.unknown-class=0 +compilers.p.unknown-element=0 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=0 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.use-project=true +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.example.emftasks.core/META-INF/MANIFEST.MF new file mode 100644 index 00000000..d0476733 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/META-INF/MANIFEST.MF @@ -0,0 +1,21 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Mylyn Emf Example Connector +Bundle-SymbolicName: org.eclipse.mylyn.reviews.example.emftasks.core;singleton:=true +Bundle-Version: 0.13.0.qualifier +Bundle-ClassPath: . +Bundle-Activator: org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleCorePlugin +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.emf.common, + org.eclipse.emf.ecore, + org.eclipse.emf.ecore.xmi, + org.eclipse.mylyn.commons.core, + org.eclipse.mylyn.commons.net, + org.eclipse.mylyn.tasks.core, + org.eclipse.mylyn.commons.sdk.util, + org.eclipse.mylyn.reviews.connector, + org.eclipse.mylyn.reviews.example.emftasks.model +Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-Vendor: Eclipse Mylyn +Export-Package: org.eclipse.mylyn.internal.reviews.example.emftasks.core;x-friends:="org.eclipse.mylyn.reviews.connector.tests,org.eclipse.mylyn.reviews.example.emftasks.ui" diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/about.html b/org.eclipse.mylyn.reviews.example.emftasks.core/about.html new file mode 100644 index 00000000..d774b07c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/about.html @@ -0,0 +1,27 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> +<html> +<head> +<title>About</title> +<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1"> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 25, 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</a>.</p> + +</body> +</html>
\ No newline at end of file diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/build.properties b/org.eclipse.mylyn.reviews.example.emftasks.core/build.properties new file mode 100644 index 00000000..c4bc00d1 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/build.properties @@ -0,0 +1,7 @@ +# + +bin.includes = .,\ + META-INF/ +jars.compile.order = . +source.. = src/ +output.. = bin/ diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/pom.xml b/org.eclipse.mylyn.reviews.example.emftasks.core/pom.xml new file mode 100644 index 00000000..0b4c8b8c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/pom.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>org.eclipse.mylyn.reviews.r4e-parent</artifactId> + <groupId>org.eclipse.mylyn.reviews.r4e</groupId> + <version>0.13.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.mylyn.reviews.example.emftasks.core</artifactId> + <version>0.13.0-SNAPSHOT</version> + <packaging>eclipse-plugin</packaging> + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-source-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/src/org/eclipse/mylyn/internal/reviews/example/emftasks/core/EmfExampleConnector.java b/org.eclipse.mylyn.reviews.example.emftasks.core/src/org/eclipse/mylyn/internal/reviews/example/emftasks/core/EmfExampleConnector.java new file mode 100644 index 00000000..72fb0728 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/src/org/eclipse/mylyn/internal/reviews/example/emftasks/core/EmfExampleConnector.java @@ -0,0 +1,116 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + * Others (includes code modified from GerritConnector in org.eclipse.mylyn.gerit, see author annotations.) + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.core; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EReference; +import org.eclipse.mylyn.reviews.connector.EmfTaskSchema.FieldFeature; +import org.eclipse.mylyn.reviews.connector.GenericEmfConnector; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.tasks.core.data.DefaultTaskSchema; +import org.osgi.framework.Bundle; + +/** + * Core connector support for the EMF example. + * + * @author Miles Parker + */ +public class EmfExampleConnector extends GenericEmfConnector { + + /** + * Connector kind + */ + public static final String CONNECTOR_KIND = "org.eclipse.emftasks"; //$NON-NLS-1$ + + /** + * Label for the connector. + */ + public static final String CONNECTOR_LABEL = "Emf Tasks Example"; //$NON-NLS-1$ + + private final EClass[] CLASSES = new EClass[] { EmfTasksPackage.Literals.SIMPLE_TASK }; + + private final EAttribute[] SEARCH_ATTRIBUTES = new EAttribute[] { EmfTasksPackage.Literals.SIMPLE_TASK__SUMMARY, + EmfTasksPackage.Literals.SIMPLE_TASK__ID, EmfTasksPackage.Literals.SIMPLE_TASK__DESCRIPTION, + EmfTasksPackage.Literals.SIMPLE_TASK__PRIORITY, EmfTasksPackage.Literals.SIMPLE_TASK__STATUS, + EmfTasksPackage.Literals.SIMPLE_TASK__DUE_DATE, EmfTasksPackage.Literals.SIMPLE_TASK__CREATION_DATE, + EmfTasksPackage.Literals.SIMPLE_TASK__MODIFICATION_DATE, + EmfTasksPackage.Literals.SIMPLE_TASK__COMPLETION_DATE }; + + private final DefaultTaskSchema parentSchema = DefaultTaskSchema.getInstance(); + + private final FieldFeature[] PAIRS = new FieldFeature[] { + new FieldFeature(parentSchema.TASK_KEY, EmfTasksPackage.Literals.SIMPLE_TASK__ID), + new FieldFeature(parentSchema.DESCRIPTION, EmfTasksPackage.Literals.SIMPLE_TASK__DESCRIPTION), + new FieldFeature(parentSchema.SUMMARY, EmfTasksPackage.Literals.SIMPLE_TASK__SUMMARY), + new FieldFeature(parentSchema.DATE_COMPLETION, EmfTasksPackage.Literals.SIMPLE_TASK__COMPLETION_DATE), + new FieldFeature(parentSchema.DATE_DUE, EmfTasksPackage.Literals.SIMPLE_TASK__DUE_DATE), + new FieldFeature(parentSchema.DATE_MODIFICATION, EmfTasksPackage.Literals.SIMPLE_TASK__MODIFICATION_DATE), + new FieldFeature(parentSchema.DATE_CREATION, EmfTasksPackage.Literals.SIMPLE_TASK__CREATION_DATE), + new FieldFeature(parentSchema.PRIORITY, EmfTasksPackage.Literals.SIMPLE_TASK__PRIORITY), + new FieldFeature(parentSchema.STATUS, EmfTasksPackage.Literals.SIMPLE_TASK__STATUS), + new FieldFeature(parentSchema.RANK, EmfTasksPackage.Literals.SIMPLE_TASK__RANKING) }; + + public EmfExampleConnector() { + if (EmfExampleCorePlugin.getDefault() != null) { + EmfExampleCorePlugin.getDefault().setConnector(this); + } + } + + @Override + public String getConnectorKind() { + return CONNECTOR_KIND; + } + + @Override + public String getLabel() { + return CONNECTOR_LABEL; + } + + @Override + public EReference getContainmentReference() { + return EmfTasksPackage.Literals.TASK_COLLECTION__TASKS; + } + + @Override + public Bundle getConnectorBundle() { + return EmfExampleCorePlugin.getDefault().getBundle(); + } + + @Override + public EClass[] getTaskClasses() { + return CLASSES; + } + + @Override + public FieldFeature[] getTaskFeatures() { + return PAIRS; + } + + @Override + public EAttribute getContentsNameAttribute() { + return EmfTasksPackage.Literals.TASK_COLLECTION__LABEL; + } + + @Override + public EAttribute[] getSearchAttributes() { + return SEARCH_ATTRIBUTES; + } + + @Override + public EAttribute getTaskKeySequenceAttribute() { + return EmfTasksPackage.Literals.TASK_COLLECTION__LAST_TASK_ID; + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.core/src/org/eclipse/mylyn/internal/reviews/example/emftasks/core/EmfExampleCorePlugin.java b/org.eclipse.mylyn.reviews.example.emftasks.core/src/org/eclipse/mylyn/internal/reviews/example/emftasks/core/EmfExampleCorePlugin.java new file mode 100644 index 00000000..470a745a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.core/src/org/eclipse/mylyn/internal/reviews/example/emftasks/core/EmfExampleCorePlugin.java @@ -0,0 +1,82 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.core; + +import java.io.File; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IPath; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Platform; +import org.eclipse.core.runtime.Plugin; +import org.eclipse.core.runtime.Status; +import org.osgi.framework.BundleContext; + +/** + * Controls the R4E plug-in life cycle. + * + * @author Miles Parker + */ +public class EmfExampleCorePlugin extends Plugin { + + public static final String PLUGIN_ID = "org.eclipse.emf.connector.example"; //$NON-NLS-1$ + + private static EmfExampleCorePlugin plugin; + + private EmfExampleConnector connector; + + public EmfExampleCorePlugin() { + } + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + plugin = this; + } + + @Override + public void stop(BundleContext context) throws Exception { + plugin = null; + super.stop(context); + } + + /** + * Returns the shared instance. + */ + public static EmfExampleCorePlugin getDefault() { + return plugin; + } + + void setConnector(EmfExampleConnector connector) { + this.connector = connector; + } + + public EmfExampleConnector getConnector() { + return connector; + } + + protected File getRepositoryConfigurationCache() { + IPath stateLocation = Platform.getStateLocation(getBundle()); + IPath cache = stateLocation.append("repositoryConfigurations"); //$NON-NLS-1$ + return cache.toFile(); + } + + public static void logError(final String message, final Throwable throwable) { + getDefault().getLog().log(new Status(IStatus.ERROR, PLUGIN_ID, 0, message, throwable)); + } + + public static void handleCoreException(String message, Throwable e) throws CoreException { + throw new CoreException(new Status(IStatus.ERROR, EmfExampleCorePlugin.PLUGIN_ID, message, e)); + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/.classpath b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/.classpath new file mode 100644 index 00000000..121e527a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/.project b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/.project new file mode 100644 index 00000000..3c84e467 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.mylyn.reviews.example.emftasks.model.edit</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.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/META-INF/MANIFEST.MF new file mode 100644 index 00000000..359d5f41 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/META-INF/MANIFEST.MF @@ -0,0 +1,15 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Mylyn Emf Example Tasks Model Edit Support +Bundle-SymbolicName: org.eclipse.mylyn.reviews.example.emftasks.model.edit;singleton:=true +Bundle-Version: 0.13.0.qualifier +Bundle-ClassPath: . +Bundle-Activator: org.eclipse.mylyn.reviews.example.emftasks.provider.EmfTasksEditPlugin$Implementation +Bundle-Vendor: Eclipse Mylyn +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.mylyn.reviews.example.emftasks.provider +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.mylyn.reviews.example.emftasks.model;visibility:=reexport, + org.eclipse.emf.edit;visibility:=reexport +Bundle-ActivationPolicy: lazy diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/build.properties b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/build.properties new file mode 100644 index 00000000..6e3e902e --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/build.properties @@ -0,0 +1,10 @@ +# + +bin.includes = .,\ + icons/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src/ +output.. = bin/ diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/ctool16/CreateTaskCollection_tasks_SimpleTask.gif b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/ctool16/CreateTaskCollection_tasks_SimpleTask.gif Binary files differnew file mode 100644 index 00000000..41eefa22 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/ctool16/CreateTaskCollection_tasks_SimpleTask.gif diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/Category.gif b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/Category.gif Binary files differnew file mode 100644 index 00000000..caf28045 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/Category.gif diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/SimpleTask.gif b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/SimpleTask.gif Binary files differnew file mode 100644 index 00000000..be22463d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/SimpleTask.gif diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/TaskCollection.gif b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/TaskCollection.gif Binary files differnew file mode 100644 index 00000000..7bac4fd3 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/icons/full/obj16/TaskCollection.gif diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/plugin.properties b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/plugin.properties new file mode 100644 index 00000000..3f2245d8 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/plugin.properties @@ -0,0 +1,50 @@ +# + +pluginName = EMF Example Model Edit Support +providerName = Eclipse Mylyn + +_UI_CreateChild_text = {0} +_UI_CreateChild_text2 = {1} {0} +_UI_CreateChild_text3 = {1} +_UI_CreateChild_tooltip = Create New {0} Under {1} Feature +_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}. +_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent. + +_UI_PropertyDescriptor_description = The {0} of the {1} + +_UI_SimpleTask_type = Simple Task +_UI_Category_type = Category +_UI_TaskCollection_type = Task Collection +_UI_Unknown_type = Object + +_UI_Unknown_datatype= Value + +_UI_SimpleTask_id_feature = Id +_UI_SimpleTask_summary_feature = Summary +_UI_SimpleTask_description_feature = Description +_UI_SimpleTask_status_feature = Status +_UI_SimpleTask_priority_feature = Priority +_UI_SimpleTask_dueDate_feature = Due Date +_UI_SimpleTask_completionDate_feature = Completion Date +_UI_SimpleTask_creationDate_feature = Creation Date +_UI_SimpleTask_modificationDate_feature = Modification Date +_UI_SimpleTask_collaborators_feature = Collaborators +_UI_SimpleTask_relatedUrl_feature = Related Url +_UI_SimpleTask_ranking_feature = Ranking +_UI_SimpleTask_category_feature = Category +_UI_Category_summary_feature = Summary +_UI_Category_description_feature = Description +_UI_TaskCollection_label_feature = Label +_UI_TaskCollection_tasks_feature = Tasks +_UI_Unknown_feature = Unspecified + +_UI_Status_New_literal = NEW +_UI_Status_Active_literal = ACTIVE +_UI_Status_Complete_literal = COMPLETE +_UI_Status_Deferred_literal = DEFERRED +_UI_Status_Invalid_literal = INVALID +_UI_Priority_Minor_literal = MINOR +_UI_Priority_Standard_literal = STANDARD +_UI_Priority_Important_literal = IMPORTANT +_UI_Priority_Urgent_literal = URGENT +_UI_TaskCollection_lastTaskId_feature = Last Task Id diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/plugin.xml b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/plugin.xml new file mode 100644 index 00000000..72f1a94b --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/plugin.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- +--> + +<plugin> + + <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories"> + <!-- @generated emftasks --> + <factory + uri="http://eclipse.org/mylyn/tasks/emftasks/1.0" + class="org.eclipse.mylyn.reviews.example.emftasks.provider.EmfTasksItemProviderAdapterFactory" + supportedTypes= + "org.eclipse.emf.edit.provider.IEditingDomainItemProvider + org.eclipse.emf.edit.provider.IStructuredItemContentProvider + org.eclipse.emf.edit.provider.ITreeItemContentProvider + org.eclipse.emf.edit.provider.IItemLabelProvider + org.eclipse.emf.edit.provider.IItemPropertySource"/> + </extension> + +</plugin> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/pom.xml b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/pom.xml new file mode 100644 index 00000000..7218805f --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/pom.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>org.eclipse.mylyn.reviews.r4e-parent</artifactId> + <groupId>org.eclipse.mylyn.reviews.r4e</groupId> + <version>0.13.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.mylyn.reviews.example.emftasks.model.edit</artifactId> + <version>0.13.0-SNAPSHOT</version> + <packaging>eclipse-plugin</packaging> + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-source-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/CategoryItemProvider.java b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/CategoryItemProvider.java new file mode 100644 index 00000000..ae4e4e34 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/CategoryItemProvider.java @@ -0,0 +1,181 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.eclipse.mylyn.reviews.example.emftasks.Category; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; + +/** + * This is the item provider adapter for a {@link org.eclipse.mylyn.reviews.example.emftasks.Category} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class CategoryItemProvider + extends ItemProviderAdapter + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CategoryItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addSummaryPropertyDescriptor(object); + addDescriptionPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Summary feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addSummaryPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Category_summary_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Category_summary_feature", "_UI_Category_type"), + EmfTasksPackage.Literals.CATEGORY__SUMMARY, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Description feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescriptionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Category_description_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Category_description_feature", "_UI_Category_type"), + EmfTasksPackage.Literals.CATEGORY__DESCRIPTION, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This returns Category.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Category")); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Category)object).getSummary(); + return label == null || label.length() == 0 ? + getString("_UI_Category_type") : + getString("_UI_Category_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Category.class)) { + case EmfTasksPackage.CATEGORY__SUMMARY: + case EmfTasksPackage.CATEGORY__DESCRIPTION: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return EmfTasksEditPlugin.INSTANCE; + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/EmfTasksEditPlugin.java b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/EmfTasksEditPlugin.java new file mode 100644 index 00000000..d46202bd --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/EmfTasksEditPlugin.java @@ -0,0 +1,89 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.provider; + +import org.eclipse.emf.common.EMFPlugin; + +import org.eclipse.emf.common.util.ResourceLocator; + +/** + * This is the central singleton for the EmfTasks edit plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public final class EmfTasksEditPlugin extends EMFPlugin { + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EmfTasksEditPlugin INSTANCE = new EmfTasksEditPlugin(); + + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static Implementation plugin; + + /** + * Create the instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksEditPlugin() { + super + (new ResourceLocator [] { + }); + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + @Override + public ResourceLocator getPluginResourceLocator() { + return plugin; + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + public static Implementation getPlugin() { + return plugin; + } + + /** + * The actual implementation of the Eclipse <b>Plugin</b>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static class Implementation extends EclipsePlugin { + /** + * Creates an instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Implementation() { + super(); + + // Remember the static instance. + // + plugin = this; + } + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/EmfTasksItemProviderAdapterFactory.java b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/EmfTasksItemProviderAdapterFactory.java new file mode 100644 index 00000000..e44bcae2 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/EmfTasksItemProviderAdapterFactory.java @@ -0,0 +1,247 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.provider; + +import java.util.ArrayList; +import java.util.Collection; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.edit.provider.ChangeNotifier; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.ComposedAdapterFactory; +import org.eclipse.emf.edit.provider.IChangeNotifier; +import org.eclipse.emf.edit.provider.IDisposable; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.INotifyChangedListener; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.mylyn.reviews.example.emftasks.util.EmfTasksAdapterFactory; + +/** + * This is the factory that is used to provide the interfaces needed to support Viewers. + * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}. + * The adapters also support Eclipse property sheets. + * Note that most of the adapters are shared among multiple instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class EmfTasksItemProviderAdapterFactory extends EmfTasksAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { + /** + * This keeps track of the root adapter factory that delegates to this adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ComposedAdapterFactory parentAdapterFactory; + + /** + * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IChangeNotifier changeNotifier = new ChangeNotifier(); + + /** + * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<Object> supportedTypes = new ArrayList<Object>(); + + /** + * This constructs an instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksItemProviderAdapterFactory() { + supportedTypes.add(IEditingDomainItemProvider.class); + supportedTypes.add(IStructuredItemContentProvider.class); + supportedTypes.add(ITreeItemContentProvider.class); + supportedTypes.add(IItemLabelProvider.class); + supportedTypes.add(IItemPropertySource.class); + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SimpleTaskItemProvider simpleTaskItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createSimpleTaskAdapter() { + if (simpleTaskItemProvider == null) { + simpleTaskItemProvider = new SimpleTaskItemProvider(this); + } + + return simpleTaskItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.mylyn.reviews.example.emftasks.Category} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected CategoryItemProvider categoryItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.mylyn.reviews.example.emftasks.Category}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createCategoryAdapter() { + if (categoryItemProvider == null) { + categoryItemProvider = new CategoryItemProvider(this); + } + + return categoryItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TaskCollectionItemProvider taskCollectionItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTaskCollectionAdapter() { + if (taskCollectionItemProvider == null) { + taskCollectionItemProvider = new TaskCollectionItemProvider(this); + } + + return taskCollectionItemProvider; + } + + /** + * This returns the root adapter factory that contains this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ComposeableAdapterFactory getRootAdapterFactory() { + return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory(); + } + + /** + * This sets the composed adapter factory that contains this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) { + this.parentAdapterFactory = parentAdapterFactory; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isFactoryForType(Object type) { + return supportedTypes.contains(type) || super.isFactoryForType(type); + } + + /** + * This implementation substitutes the factory itself as the key for the adapter. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter adapt(Notifier notifier, Object type) { + return super.adapt(notifier, this); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object adapt(Object object, Object type) { + if (isFactoryForType(type)) { + Object adapter = super.adapt(object, type); + if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) { + return adapter; + } + } + + return null; + } + + /** + * This adds a listener. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void addListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.addListener(notifyChangedListener); + } + + /** + * This removes a listener. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void removeListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.removeListener(notifyChangedListener); + } + + /** + * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void fireNotifyChanged(Notification notification) { + changeNotifier.fireNotifyChanged(notification); + + if (parentAdapterFactory != null) { + parentAdapterFactory.fireNotifyChanged(notification); + } + } + + /** + * This disposes all of the item providers created by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void dispose() { + if (simpleTaskItemProvider != null) simpleTaskItemProvider.dispose(); + if (categoryItemProvider != null) categoryItemProvider.dispose(); + if (taskCollectionItemProvider != null) taskCollectionItemProvider.dispose(); + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/SimpleTaskItemProvider.java b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/SimpleTaskItemProvider.java new file mode 100644 index 00000000..9df9b247 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/SimpleTaskItemProvider.java @@ -0,0 +1,444 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.reviews.example.emftasks.SimpleTask; + +/** + * This is the item provider adapter for a {@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class SimpleTaskItemProvider + extends ItemProviderAdapter + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public SimpleTaskItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addIdPropertyDescriptor(object); + addSummaryPropertyDescriptor(object); + addDescriptionPropertyDescriptor(object); + addStatusPropertyDescriptor(object); + addPriorityPropertyDescriptor(object); + addDueDatePropertyDescriptor(object); + addCompletionDatePropertyDescriptor(object); + addCreationDatePropertyDescriptor(object); + addModificationDatePropertyDescriptor(object); + addCollaboratorsPropertyDescriptor(object); + addRelatedUrlPropertyDescriptor(object); + addRankingPropertyDescriptor(object); + addCategoryPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_id_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_id_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__ID, + true, + false, + false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Summary feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addSummaryPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_summary_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_summary_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__SUMMARY, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Description feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescriptionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_description_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_description_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__DESCRIPTION, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Status feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addStatusPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_status_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_status_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__STATUS, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Priority feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPriorityPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_priority_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_priority_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__PRIORITY, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Due Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDueDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_dueDate_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_dueDate_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__DUE_DATE, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Completion Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCompletionDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_completionDate_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_completionDate_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__COMPLETION_DATE, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Creation Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCreationDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_creationDate_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_creationDate_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__CREATION_DATE, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Modification Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addModificationDatePropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_modificationDate_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_modificationDate_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__MODIFICATION_DATE, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Collaborators feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCollaboratorsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_collaborators_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_collaborators_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__COLLABORATORS, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Related Url feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRelatedUrlPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_relatedUrl_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_relatedUrl_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__RELATED_URL, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Ranking feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRankingPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_ranking_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_ranking_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__RANKING, + true, + false, + false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Category feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCategoryPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SimpleTask_category_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SimpleTask_category_feature", "_UI_SimpleTask_type"), + EmfTasksPackage.Literals.SIMPLE_TASK__CATEGORY, + true, + false, + true, + null, + null, + null)); + } + + /** + * This returns SimpleTask.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/SimpleTask")); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((SimpleTask)object).getSummary(); + return label == null || label.length() == 0 ? + getString("_UI_SimpleTask_type") : + getString("_UI_SimpleTask_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(SimpleTask.class)) { + case EmfTasksPackage.SIMPLE_TASK__ID: + case EmfTasksPackage.SIMPLE_TASK__SUMMARY: + case EmfTasksPackage.SIMPLE_TASK__DESCRIPTION: + case EmfTasksPackage.SIMPLE_TASK__STATUS: + case EmfTasksPackage.SIMPLE_TASK__PRIORITY: + case EmfTasksPackage.SIMPLE_TASK__DUE_DATE: + case EmfTasksPackage.SIMPLE_TASK__COMPLETION_DATE: + case EmfTasksPackage.SIMPLE_TASK__CREATION_DATE: + case EmfTasksPackage.SIMPLE_TASK__MODIFICATION_DATE: + case EmfTasksPackage.SIMPLE_TASK__COLLABORATORS: + case EmfTasksPackage.SIMPLE_TASK__RELATED_URL: + case EmfTasksPackage.SIMPLE_TASK__RANKING: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return EmfTasksEditPlugin.INSTANCE; + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/TaskCollectionItemProvider.java b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/TaskCollectionItemProvider.java new file mode 100644 index 00000000..678321da --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/src/org/eclipse/mylyn/reviews/example/emftasks/provider/TaskCollectionItemProvider.java @@ -0,0 +1,222 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksFactory; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.reviews.example.emftasks.TaskCollection; + +/** + * This is the item provider adapter for a {@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TaskCollectionItemProvider + extends ItemProviderAdapter + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TaskCollectionItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addLabelPropertyDescriptor(object); + addLastTaskIdPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Label feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addLabelPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_TaskCollection_label_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_TaskCollection_label_feature", "_UI_TaskCollection_type"), + EmfTasksPackage.Literals.TASK_COLLECTION__LABEL, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Last Task Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addLastTaskIdPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_TaskCollection_lastTaskId_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_TaskCollection_lastTaskId_feature", "_UI_TaskCollection_type"), + EmfTasksPackage.Literals.TASK_COLLECTION__LAST_TASK_ID, + true, + false, + false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, + null, + null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(EmfTasksPackage.Literals.TASK_COLLECTION__TASKS); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns TaskCollection.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/TaskCollection")); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((TaskCollection)object).getLabel(); + return label == null || label.length() == 0 ? + getString("_UI_TaskCollection_type") : + getString("_UI_TaskCollection_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(TaskCollection.class)) { + case EmfTasksPackage.TASK_COLLECTION__LABEL: + case EmfTasksPackage.TASK_COLLECTION__LAST_TASK_ID: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case EmfTasksPackage.TASK_COLLECTION__TASKS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add + (createChildParameter + (EmfTasksPackage.Literals.TASK_COLLECTION__TASKS, + EmfTasksFactory.eINSTANCE.createSimpleTask())); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return EmfTasksEditPlugin.INSTANCE; + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/.classpath b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/.classpath new file mode 100644 index 00000000..121e527a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/.project b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/.project new file mode 100644 index 00000000..6f4ec682 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.mylyn.reviews.example.emftasks.model.editor</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.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/META-INF/MANIFEST.MF new file mode 100644 index 00000000..02f33b93 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/META-INF/MANIFEST.MF @@ -0,0 +1,18 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Mylyn Emf Example Tasks Model Editor Support +Bundle-SymbolicName: org.eclipse.mylyn.reviews.example.emftasks.model.editor;singleton:=true +Bundle-Version: 0.13.0.qualifier +Bundle-ClassPath: . +Bundle-Activator: org.eclipse.mylyn.reviews.example.emftasks.presentation.EmfTasksEditorPlugin$Implementation +Bundle-Vendor: Eclipse Mylyn +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.mylyn.reviews.example.emftasks.presentation +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.core.resources;visibility:=reexport, + org.eclipse.mylyn.reviews.example.emftasks.model.edit;visibility:=reexport, + org.eclipse.emf.ecore.xmi;visibility:=reexport, + org.eclipse.emf.edit.ui;visibility:=reexport, + org.eclipse.ui.ide;visibility:=reexport +Bundle-ActivationPolicy: lazy diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/build.properties b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/build.properties new file mode 100644 index 00000000..5fb07711 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/build.properties @@ -0,0 +1,10 @@ +# + +bin.includes = .,\ + icons/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src/ +output.. = bin diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/icons/full/obj16/EmfTasksModelFile.gif b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/icons/full/obj16/EmfTasksModelFile.gif Binary files differnew file mode 100644 index 00000000..c4edfc0c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/icons/full/obj16/EmfTasksModelFile.gif diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/icons/full/wizban/NewEmfTasks.gif b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/icons/full/wizban/NewEmfTasks.gif Binary files differnew file mode 100644 index 00000000..0ed73ab4 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/icons/full/wizban/NewEmfTasks.gif diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/plugin.properties b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/plugin.properties new file mode 100644 index 00000000..96d2ba05 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/plugin.properties @@ -0,0 +1,53 @@ +# + +pluginName = Emftasks Editor +providerName = www.example.org + +_UI_EmfTasksEditor_menu = &EmfTasks Editor + +_UI_CreateChild_menu_item = &New Child +_UI_CreateSibling_menu_item = N&ew Sibling + +_UI_ShowPropertiesView_menu_item = Show &Properties View +_UI_RefreshViewer_menu_item = &Refresh + +_UI_SelectionPage_label = Selection +_UI_ParentPage_label = Parent +_UI_ListPage_label = List +_UI_TreePage_label = Tree +_UI_TablePage_label = Table +_UI_TreeWithColumnsPage_label = Tree with Columns +_UI_ObjectColumn_label = Object +_UI_SelfColumn_label = Self + +_UI_NoObjectSelected = Selected Nothing +_UI_SingleObjectSelected = Selected Object: {0} +_UI_MultiObjectSelected = Selected {0} Objects + +_UI_OpenEditorError_label = Open Editor + +_UI_Wizard_category = Example EMF Model Creation Wizards + +_UI_CreateModelError_message = Problems encountered in file "{0}" + +_UI_EmfTasksModelWizard_label = EmfTasks Model +_UI_EmfTasksModelWizard_description = Create a new EmfTasks model + +_UI_EmfTasksEditor_label = EmfTasks Model Editor + +_UI_EmfTasksEditorFilenameDefaultBase = My +_UI_EmfTasksEditorFilenameExtensions = emftasks + +_UI_Wizard_label = New + +_WARN_FilenameExtension = The file name must end in ''.{0}'' +_WARN_FilenameExtensions = The file name must have one of the following extensions: {0} + +_UI_ModelObject = &Model Object +_UI_XMLEncoding = &XML Encoding +_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1 +_UI_Wizard_initial_object_description = Select a model object to create + +_UI_FileConflict_label = File Conflict +_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes? + diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/plugin.xml b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/plugin.xml new file mode 100644 index 00000000..5fe117e6 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/plugin.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- +--> + +<plugin> + + <extension point="org.eclipse.ui.newWizards"> + <!-- @generated emftasks --> + <category + id="org.eclipse.emf.ecore.Wizard.category.ID" + name="%_UI_Wizard_category"/> + <wizard + id="org.eclipse.mylyn.reviews.example.emftasks.presentation.EmfTasksModelWizardID" + name="%_UI_EmfTasksModelWizard_label" + class="org.eclipse.mylyn.reviews.example.emftasks.presentation.EmfTasksModelWizard" + category="org.eclipse.emf.ecore.Wizard.category.ID" + icon="icons/full/obj16/EmfTasksModelFile.gif"> + <description>%_UI_EmfTasksModelWizard_description</description> + <selection class="org.eclipse.core.resources.IResource"/> + </wizard> + </extension> + + <extension point="org.eclipse.ui.editors"> + <!-- @generated emftasks --> + <editor + id="org.eclipse.mylyn.reviews.example.emftasks.presentation.EmfTasksEditorID" + name="%_UI_EmfTasksEditor_label" + icon="icons/full/obj16/EmfTasksModelFile.gif" + extensions="emftasks" + class="org.eclipse.mylyn.reviews.example.emftasks.presentation.EmfTasksEditor" + contributorClass="org.eclipse.mylyn.reviews.example.emftasks.presentation.EmfTasksActionBarContributor"> + </editor> + </extension> + +</plugin> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/pom.xml b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/pom.xml new file mode 100644 index 00000000..66aa7fb4 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/pom.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>org.eclipse.mylyn.reviews.r4e-parent</artifactId> + <groupId>org.eclipse.mylyn.reviews.r4e</groupId> + <version>0.13.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.mylyn.reviews.example.emftasks.model.editor</artifactId> + <version>0.13.0-SNAPSHOT</version> + <packaging>eclipse-plugin</packaging> + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-source-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksActionBarContributor.java b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksActionBarContributor.java new file mode 100644 index 00000000..bed29964 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksActionBarContributor.java @@ -0,0 +1,423 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.presentation; + +import java.util.ArrayList; +import java.util.Collection; + +import org.eclipse.emf.common.ui.viewer.IViewerProvider; + +import org.eclipse.emf.edit.domain.EditingDomain; +import org.eclipse.emf.edit.domain.IEditingDomainProvider; + +import org.eclipse.emf.edit.ui.action.ControlAction; +import org.eclipse.emf.edit.ui.action.CreateChildAction; +import org.eclipse.emf.edit.ui.action.CreateSiblingAction; +import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor; +import org.eclipse.emf.edit.ui.action.LoadResourceAction; +import org.eclipse.emf.edit.ui.action.ValidateAction; + +import org.eclipse.jface.action.Action; +import org.eclipse.jface.action.ActionContributionItem; +import org.eclipse.jface.action.IAction; +import org.eclipse.jface.action.IContributionItem; +import org.eclipse.jface.action.IContributionManager; +import org.eclipse.jface.action.IMenuListener; +import org.eclipse.jface.action.IMenuManager; +import org.eclipse.jface.action.IToolBarManager; +import org.eclipse.jface.action.MenuManager; +import org.eclipse.jface.action.Separator; +import org.eclipse.jface.action.SubContributionItem; + +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.jface.viewers.ISelectionChangedListener; +import org.eclipse.jface.viewers.ISelectionProvider; +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.jface.viewers.SelectionChangedEvent; +import org.eclipse.jface.viewers.Viewer; + +import org.eclipse.ui.IEditorPart; +import org.eclipse.ui.PartInitException; + +/** + * This is the action bar contributor for the EmfTasks model editor. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class EmfTasksActionBarContributor + extends EditingDomainActionBarContributor + implements ISelectionChangedListener { + /** + * This keeps track of the active editor. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IEditorPart activeEditorPart; + + /** + * This keeps track of the current selection provider. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ISelectionProvider selectionProvider; + + /** + * This action opens the Properties view. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IAction showPropertiesViewAction = + new Action(EmfTasksEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) { + @Override + public void run() { + try { + getPage().showView("org.eclipse.ui.views.PropertySheet"); + } + catch (PartInitException exception) { + EmfTasksEditorPlugin.INSTANCE.log(exception); + } + } + }; + + /** + * This action refreshes the viewer of the current editor if the editor + * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IAction refreshViewerAction = + new Action(EmfTasksEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) { + @Override + public boolean isEnabled() { + return activeEditorPart instanceof IViewerProvider; + } + + @Override + public void run() { + if (activeEditorPart instanceof IViewerProvider) { + Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer(); + if (viewer != null) { + viewer.refresh(); + } + } + } + }; + + /** + * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor + * generated for the current selection by the item provider. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<IAction> createChildActions; + + /** + * This is the menu manager into which menu contribution items should be added for CreateChild actions. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IMenuManager createChildMenuManager; + + /** + * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor + * generated for the current selection by the item provider. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<IAction> createSiblingActions; + + /** + * This is the menu manager into which menu contribution items should be added for CreateSibling actions. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IMenuManager createSiblingMenuManager; + + /** + * This creates an instance of the contributor. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksActionBarContributor() { + super(ADDITIONS_LAST_STYLE); + loadResourceAction = new LoadResourceAction(); + validateAction = new ValidateAction(); + controlAction = new ControlAction(); + } + + /** + * This adds Separators for editor additions to the tool bar. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void contributeToToolBar(IToolBarManager toolBarManager) { + toolBarManager.add(new Separator("emftasks-settings")); + toolBarManager.add(new Separator("emftasks-additions")); + } + + /** + * This adds to the menu bar a menu and some separators for editor additions, + * as well as the sub-menus for object creation items. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void contributeToMenu(IMenuManager menuManager) { + super.contributeToMenu(menuManager); + + IMenuManager submenuManager = new MenuManager(EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksEditor_menu"), "org.eclipse.mylyn.reviews.example.emftasksMenuID"); + menuManager.insertAfter("additions", submenuManager); + submenuManager.add(new Separator("settings")); + submenuManager.add(new Separator("actions")); + submenuManager.add(new Separator("additions")); + submenuManager.add(new Separator("additions-end")); + + // Prepare for CreateChild item addition or removal. + // + createChildMenuManager = new MenuManager(EmfTasksEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item")); + submenuManager.insertBefore("additions", createChildMenuManager); + + // Prepare for CreateSibling item addition or removal. + // + createSiblingMenuManager = new MenuManager(EmfTasksEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item")); + submenuManager.insertBefore("additions", createSiblingMenuManager); + + // Force an update because Eclipse hides empty menus now. + // + submenuManager.addMenuListener + (new IMenuListener() { + public void menuAboutToShow(IMenuManager menuManager) { + menuManager.updateAll(true); + } + }); + + addGlobalActions(submenuManager); + } + + /** + * When the active editor changes, this remembers the change and registers with it as a selection provider. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setActiveEditor(IEditorPart part) { + super.setActiveEditor(part); + activeEditorPart = part; + + // Switch to the new selection provider. + // + if (selectionProvider != null) { + selectionProvider.removeSelectionChangedListener(this); + } + if (part == null) { + selectionProvider = null; + } + else { + selectionProvider = part.getSite().getSelectionProvider(); + selectionProvider.addSelectionChangedListener(this); + + // Fake a selection changed event to update the menus. + // + if (selectionProvider.getSelection() != null) { + selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection())); + } + } + } + + /** + * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener}, + * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings + * that can be added to the selected object and updating the menus accordingly. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void selectionChanged(SelectionChangedEvent event) { + // Remove any menu items for old selection. + // + if (createChildMenuManager != null) { + depopulateManager(createChildMenuManager, createChildActions); + } + if (createSiblingMenuManager != null) { + depopulateManager(createSiblingMenuManager, createSiblingActions); + } + + // Query the new selection for appropriate new child/sibling descriptors + // + Collection<?> newChildDescriptors = null; + Collection<?> newSiblingDescriptors = null; + + ISelection selection = event.getSelection(); + if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) { + Object object = ((IStructuredSelection)selection).getFirstElement(); + + EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain(); + + newChildDescriptors = domain.getNewChildDescriptors(object, null); + newSiblingDescriptors = domain.getNewChildDescriptors(null, object); + } + + // Generate actions for selection; populate and redraw the menus. + // + createChildActions = generateCreateChildActions(newChildDescriptors, selection); + createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection); + + if (createChildMenuManager != null) { + populateManager(createChildMenuManager, createChildActions, null); + createChildMenuManager.update(true); + } + if (createSiblingMenuManager != null) { + populateManager(createSiblingMenuManager, createSiblingActions, null); + createSiblingMenuManager.update(true); + } + } + + /** + * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>, + * and returns the collection of these actions. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<IAction> generateCreateChildActions(Collection<?> descriptors, ISelection selection) { + Collection<IAction> actions = new ArrayList<IAction>(); + if (descriptors != null) { + for (Object descriptor : descriptors) { + actions.add(new CreateChildAction(activeEditorPart, selection, descriptor)); + } + } + return actions; + } + + /** + * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>, + * and returns the collection of these actions. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<IAction> generateCreateSiblingActions(Collection<?> descriptors, ISelection selection) { + Collection<IAction> actions = new ArrayList<IAction>(); + if (descriptors != null) { + for (Object descriptor : descriptors) { + actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor)); + } + } + return actions; + } + + /** + * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s + * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection, + * by inserting them before the specified contribution item <code>contributionID</code>. + * If <code>contributionID</code> is <code>null</code>, they are simply added. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void populateManager(IContributionManager manager, Collection<? extends IAction> actions, String contributionID) { + if (actions != null) { + for (IAction action : actions) { + if (contributionID != null) { + manager.insertBefore(contributionID, action); + } + else { + manager.add(action); + } + } + } + } + + /** + * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s + * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void depopulateManager(IContributionManager manager, Collection<? extends IAction> actions) { + if (actions != null) { + IContributionItem[] items = manager.getItems(); + for (int i = 0; i < items.length; i++) { + // Look into SubContributionItems + // + IContributionItem contributionItem = items[i]; + while (contributionItem instanceof SubContributionItem) { + contributionItem = ((SubContributionItem)contributionItem).getInnerItem(); + } + + // Delete the ActionContributionItems with matching action. + // + if (contributionItem instanceof ActionContributionItem) { + IAction action = ((ActionContributionItem)contributionItem).getAction(); + if (actions.contains(action)) { + manager.remove(contributionItem); + } + } + } + } + } + + /** + * This populates the pop-up menu before it appears. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void menuAboutToShow(IMenuManager menuManager) { + super.menuAboutToShow(menuManager); + MenuManager submenuManager = null; + + submenuManager = new MenuManager(EmfTasksEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item")); + populateManager(submenuManager, createChildActions, null); + menuManager.insertBefore("edit", submenuManager); + + submenuManager = new MenuManager(EmfTasksEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item")); + populateManager(submenuManager, createSiblingActions, null); + menuManager.insertBefore("edit", submenuManager); + } + + /** + * This inserts global actions before the "additions-end" separator. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void addGlobalActions(IMenuManager menuManager) { + menuManager.insertAfter("additions-end", new Separator("ui-actions")); + menuManager.insertAfter("ui-actions", showPropertiesViewAction); + + refreshViewerAction.setEnabled(refreshViewerAction.isEnabled()); + menuManager.insertAfter("ui-actions", refreshViewerAction); + + super.addGlobalActions(menuManager); + } + + /** + * This ensures that a delete action will clean up all references to deleted objects. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean removeAllReferencesOnDelete() { + return true; + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksEditor.java b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksEditor.java new file mode 100644 index 00000000..f74b6e0b --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksEditor.java @@ -0,0 +1,1812 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.presentation; + + +import java.io.IOException; +import java.io.InputStream; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.EventObject; +import java.util.HashMap; +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IMarker; +import org.eclipse.core.resources.IResource; +import org.eclipse.core.resources.IResourceChangeEvent; +import org.eclipse.core.resources.IResourceChangeListener; +import org.eclipse.core.resources.IResourceDelta; +import org.eclipse.core.resources.IResourceDeltaVisitor; +import org.eclipse.core.resources.ResourcesPlugin; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IPath; +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.NullProgressMonitor; + +import org.eclipse.jface.action.IMenuListener; +import org.eclipse.jface.action.IMenuManager; +import org.eclipse.jface.action.IStatusLineManager; +import org.eclipse.jface.action.IToolBarManager; +import org.eclipse.jface.action.MenuManager; +import org.eclipse.jface.action.Separator; + +import org.eclipse.jface.dialogs.MessageDialog; +import org.eclipse.jface.dialogs.ProgressMonitorDialog; + +import org.eclipse.jface.viewers.ColumnWeightData; +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.jface.viewers.ISelectionChangedListener; +import org.eclipse.jface.viewers.ISelectionProvider; +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.jface.viewers.ListViewer; +import org.eclipse.jface.viewers.SelectionChangedEvent; +import org.eclipse.jface.viewers.StructuredSelection; +import org.eclipse.jface.viewers.StructuredViewer; +import org.eclipse.jface.viewers.TableLayout; +import org.eclipse.jface.viewers.TableViewer; +import org.eclipse.jface.viewers.TreeViewer; +import org.eclipse.jface.viewers.Viewer; + +import org.eclipse.swt.SWT; + +import org.eclipse.swt.custom.CTabFolder; + +import org.eclipse.swt.dnd.DND; +import org.eclipse.swt.dnd.Transfer; + +import org.eclipse.swt.events.ControlAdapter; +import org.eclipse.swt.events.ControlEvent; + +import org.eclipse.swt.graphics.Point; + +import org.eclipse.swt.layout.FillLayout; + +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Menu; +import org.eclipse.swt.widgets.Table; +import org.eclipse.swt.widgets.TableColumn; +import org.eclipse.swt.widgets.Tree; +import org.eclipse.swt.widgets.TreeColumn; + +import org.eclipse.ui.IActionBars; +import org.eclipse.ui.IEditorInput; +import org.eclipse.ui.IEditorPart; +import org.eclipse.ui.IEditorSite; +import org.eclipse.ui.IPartListener; +import org.eclipse.ui.IWorkbenchPart; +import org.eclipse.ui.PartInitException; + +import org.eclipse.ui.dialogs.SaveAsDialog; + +import org.eclipse.ui.ide.IGotoMarker; + +import org.eclipse.ui.part.FileEditorInput; +import org.eclipse.ui.part.MultiPageEditorPart; + +import org.eclipse.ui.views.contentoutline.ContentOutline; +import org.eclipse.ui.views.contentoutline.ContentOutlinePage; +import org.eclipse.ui.views.contentoutline.IContentOutlinePage; + +import org.eclipse.ui.views.properties.IPropertySheetPage; +import org.eclipse.ui.views.properties.PropertySheet; +import org.eclipse.ui.views.properties.PropertySheetPage; + +import org.eclipse.emf.common.command.BasicCommandStack; +import org.eclipse.emf.common.command.Command; +import org.eclipse.emf.common.command.CommandStack; +import org.eclipse.emf.common.command.CommandStackListener; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.ui.MarkerHelper; +import org.eclipse.emf.common.ui.ViewerPane; + +import org.eclipse.emf.common.ui.editor.ProblemEditorPart; + +import org.eclipse.emf.common.ui.viewer.IViewerProvider; + +import org.eclipse.emf.common.util.BasicDiagnostic; +import org.eclipse.emf.common.util.Diagnostic; +import org.eclipse.emf.common.util.URI; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EValidator; + +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.emf.ecore.resource.ResourceSet; + +import org.eclipse.emf.ecore.util.EContentAdapter; +import org.eclipse.emf.ecore.util.EcoreUtil; + +import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain; +import org.eclipse.emf.edit.domain.EditingDomain; +import org.eclipse.emf.edit.domain.IEditingDomainProvider; + +import org.eclipse.emf.edit.provider.AdapterFactoryItemDelegator; +import org.eclipse.emf.edit.provider.ComposedAdapterFactory; +import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory; + +import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory; + +import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor; + +import org.eclipse.emf.edit.ui.celleditor.AdapterFactoryTreeEditor; + +import org.eclipse.emf.edit.ui.dnd.EditingDomainViewerDropAdapter; +import org.eclipse.emf.edit.ui.dnd.LocalTransfer; +import org.eclipse.emf.edit.ui.dnd.ViewerDragAdapter; + +import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider; +import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider; +import org.eclipse.emf.edit.ui.provider.UnwrappingSelectionProvider; + +import org.eclipse.emf.edit.ui.util.EditUIMarkerHelper; +import org.eclipse.emf.edit.ui.util.EditUIUtil; + +import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage; + +import org.eclipse.mylyn.reviews.example.emftasks.provider.EmfTasksItemProviderAdapterFactory; + +import org.eclipse.ui.actions.WorkspaceModifyOperation; + + +/** + * This is an example of a EmfTasks model editor. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class EmfTasksEditor + extends MultiPageEditorPart + implements IEditingDomainProvider, ISelectionProvider, IMenuListener, IViewerProvider, IGotoMarker { + /** + * This keeps track of the editing domain that is used to track all changes to the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AdapterFactoryEditingDomain editingDomain; + + /** + * This is the one adapter factory used for providing views of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ComposedAdapterFactory adapterFactory; + + /** + * This is the content outline page. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IContentOutlinePage contentOutlinePage; + + /** + * This is a kludge... + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IStatusLineManager contentOutlineStatusLineManager; + + /** + * This is the content outline page's viewer. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TreeViewer contentOutlineViewer; + + /** + * This is the property sheet page. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PropertySheetPage propertySheetPage; + + /** + * This is the viewer that shadows the selection in the content outline. + * The parent relation must be correctly defined for this to work. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TreeViewer selectionViewer; + + /** + * This inverts the roll of parent and child in the content provider and show parents as a tree. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TreeViewer parentViewer; + + /** + * This shows how a tree view works. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TreeViewer treeViewer; + + /** + * This shows how a list view works. + * A list viewer doesn't support icons. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ListViewer listViewer; + + /** + * This shows how a table view works. + * A table can be used as a list with icons. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TableViewer tableViewer; + + /** + * This shows how a tree view with columns works. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TreeViewer treeViewerWithColumns; + + /** + * This keeps track of the active viewer pane, in the book. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ViewerPane currentViewerPane; + + /** + * This keeps track of the active content viewer, which may be either one of the viewers in the pages or the content outline viewer. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Viewer currentViewer; + + /** + * This listens to which ever viewer is active. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ISelectionChangedListener selectionChangedListener; + + /** + * This keeps track of all the {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are listening to this editor. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>(); + + /** + * This keeps track of the selection of the editor as a whole. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ISelection editorSelection = StructuredSelection.EMPTY; + + /** + * The MarkerHelper is responsible for creating workspace resource markers presented + * in Eclipse's Problems View. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected MarkerHelper markerHelper = new EditUIMarkerHelper(); + + /** + * This listens for when the outline becomes active + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPartListener partListener = + new IPartListener() { + public void partActivated(IWorkbenchPart p) { + if (p instanceof ContentOutline) { + if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) { + getActionBarContributor().setActiveEditor(EmfTasksEditor.this); + + setCurrentViewer(contentOutlineViewer); + } + } + else if (p instanceof PropertySheet) { + if (((PropertySheet)p).getCurrentPage() == propertySheetPage) { + getActionBarContributor().setActiveEditor(EmfTasksEditor.this); + handleActivate(); + } + } + else if (p == EmfTasksEditor.this) { + handleActivate(); + } + } + public void partBroughtToTop(IWorkbenchPart p) { + // Ignore. + } + public void partClosed(IWorkbenchPart p) { + // Ignore. + } + public void partDeactivated(IWorkbenchPart p) { + // Ignore. + } + public void partOpened(IWorkbenchPart p) { + // Ignore. + } + }; + + /** + * Resources that have been removed since last activation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<Resource> removedResources = new ArrayList<Resource>(); + + /** + * Resources that have been changed since last activation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<Resource> changedResources = new ArrayList<Resource>(); + + /** + * Resources that have been saved. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<Resource> savedResources = new ArrayList<Resource>(); + + /** + * Map to store the diagnostic associated with a resource. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>(); + + /** + * Controls whether the problem indication should be updated. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected boolean updateProblemIndication = true; + + /** + * Adapter used to update the problem indication when resources are demanded loaded. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EContentAdapter problemIndicationAdapter = + new EContentAdapter() { + @Override + public void notifyChanged(Notification notification) { + if (notification.getNotifier() instanceof Resource) { + switch (notification.getFeatureID(Resource.class)) { + case Resource.RESOURCE__IS_LOADED: + case Resource.RESOURCE__ERRORS: + case Resource.RESOURCE__WARNINGS: { + Resource resource = (Resource)notification.getNotifier(); + Diagnostic diagnostic = analyzeResourceProblems(resource, null); + if (diagnostic.getSeverity() != Diagnostic.OK) { + resourceToDiagnosticMap.put(resource, diagnostic); + } + else { + resourceToDiagnosticMap.remove(resource); + } + + if (updateProblemIndication) { + getSite().getShell().getDisplay().asyncExec + (new Runnable() { + public void run() { + updateProblemIndication(); + } + }); + } + break; + } + } + } + else { + super.notifyChanged(notification); + } + } + + @Override + protected void setTarget(Resource target) { + basicSetTarget(target); + } + + @Override + protected void unsetTarget(Resource target) { + basicUnsetTarget(target); + } + }; + + /** + * This listens for workspace changes. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IResourceChangeListener resourceChangeListener = + new IResourceChangeListener() { + public void resourceChanged(IResourceChangeEvent event) { + IResourceDelta delta = event.getDelta(); + try { + class ResourceDeltaVisitor implements IResourceDeltaVisitor { + protected ResourceSet resourceSet = editingDomain.getResourceSet(); + protected Collection<Resource> changedResources = new ArrayList<Resource>(); + protected Collection<Resource> removedResources = new ArrayList<Resource>(); + + public boolean visit(IResourceDelta delta) { + if (delta.getResource().getType() == IResource.FILE) { + if (delta.getKind() == IResourceDelta.REMOVED || + delta.getKind() == IResourceDelta.CHANGED && delta.getFlags() != IResourceDelta.MARKERS) { + Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(delta.getFullPath().toString(), true), false); + if (resource != null) { + if (delta.getKind() == IResourceDelta.REMOVED) { + removedResources.add(resource); + } + else if (!savedResources.remove(resource)) { + changedResources.add(resource); + } + } + } + } + + return true; + } + + public Collection<Resource> getChangedResources() { + return changedResources; + } + + public Collection<Resource> getRemovedResources() { + return removedResources; + } + } + + final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor(); + delta.accept(visitor); + + if (!visitor.getRemovedResources().isEmpty()) { + getSite().getShell().getDisplay().asyncExec + (new Runnable() { + public void run() { + removedResources.addAll(visitor.getRemovedResources()); + if (!isDirty()) { + getSite().getPage().closeEditor(EmfTasksEditor.this, false); + } + } + }); + } + + if (!visitor.getChangedResources().isEmpty()) { + getSite().getShell().getDisplay().asyncExec + (new Runnable() { + public void run() { + changedResources.addAll(visitor.getChangedResources()); + if (getSite().getPage().getActiveEditor() == EmfTasksEditor.this) { + handleActivate(); + } + } + }); + } + } + catch (CoreException exception) { + EmfTasksEditorPlugin.INSTANCE.log(exception); + } + } + }; + + /** + * Handles activation of the editor or it's associated views. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void handleActivate() { + // Recompute the read only state. + // + if (editingDomain.getResourceToReadOnlyMap() != null) { + editingDomain.getResourceToReadOnlyMap().clear(); + + // Refresh any actions that may become enabled or disabled. + // + setSelection(getSelection()); + } + + if (!removedResources.isEmpty()) { + if (handleDirtyConflict()) { + getSite().getPage().closeEditor(EmfTasksEditor.this, false); + } + else { + removedResources.clear(); + changedResources.clear(); + savedResources.clear(); + } + } + else if (!changedResources.isEmpty()) { + changedResources.removeAll(savedResources); + handleChangedResources(); + changedResources.clear(); + savedResources.clear(); + } + } + + /** + * Handles what to do with changed resources on activation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void handleChangedResources() { + if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) { + if (isDirty()) { + changedResources.addAll(editingDomain.getResourceSet().getResources()); + } + editingDomain.getCommandStack().flush(); + + updateProblemIndication = false; + for (Resource resource : changedResources) { + if (resource.isLoaded()) { + resource.unload(); + try { + resource.load(Collections.EMPTY_MAP); + } + catch (IOException exception) { + if (!resourceToDiagnosticMap.containsKey(resource)) { + resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception)); + } + } + } + } + + if (AdapterFactoryEditingDomain.isStale(editorSelection)) { + setSelection(StructuredSelection.EMPTY); + } + + updateProblemIndication = true; + updateProblemIndication(); + } + } + + /** + * Updates the problems indication with the information described in the specified diagnostic. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void updateProblemIndication() { + if (updateProblemIndication) { + BasicDiagnostic diagnostic = + new BasicDiagnostic + (Diagnostic.OK, + "org.eclipse.mylyn.reviews.example.emftasks.model.editor", + 0, + null, + new Object [] { editingDomain.getResourceSet() }); + for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) { + if (childDiagnostic.getSeverity() != Diagnostic.OK) { + diagnostic.add(childDiagnostic); + } + } + + int lastEditorPage = getPageCount() - 1; + if (lastEditorPage >= 0 && getEditor(lastEditorPage) instanceof ProblemEditorPart) { + ((ProblemEditorPart)getEditor(lastEditorPage)).setDiagnostic(diagnostic); + if (diagnostic.getSeverity() != Diagnostic.OK) { + setActivePage(lastEditorPage); + } + } + else if (diagnostic.getSeverity() != Diagnostic.OK) { + ProblemEditorPart problemEditorPart = new ProblemEditorPart(); + problemEditorPart.setDiagnostic(diagnostic); + problemEditorPart.setMarkerHelper(markerHelper); + try { + addPage(++lastEditorPage, problemEditorPart, getEditorInput()); + setPageText(lastEditorPage, problemEditorPart.getPartName()); + setActivePage(lastEditorPage); + showTabs(); + } + catch (PartInitException exception) { + EmfTasksEditorPlugin.INSTANCE.log(exception); + } + } + + if (markerHelper.hasMarkers(editingDomain.getResourceSet())) { + markerHelper.deleteMarkers(editingDomain.getResourceSet()); + if (diagnostic.getSeverity() != Diagnostic.OK) { + try { + markerHelper.createMarkers(diagnostic); + } + catch (CoreException exception) { + EmfTasksEditorPlugin.INSTANCE.log(exception); + } + } + } + } + } + + /** + * Shows a dialog that asks if conflicting changes should be discarded. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected boolean handleDirtyConflict() { + return + MessageDialog.openQuestion + (getSite().getShell(), + getString("_UI_FileConflict_label"), + getString("_WARN_FileConflict")); + } + + /** + * This creates a model editor. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksEditor() { + super(); + initializeEditingDomain(); + } + + /** + * This sets up the editing domain for the model editor. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void initializeEditingDomain() { + // Create an adapter factory that yields item providers. + // + adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE); + + adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory()); + adapterFactory.addAdapterFactory(new EmfTasksItemProviderAdapterFactory()); + adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory()); + + // Create the command stack that will notify this editor as commands are executed. + // + BasicCommandStack commandStack = new BasicCommandStack(); + + // Add a listener to set the most recent command's affected objects to be the selection of the viewer with focus. + // + commandStack.addCommandStackListener + (new CommandStackListener() { + public void commandStackChanged(final EventObject event) { + getContainer().getDisplay().asyncExec + (new Runnable() { + public void run() { + firePropertyChange(IEditorPart.PROP_DIRTY); + + // Try to select the affected objects. + // + Command mostRecentCommand = ((CommandStack)event.getSource()).getMostRecentCommand(); + if (mostRecentCommand != null) { + setSelectionToViewer(mostRecentCommand.getAffectedObjects()); + } + if (propertySheetPage != null && !propertySheetPage.getControl().isDisposed()) { + propertySheetPage.refresh(); + } + } + }); + } + }); + + // Create the editing domain with a special command stack. + // + editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>()); + } + + /** + * This is here for the listener to be able to call it. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void firePropertyChange(int action) { + super.firePropertyChange(action); + } + + /** + * This sets the selection into whichever viewer is active. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSelectionToViewer(Collection<?> collection) { + final Collection<?> theSelection = collection; + // Make sure it's okay. + // + if (theSelection != null && !theSelection.isEmpty()) { + Runnable runnable = + new Runnable() { + public void run() { + // Try to select the items in the current content viewer of the editor. + // + if (currentViewer != null) { + currentViewer.setSelection(new StructuredSelection(theSelection.toArray()), true); + } + } + }; + getSite().getShell().getDisplay().asyncExec(runnable); + } + } + + /** + * This returns the editing domain as required by the {@link IEditingDomainProvider} interface. + * This is important for implementing the static methods of {@link AdapterFactoryEditingDomain} + * and for supporting {@link org.eclipse.emf.edit.ui.action.CommandAction}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EditingDomain getEditingDomain() { + return editingDomain; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public class ReverseAdapterFactoryContentProvider extends AdapterFactoryContentProvider { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ReverseAdapterFactoryContentProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object [] getElements(Object object) { + Object parent = super.getParent(object); + return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object [] getChildren(Object object) { + Object parent = super.getParent(object); + return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean hasChildren(Object object) { + Object parent = super.getParent(object); + return parent != null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getParent(Object object) { + return null; + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCurrentViewerPane(ViewerPane viewerPane) { + if (currentViewerPane != viewerPane) { + if (currentViewerPane != null) { + currentViewerPane.showFocus(false); + } + currentViewerPane = viewerPane; + } + setCurrentViewer(currentViewerPane.getViewer()); + } + + /** + * This makes sure that one content viewer, either for the current page or the outline view, if it has focus, + * is the current one. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCurrentViewer(Viewer viewer) { + // If it is changing... + // + if (currentViewer != viewer) { + if (selectionChangedListener == null) { + // Create the listener on demand. + // + selectionChangedListener = + new ISelectionChangedListener() { + // This just notifies those things that are affected by the section. + // + public void selectionChanged(SelectionChangedEvent selectionChangedEvent) { + setSelection(selectionChangedEvent.getSelection()); + } + }; + } + + // Stop listening to the old one. + // + if (currentViewer != null) { + currentViewer.removeSelectionChangedListener(selectionChangedListener); + } + + // Start listening to the new one. + // + if (viewer != null) { + viewer.addSelectionChangedListener(selectionChangedListener); + } + + // Remember it. + // + currentViewer = viewer; + + // Set the editors selection based on the current viewer's selection. + // + setSelection(currentViewer == null ? StructuredSelection.EMPTY : currentViewer.getSelection()); + } + } + + /** + * This returns the viewer as required by the {@link IViewerProvider} interface. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Viewer getViewer() { + return currentViewer; + } + + /** + * This creates a context menu for the viewer and adds a listener as well registering the menu for extension. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void createContextMenuFor(StructuredViewer viewer) { + MenuManager contextMenu = new MenuManager("#PopUp"); + contextMenu.add(new Separator("additions")); + contextMenu.setRemoveAllWhenShown(true); + contextMenu.addMenuListener(this); + Menu menu= contextMenu.createContextMenu(viewer.getControl()); + viewer.getControl().setMenu(menu); + getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer)); + + int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK; + Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance() }; + viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer)); + viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer)); + } + + /** + * This is the method called to load a resource into the editing domain's resource set based on the editor's input. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void createModel() { + URI resourceURI = EditUIUtil.getURI(getEditorInput()); + Exception exception = null; + Resource resource = null; + try { + // Load the resource through the editing domain. + // + resource = editingDomain.getResourceSet().getResource(resourceURI, true); + } + catch (Exception e) { + exception = e; + resource = editingDomain.getResourceSet().getResource(resourceURI, false); + } + + Diagnostic diagnostic = analyzeResourceProblems(resource, exception); + if (diagnostic.getSeverity() != Diagnostic.OK) { + resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception)); + } + editingDomain.getResourceSet().eAdapters().add(problemIndicationAdapter); + } + + /** + * Returns a diagnostic describing the errors and warnings listed in the resource + * and the specified exception (if any). + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Diagnostic analyzeResourceProblems(Resource resource, Exception exception) { + if (!resource.getErrors().isEmpty() || !resource.getWarnings().isEmpty()) { + BasicDiagnostic basicDiagnostic = + new BasicDiagnostic + (Diagnostic.ERROR, + "org.eclipse.mylyn.reviews.example.emftasks.model.editor", + 0, + getString("_UI_CreateModelError_message", resource.getURI()), + new Object [] { exception == null ? (Object)resource : exception }); + basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true)); + return basicDiagnostic; + } + else if (exception != null) { + return + new BasicDiagnostic + (Diagnostic.ERROR, + "org.eclipse.mylyn.reviews.example.emftasks.model.editor", + 0, + getString("_UI_CreateModelError_message", resource.getURI()), + new Object[] { exception }); + } + else { + return Diagnostic.OK_INSTANCE; + } + } + + /** + * This is the method used by the framework to install your own controls. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void createPages() { + // Creates the model from the editor input + // + createModel(); + + // Only creates the other pages if there is something that can be edited + // + if (!getEditingDomain().getResourceSet().getResources().isEmpty()) { + // Create a page for the selection tree view. + // + { + ViewerPane viewerPane = + new ViewerPane(getSite().getPage(), EmfTasksEditor.this) { + @Override + public Viewer createViewer(Composite composite) { + Tree tree = new Tree(composite, SWT.MULTI); + TreeViewer newTreeViewer = new TreeViewer(tree); + return newTreeViewer; + } + @Override + public void requestActivation() { + super.requestActivation(); + setCurrentViewerPane(this); + } + }; + viewerPane.createControl(getContainer()); + + selectionViewer = (TreeViewer)viewerPane.getViewer(); + selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); + + selectionViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); + selectionViewer.setInput(editingDomain.getResourceSet()); + selectionViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true); + viewerPane.setTitle(editingDomain.getResourceSet()); + + new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory); + + createContextMenuFor(selectionViewer); + int pageIndex = addPage(viewerPane.getControl()); + setPageText(pageIndex, getString("_UI_SelectionPage_label")); + } + + // Create a page for the parent tree view. + // + { + ViewerPane viewerPane = + new ViewerPane(getSite().getPage(), EmfTasksEditor.this) { + @Override + public Viewer createViewer(Composite composite) { + Tree tree = new Tree(composite, SWT.MULTI); + TreeViewer newTreeViewer = new TreeViewer(tree); + return newTreeViewer; + } + @Override + public void requestActivation() { + super.requestActivation(); + setCurrentViewerPane(this); + } + }; + viewerPane.createControl(getContainer()); + + parentViewer = (TreeViewer)viewerPane.getViewer(); + parentViewer.setAutoExpandLevel(30); + parentViewer.setContentProvider(new ReverseAdapterFactoryContentProvider(adapterFactory)); + parentViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); + + createContextMenuFor(parentViewer); + int pageIndex = addPage(viewerPane.getControl()); + setPageText(pageIndex, getString("_UI_ParentPage_label")); + } + + // This is the page for the list viewer + // + { + ViewerPane viewerPane = + new ViewerPane(getSite().getPage(), EmfTasksEditor.this) { + @Override + public Viewer createViewer(Composite composite) { + return new ListViewer(composite); + } + @Override + public void requestActivation() { + super.requestActivation(); + setCurrentViewerPane(this); + } + }; + viewerPane.createControl(getContainer()); + listViewer = (ListViewer)viewerPane.getViewer(); + listViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); + listViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); + + createContextMenuFor(listViewer); + int pageIndex = addPage(viewerPane.getControl()); + setPageText(pageIndex, getString("_UI_ListPage_label")); + } + + // This is the page for the tree viewer + // + { + ViewerPane viewerPane = + new ViewerPane(getSite().getPage(), EmfTasksEditor.this) { + @Override + public Viewer createViewer(Composite composite) { + return new TreeViewer(composite); + } + @Override + public void requestActivation() { + super.requestActivation(); + setCurrentViewerPane(this); + } + }; + viewerPane.createControl(getContainer()); + treeViewer = (TreeViewer)viewerPane.getViewer(); + treeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); + treeViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); + + new AdapterFactoryTreeEditor(treeViewer.getTree(), adapterFactory); + + createContextMenuFor(treeViewer); + int pageIndex = addPage(viewerPane.getControl()); + setPageText(pageIndex, getString("_UI_TreePage_label")); + } + + // This is the page for the table viewer. + // + { + ViewerPane viewerPane = + new ViewerPane(getSite().getPage(), EmfTasksEditor.this) { + @Override + public Viewer createViewer(Composite composite) { + return new TableViewer(composite); + } + @Override + public void requestActivation() { + super.requestActivation(); + setCurrentViewerPane(this); + } + }; + viewerPane.createControl(getContainer()); + tableViewer = (TableViewer)viewerPane.getViewer(); + + Table table = tableViewer.getTable(); + TableLayout layout = new TableLayout(); + table.setLayout(layout); + table.setHeaderVisible(true); + table.setLinesVisible(true); + + TableColumn objectColumn = new TableColumn(table, SWT.NONE); + layout.addColumnData(new ColumnWeightData(3, 100, true)); + objectColumn.setText(getString("_UI_ObjectColumn_label")); + objectColumn.setResizable(true); + + TableColumn selfColumn = new TableColumn(table, SWT.NONE); + layout.addColumnData(new ColumnWeightData(2, 100, true)); + selfColumn.setText(getString("_UI_SelfColumn_label")); + selfColumn.setResizable(true); + + tableViewer.setColumnProperties(new String [] {"a", "b"}); + tableViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); + tableViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); + + createContextMenuFor(tableViewer); + int pageIndex = addPage(viewerPane.getControl()); + setPageText(pageIndex, getString("_UI_TablePage_label")); + } + + // This is the page for the table tree viewer. + // + { + ViewerPane viewerPane = + new ViewerPane(getSite().getPage(), EmfTasksEditor.this) { + @Override + public Viewer createViewer(Composite composite) { + return new TreeViewer(composite); + } + @Override + public void requestActivation() { + super.requestActivation(); + setCurrentViewerPane(this); + } + }; + viewerPane.createControl(getContainer()); + + treeViewerWithColumns = (TreeViewer)viewerPane.getViewer(); + + Tree tree = treeViewerWithColumns.getTree(); + tree.setLayoutData(new FillLayout()); + tree.setHeaderVisible(true); + tree.setLinesVisible(true); + + TreeColumn objectColumn = new TreeColumn(tree, SWT.NONE); + objectColumn.setText(getString("_UI_ObjectColumn_label")); + objectColumn.setResizable(true); + objectColumn.setWidth(250); + + TreeColumn selfColumn = new TreeColumn(tree, SWT.NONE); + selfColumn.setText(getString("_UI_SelfColumn_label")); + selfColumn.setResizable(true); + selfColumn.setWidth(200); + + treeViewerWithColumns.setColumnProperties(new String [] {"a", "b"}); + treeViewerWithColumns.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); + treeViewerWithColumns.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); + + createContextMenuFor(treeViewerWithColumns); + int pageIndex = addPage(viewerPane.getControl()); + setPageText(pageIndex, getString("_UI_TreeWithColumnsPage_label")); + } + + getSite().getShell().getDisplay().asyncExec + (new Runnable() { + public void run() { + setActivePage(0); + } + }); + } + + // Ensures that this editor will only display the page's tab + // area if there are more than one page + // + getContainer().addControlListener + (new ControlAdapter() { + boolean guard = false; + @Override + public void controlResized(ControlEvent event) { + if (!guard) { + guard = true; + hideTabs(); + guard = false; + } + } + }); + + getSite().getShell().getDisplay().asyncExec + (new Runnable() { + public void run() { + updateProblemIndication(); + } + }); + } + + /** + * If there is just one page in the multi-page editor part, + * this hides the single tab at the bottom. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void hideTabs() { + if (getPageCount() <= 1) { + setPageText(0, ""); + if (getContainer() instanceof CTabFolder) { + ((CTabFolder)getContainer()).setTabHeight(1); + Point point = getContainer().getSize(); + getContainer().setSize(point.x, point.y + 6); + } + } + } + + /** + * If there is more than one page in the multi-page editor part, + * this shows the tabs at the bottom. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void showTabs() { + if (getPageCount() > 1) { + setPageText(0, getString("_UI_SelectionPage_label")); + if (getContainer() instanceof CTabFolder) { + ((CTabFolder)getContainer()).setTabHeight(SWT.DEFAULT); + Point point = getContainer().getSize(); + getContainer().setSize(point.x, point.y - 6); + } + } + } + + /** + * This is used to track the active viewer. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void pageChange(int pageIndex) { + super.pageChange(pageIndex); + + if (contentOutlinePage != null) { + handleContentOutlineSelection(contentOutlinePage.getSelection()); + } + } + + /** + * This is how the framework determines which interfaces we implement. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("rawtypes") + @Override + public Object getAdapter(Class key) { + if (key.equals(IContentOutlinePage.class)) { + return showOutlineView() ? getContentOutlinePage() : null; + } + else if (key.equals(IPropertySheetPage.class)) { + return getPropertySheetPage(); + } + else if (key.equals(IGotoMarker.class)) { + return this; + } + else { + return super.getAdapter(key); + } + } + + /** + * This accesses a cached version of the content outliner. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IContentOutlinePage getContentOutlinePage() { + if (contentOutlinePage == null) { + // The content outline is just a tree. + // + class MyContentOutlinePage extends ContentOutlinePage { + @Override + public void createControl(Composite parent) { + super.createControl(parent); + contentOutlineViewer = getTreeViewer(); + contentOutlineViewer.addSelectionChangedListener(this); + + // Set up the tree viewer. + // + contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); + contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); + contentOutlineViewer.setInput(editingDomain.getResourceSet()); + + // Make sure our popups work. + // + createContextMenuFor(contentOutlineViewer); + + if (!editingDomain.getResourceSet().getResources().isEmpty()) { + // Select the root object in the view. + // + contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true); + } + } + + @Override + public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) { + super.makeContributions(menuManager, toolBarManager, statusLineManager); + contentOutlineStatusLineManager = statusLineManager; + } + + @Override + public void setActionBars(IActionBars actionBars) { + super.setActionBars(actionBars); + getActionBarContributor().shareGlobalActions(this, actionBars); + } + } + + contentOutlinePage = new MyContentOutlinePage(); + + // Listen to selection so that we can handle it is a special way. + // + contentOutlinePage.addSelectionChangedListener + (new ISelectionChangedListener() { + // This ensures that we handle selections correctly. + // + public void selectionChanged(SelectionChangedEvent event) { + handleContentOutlineSelection(event.getSelection()); + } + }); + } + + return contentOutlinePage; + } + + /** + * This accesses a cached version of the property sheet. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPropertySheetPage getPropertySheetPage() { + if (propertySheetPage == null) { + propertySheetPage = + new ExtendedPropertySheetPage(editingDomain) { + @Override + public void setSelectionToViewer(List<?> selection) { + EmfTasksEditor.this.setSelectionToViewer(selection); + EmfTasksEditor.this.setFocus(); + } + + @Override + public void setActionBars(IActionBars actionBars) { + super.setActionBars(actionBars); + getActionBarContributor().shareGlobalActions(this, actionBars); + } + }; + propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory)); + } + + return propertySheetPage; + } + + /** + * This deals with how we want selection in the outliner to affect the other views. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void handleContentOutlineSelection(ISelection selection) { + if (currentViewerPane != null && !selection.isEmpty() && selection instanceof IStructuredSelection) { + Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator(); + if (selectedElements.hasNext()) { + // Get the first selected element. + // + Object selectedElement = selectedElements.next(); + + // If it's the selection viewer, then we want it to select the same selection as this selection. + // + if (currentViewerPane.getViewer() == selectionViewer) { + ArrayList<Object> selectionList = new ArrayList<Object>(); + selectionList.add(selectedElement); + while (selectedElements.hasNext()) { + selectionList.add(selectedElements.next()); + } + + // Set the selection to the widget. + // + selectionViewer.setSelection(new StructuredSelection(selectionList)); + } + else { + // Set the input to the widget. + // + if (currentViewerPane.getViewer().getInput() != selectedElement) { + currentViewerPane.getViewer().setInput(selectedElement); + currentViewerPane.setTitle(selectedElement); + } + } + } + } + } + + /** + * This is for implementing {@link IEditorPart} and simply tests the command stack. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isDirty() { + return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded(); + } + + /** + * This is for implementing {@link IEditorPart} and simply saves the model file. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void doSave(IProgressMonitor progressMonitor) { + // Save only resources that have actually changed. + // + final Map<Object, Object> saveOptions = new HashMap<Object, Object>(); + saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED, Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER); + + // Do the work within an operation because this is a long running activity that modifies the workbench. + // + WorkspaceModifyOperation operation = + new WorkspaceModifyOperation() { + // This is the method that gets invoked when the operation runs. + // + @Override + public void execute(IProgressMonitor monitor) { + // Save the resources to the file system. + // + boolean first = true; + for (Resource resource : editingDomain.getResourceSet().getResources()) { + if ((first || !resource.getContents().isEmpty() || isPersisted(resource)) && !editingDomain.isReadOnly(resource)) { + try { + long timeStamp = resource.getTimeStamp(); + resource.save(saveOptions); + if (resource.getTimeStamp() != timeStamp) { + savedResources.add(resource); + } + } + catch (Exception exception) { + resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception)); + } + first = false; + } + } + } + }; + + updateProblemIndication = false; + try { + // This runs the options, and shows progress. + // + new ProgressMonitorDialog(getSite().getShell()).run(true, false, operation); + + // Refresh the necessary state. + // + ((BasicCommandStack)editingDomain.getCommandStack()).saveIsDone(); + firePropertyChange(IEditorPart.PROP_DIRTY); + } + catch (Exception exception) { + // Something went wrong that shouldn't. + // + EmfTasksEditorPlugin.INSTANCE.log(exception); + } + updateProblemIndication = true; + updateProblemIndication(); + } + + /** + * This returns whether something has been persisted to the URI of the specified resource. + * The implementation uses the URI converter from the editor's resource set to try to open an input stream. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected boolean isPersisted(Resource resource) { + boolean result = false; + try { + InputStream stream = editingDomain.getResourceSet().getURIConverter().createInputStream(resource.getURI()); + if (stream != null) { + result = true; + stream.close(); + } + } + catch (IOException e) { + // Ignore + } + return result; + } + + /** + * This always returns true because it is not currently supported. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSaveAsAllowed() { + return true; + } + + /** + * This also changes the editor's input. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void doSaveAs() { + SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell()); + saveAsDialog.open(); + IPath path = saveAsDialog.getResult(); + if (path != null) { + IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path); + if (file != null) { + doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file)); + } + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void doSaveAs(URI uri, IEditorInput editorInput) { + (editingDomain.getResourceSet().getResources().get(0)).setURI(uri); + setInputWithNotify(editorInput); + setPartName(editorInput.getName()); + IProgressMonitor progressMonitor = + getActionBars().getStatusLineManager() != null ? + getActionBars().getStatusLineManager().getProgressMonitor() : + new NullProgressMonitor(); + doSave(progressMonitor); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void gotoMarker(IMarker marker) { + try { + if (marker.getType().equals(EValidator.MARKER)) { + String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null); + if (uriAttribute != null) { + URI uri = URI.createURI(uriAttribute); + EObject eObject = editingDomain.getResourceSet().getEObject(uri, true); + if (eObject != null) { + setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject))); + } + } + } + } + catch (CoreException exception) { + EmfTasksEditorPlugin.INSTANCE.log(exception); + } + } + + /** + * This is called during startup. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void init(IEditorSite site, IEditorInput editorInput) { + setSite(site); + setInputWithNotify(editorInput); + setPartName(editorInput.getName()); + site.setSelectionProvider(this); + site.getPage().addPartListener(partListener); + ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFocus() { + if (currentViewerPane != null) { + currentViewerPane.setFocus(); + } + else { + getControl(getActivePage()).setFocus(); + } + } + + /** + * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void addSelectionChangedListener(ISelectionChangedListener listener) { + selectionChangedListeners.add(listener); + } + + /** + * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void removeSelectionChangedListener(ISelectionChangedListener listener) { + selectionChangedListeners.remove(listener); + } + + /** + * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ISelection getSelection() { + return editorSelection; + } + + /** + * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to set this editor's overall selection. + * Calling this result will notify the listeners. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSelection(ISelection selection) { + editorSelection = selection; + + for (ISelectionChangedListener listener : selectionChangedListeners) { + listener.selectionChanged(new SelectionChangedEvent(this, selection)); + } + setStatusLineManager(selection); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setStatusLineManager(ISelection selection) { + IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ? + contentOutlineStatusLineManager : getActionBars().getStatusLineManager(); + + if (statusLineManager != null) { + if (selection instanceof IStructuredSelection) { + Collection<?> collection = ((IStructuredSelection)selection).toList(); + switch (collection.size()) { + case 0: { + statusLineManager.setMessage(getString("_UI_NoObjectSelected")); + break; + } + case 1: { + String text = new AdapterFactoryItemDelegator(adapterFactory).getText(collection.iterator().next()); + statusLineManager.setMessage(getString("_UI_SingleObjectSelected", text)); + break; + } + default: { + statusLineManager.setMessage(getString("_UI_MultiObjectSelected", Integer.toString(collection.size()))); + break; + } + } + } + else { + statusLineManager.setMessage(""); + } + } + } + + /** + * This looks up a string in the plugin's plugin.properties file. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static String getString(String key) { + return EmfTasksEditorPlugin.INSTANCE.getString(key); + } + + /** + * This looks up a string in plugin.properties, making a substitution. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static String getString(String key, Object s1) { + return EmfTasksEditorPlugin.INSTANCE.getString(key, new Object [] { s1 }); + } + + /** + * This implements {@link org.eclipse.jface.action.IMenuListener} to help fill the context menus with contributions from the Edit menu. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void menuAboutToShow(IMenuManager menuManager) { + ((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EditingDomainActionBarContributor getActionBarContributor() { + return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IActionBars getActionBars() { + return getActionBarContributor().getActionBars(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AdapterFactory getAdapterFactory() { + return adapterFactory; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void dispose() { + updateProblemIndication = false; + + ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceChangeListener); + + getSite().getPage().removePartListener(partListener); + + adapterFactory.dispose(); + + if (getActionBarContributor().getActiveEditor() == this) { + getActionBarContributor().setActiveEditor(null); + } + + if (propertySheetPage != null) { + propertySheetPage.dispose(); + } + + if (contentOutlinePage != null) { + contentOutlinePage.dispose(); + } + + super.dispose(); + } + + /** + * Returns whether the outline view should be presented to the user. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected boolean showOutlineView() { + return true; + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksEditorPlugin.java b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksEditorPlugin.java new file mode 100644 index 00000000..e8067158 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksEditorPlugin.java @@ -0,0 +1,91 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.presentation; + +import org.eclipse.emf.common.EMFPlugin; + +import org.eclipse.emf.common.ui.EclipseUIPlugin; + +import org.eclipse.emf.common.util.ResourceLocator; + +/** + * This is the central singleton for the EmfTasks editor plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public final class EmfTasksEditorPlugin extends EMFPlugin { + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EmfTasksEditorPlugin INSTANCE = new EmfTasksEditorPlugin(); + + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static Implementation plugin; + + /** + * Create the instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksEditorPlugin() { + super + (new ResourceLocator [] { + }); + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + @Override + public ResourceLocator getPluginResourceLocator() { + return plugin; + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + public static Implementation getPlugin() { + return plugin; + } + + /** + * The actual implementation of the Eclipse <b>Plugin</b>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static class Implementation extends EclipseUIPlugin { + /** + * Creates an instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Implementation() { + super(); + + // Remember the static instance. + // + plugin = this; + } + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksModelWizard.java b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksModelWizard.java new file mode 100644 index 00000000..3e4caf9d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model.editor/src/org/eclipse/mylyn/reviews/example/emftasks/presentation/EmfTasksModelWizard.java @@ -0,0 +1,628 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.presentation; + + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.MissingResourceException; +import java.util.StringTokenizer; + +import org.eclipse.emf.common.CommonPlugin; + +import org.eclipse.emf.common.util.URI; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EClassifier; + +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.emf.ecore.resource.ResourceSet; + +import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.emf.ecore.xmi.XMLResource; + +import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry; + +import org.eclipse.core.resources.IContainer; +import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IFolder; +import org.eclipse.core.resources.IProject; +import org.eclipse.core.resources.IResource; +import org.eclipse.core.resources.ResourcesPlugin; + +import org.eclipse.core.runtime.IProgressMonitor; + +import org.eclipse.jface.dialogs.MessageDialog; + +import org.eclipse.jface.viewers.IStructuredSelection; + +import org.eclipse.jface.wizard.Wizard; +import org.eclipse.jface.wizard.WizardPage; + +import org.eclipse.swt.SWT; + +import org.eclipse.swt.events.ModifyListener; +import org.eclipse.swt.events.ModifyEvent; + +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; + +import org.eclipse.swt.widgets.Combo; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Label; + +import org.eclipse.ui.INewWizard; +import org.eclipse.ui.IWorkbench; + +import org.eclipse.ui.actions.WorkspaceModifyOperation; + +import org.eclipse.ui.dialogs.WizardNewFileCreationPage; + +import org.eclipse.ui.part.FileEditorInput; +import org.eclipse.ui.part.ISetSelectionTarget; + +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksFactory; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.reviews.example.emftasks.provider.EmfTasksEditPlugin; + + +import org.eclipse.core.runtime.Path; + +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.jface.viewers.StructuredSelection; + +import org.eclipse.ui.IWorkbenchPage; +import org.eclipse.ui.IWorkbenchPart; +import org.eclipse.ui.IWorkbenchWindow; +import org.eclipse.ui.PartInitException; + + +/** + * This is a simple wizard for creating a new model file. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class EmfTasksModelWizard extends Wizard implements INewWizard { + /** + * The supported extensions for created files. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<String> FILE_EXTENSIONS = + Collections.unmodifiableList(Arrays.asList(EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksEditorFilenameExtensions").split("\\s*,\\s*"))); + + /** + * A formatted list of supported file extensions, suitable for display. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final String FORMATTED_FILE_EXTENSIONS = + EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", "); + + /** + * This caches an instance of the model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EmfTasksPackage emfTasksPackage = EmfTasksPackage.eINSTANCE; + + /** + * This caches an instance of the model factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EmfTasksFactory emfTasksFactory = emfTasksPackage.getEmfTasksFactory(); + + /** + * This is the file creation page. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EmfTasksModelWizardNewFileCreationPage newFileCreationPage; + + /** + * This is the initial object creation page. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EmfTasksModelWizardInitialObjectCreationPage initialObjectCreationPage; + + /** + * Remember the selection during initialization for populating the default container. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IStructuredSelection selection; + + /** + * Remember the workbench during initialization. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IWorkbench workbench; + + /** + * Caches the names of the types that can be created as the root object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected List<String> initialObjectNames; + + /** + * This just records the information. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void init(IWorkbench workbench, IStructuredSelection selection) { + this.workbench = workbench; + this.selection = selection; + setWindowTitle(EmfTasksEditorPlugin.INSTANCE.getString("_UI_Wizard_label")); + setDefaultPageImageDescriptor(ExtendedImageRegistry.INSTANCE.getImageDescriptor(EmfTasksEditorPlugin.INSTANCE.getImage("full/wizban/NewEmfTasks"))); + } + + /** + * Returns the names of the types that can be created as the root object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<String> getInitialObjectNames() { + if (initialObjectNames == null) { + initialObjectNames = new ArrayList<String>(); + for (EClassifier eClassifier : emfTasksPackage.getEClassifiers()) { + if (eClassifier instanceof EClass) { + EClass eClass = (EClass)eClassifier; + if (!eClass.isAbstract()) { + initialObjectNames.add(eClass.getName()); + } + } + } + Collections.sort(initialObjectNames, CommonPlugin.INSTANCE.getComparator()); + } + return initialObjectNames; + } + + /** + * Create a new model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EObject createInitialModel() { + EClass eClass = (EClass)emfTasksPackage.getEClassifier(initialObjectCreationPage.getInitialObjectName()); + EObject rootObject = emfTasksFactory.create(eClass); + return rootObject; + } + + /** + * Do the work after everything is specified. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean performFinish() { + try { + // Remember the file. + // + final IFile modelFile = getModelFile(); + + // Do the work within an operation. + // + WorkspaceModifyOperation operation = + new WorkspaceModifyOperation() { + @Override + protected void execute(IProgressMonitor progressMonitor) { + try { + // Create a resource set + // + ResourceSet resourceSet = new ResourceSetImpl(); + + // Get the URI of the model file. + // + URI fileURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true); + + // Create a resource for this file. + // + Resource resource = resourceSet.createResource(fileURI); + + // Add the initial model object to the contents. + // + EObject rootObject = createInitialModel(); + if (rootObject != null) { + resource.getContents().add(rootObject); + } + + // Save the contents of the resource to the file system. + // + Map<Object, Object> options = new HashMap<Object, Object>(); + options.put(XMLResource.OPTION_ENCODING, initialObjectCreationPage.getEncoding()); + resource.save(options); + } + catch (Exception exception) { + EmfTasksEditorPlugin.INSTANCE.log(exception); + } + finally { + progressMonitor.done(); + } + } + }; + + getContainer().run(false, false, operation); + + // Select the new file resource in the current view. + // + IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow(); + IWorkbenchPage page = workbenchWindow.getActivePage(); + final IWorkbenchPart activePart = page.getActivePart(); + if (activePart instanceof ISetSelectionTarget) { + final ISelection targetSelection = new StructuredSelection(modelFile); + getShell().getDisplay().asyncExec + (new Runnable() { + public void run() { + ((ISetSelectionTarget)activePart).selectReveal(targetSelection); + } + }); + } + + // Open an editor on the new file. + // + try { + page.openEditor + (new FileEditorInput(modelFile), + workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId()); + } + catch (PartInitException exception) { + MessageDialog.openError(workbenchWindow.getShell(), EmfTasksEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage()); + return false; + } + + return true; + } + catch (Exception exception) { + EmfTasksEditorPlugin.INSTANCE.log(exception); + return false; + } + } + + /** + * This is the one page of the wizard. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public class EmfTasksModelWizardNewFileCreationPage extends WizardNewFileCreationPage { + /** + * Pass in the selection. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksModelWizardNewFileCreationPage(String pageId, IStructuredSelection selection) { + super(pageId, selection); + } + + /** + * The framework calls this to see if the file is correct. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean validatePage() { + if (super.validatePage()) { + String extension = new Path(getFileName()).getFileExtension(); + if (extension == null || !FILE_EXTENSIONS.contains(extension)) { + String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension"; + setErrorMessage(EmfTasksEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS })); + return false; + } + return true; + } + return false; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IFile getModelFile() { + return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName())); + } + } + + /** + * This is the page where the type of object to create is selected. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public class EmfTasksModelWizardInitialObjectCreationPage extends WizardPage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Combo initialObjectField; + + /** + * @generated + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + */ + protected List<String> encodings; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Combo encodingField; + + /** + * Pass in the selection. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksModelWizardInitialObjectCreationPage(String pageId) { + super(pageId); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void createControl(Composite parent) { + Composite composite = new Composite(parent, SWT.NONE); + { + GridLayout layout = new GridLayout(); + layout.numColumns = 1; + layout.verticalSpacing = 12; + composite.setLayout(layout); + + GridData data = new GridData(); + data.verticalAlignment = GridData.FILL; + data.grabExcessVerticalSpace = true; + data.horizontalAlignment = GridData.FILL; + composite.setLayoutData(data); + } + + Label containerLabel = new Label(composite, SWT.LEFT); + { + containerLabel.setText(EmfTasksEditorPlugin.INSTANCE.getString("_UI_ModelObject")); + + GridData data = new GridData(); + data.horizontalAlignment = GridData.FILL; + containerLabel.setLayoutData(data); + } + + initialObjectField = new Combo(composite, SWT.BORDER); + { + GridData data = new GridData(); + data.horizontalAlignment = GridData.FILL; + data.grabExcessHorizontalSpace = true; + initialObjectField.setLayoutData(data); + } + + for (String objectName : getInitialObjectNames()) { + initialObjectField.add(getLabel(objectName)); + } + + if (initialObjectField.getItemCount() == 1) { + initialObjectField.select(0); + } + initialObjectField.addModifyListener(validator); + + Label encodingLabel = new Label(composite, SWT.LEFT); + { + encodingLabel.setText(EmfTasksEditorPlugin.INSTANCE.getString("_UI_XMLEncoding")); + + GridData data = new GridData(); + data.horizontalAlignment = GridData.FILL; + encodingLabel.setLayoutData(data); + } + encodingField = new Combo(composite, SWT.BORDER); + { + GridData data = new GridData(); + data.horizontalAlignment = GridData.FILL; + data.grabExcessHorizontalSpace = true; + encodingField.setLayoutData(data); + } + + for (String encoding : getEncodings()) { + encodingField.add(encoding); + } + + encodingField.select(0); + encodingField.addModifyListener(validator); + + setPageComplete(validatePage()); + setControl(composite); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ModifyListener validator = + new ModifyListener() { + public void modifyText(ModifyEvent e) { + setPageComplete(validatePage()); + } + }; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected boolean validatePage() { + return getInitialObjectName() != null && getEncodings().contains(encodingField.getText()); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVisible(boolean visible) { + super.setVisible(visible); + if (visible) { + if (initialObjectField.getItemCount() == 1) { + initialObjectField.clearSelection(); + encodingField.setFocus(); + } + else { + encodingField.clearSelection(); + initialObjectField.setFocus(); + } + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getInitialObjectName() { + String label = initialObjectField.getText(); + + for (String name : getInitialObjectNames()) { + if (getLabel(name).equals(label)) { + return name; + } + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getEncoding() { + return encodingField.getText(); + } + + /** + * Returns the label for the specified type name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected String getLabel(String typeName) { + try { + return EmfTasksEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type"); + } + catch(MissingResourceException mre) { + EmfTasksEditorPlugin.INSTANCE.log(mre); + } + return typeName; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<String> getEncodings() { + if (encodings == null) { + encodings = new ArrayList<String>(); + for (StringTokenizer stringTokenizer = new StringTokenizer(EmfTasksEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) { + encodings.add(stringTokenizer.nextToken()); + } + } + return encodings; + } + } + + /** + * The framework calls this to create the contents of the wizard. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void addPages() { + // Create a page, set the title, and the initial model file name. + // + newFileCreationPage = new EmfTasksModelWizardNewFileCreationPage("Whatever", selection); + newFileCreationPage.setTitle(EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksModelWizard_label")); + newFileCreationPage.setDescription(EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksModelWizard_description")); + newFileCreationPage.setFileName(EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksEditorFilenameDefaultBase") + "." + FILE_EXTENSIONS.get(0)); + addPage(newFileCreationPage); + + // Try and get the resource selection to determine a current directory for the file dialog. + // + if (selection != null && !selection.isEmpty()) { + // Get the resource... + // + Object selectedElement = selection.iterator().next(); + if (selectedElement instanceof IResource) { + // Get the resource parent, if its a file. + // + IResource selectedResource = (IResource)selectedElement; + if (selectedResource.getType() == IResource.FILE) { + selectedResource = selectedResource.getParent(); + } + + // This gives us a directory... + // + if (selectedResource instanceof IFolder || selectedResource instanceof IProject) { + // Set this for the container. + // + newFileCreationPage.setContainerFullPath(selectedResource.getFullPath()); + + // Make up a unique new name here. + // + String defaultModelBaseFilename = EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksEditorFilenameDefaultBase"); + String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0); + String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension; + for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) { + modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension; + } + newFileCreationPage.setFileName(modelFilename); + } + } + } + initialObjectCreationPage = new EmfTasksModelWizardInitialObjectCreationPage("Whatever2"); + initialObjectCreationPage.setTitle(EmfTasksEditorPlugin.INSTANCE.getString("_UI_EmfTasksModelWizard_label")); + initialObjectCreationPage.setDescription(EmfTasksEditorPlugin.INSTANCE.getString("_UI_Wizard_initial_object_description")); + addPage(initialObjectCreationPage); + } + + /** + * Get the file from the page. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IFile getModelFile() { + return newFileCreationPage.getModelFile(); + } + +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.classpath b/org.eclipse.mylyn.reviews.example.emftasks.model/.classpath new file mode 100644 index 00000000..ad32c83a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.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/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.project b/org.eclipse.mylyn.reviews.example.emftasks.model/.project new file mode 100644 index 00000000..66adc519 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.project @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.mylyn.reviews.example.emftasks.model</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> + <buildCommand> + <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature> + </natures> +</projectDescription> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 00000000..5a0ad22d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.core.runtime.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +line.separator=\n diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000..bc2c501d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,353 @@ +#Thu Mar 10 01:20:38 PST 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.codeComplete.argumentPrefixes= +org.eclipse.jdt.core.codeComplete.argumentSuffixes= +org.eclipse.jdt.core.codeComplete.fieldPrefixes= +org.eclipse.jdt.core.codeComplete.fieldSuffixes= +org.eclipse.jdt.core.codeComplete.localPrefixes= +org.eclipse.jdt.core.codeComplete.localSuffixes= +org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=error +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled +org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL +org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=1 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +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=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=false +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=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert +org.eclipse.jdt.core.formatter.comment.line_length=120 +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=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +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=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=do not 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=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_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_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=true +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=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=true +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=true +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=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_outer_expressions_when_nested=true diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000..f6c0a161 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,63 @@ +#Wed Mar 02 16:00:06 PST 2011 +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_Mylyn based on Eclipse +formatter_settings_version=12 +internal.default.compliance=default +org.eclipse.jdt.ui.exception.name=e +org.eclipse.jdt.ui.gettersetter.use.is=true +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.keywordthis=false +org.eclipse.jdt.ui.overrideannotation=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">/**\r\n * @return the ${bare_field_name}\r\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">/**\r\n * @param ${param} the ${bare_field_name} to set\r\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">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\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">/**\r\n * @author ${user}\r\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">/**\r\n * \r\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">/**\r\n * ${tags}\r\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\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\r\n * Copyright (c) ${year} Tasktop Technologies and others.\r\n * All rights reserved. This program and the accompanying materials\r\n * are made available under the terms of the Eclipse Public License v1.0\r\n * which accompanies this distribution, and is available at\r\n * http\://www.eclipse.org/legal/epl-v10.html\r\n *\r\n * Contributors\:\r\n * Tasktop Technologies - initial API and implementation\r\n *******************************************************************************/\r\n\r\n${package_declaration}\r\n\r\n${typecomment}\r\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">\r\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">\r\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">\r\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">\r\n</template><template autoinsert\="false" 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\r\n${exception_var}.printStackTrace();</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ignore\r\n${body_statement}</template><template autoinsert\="false" 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}\r\n// ignore</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><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">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * @return the ${bare_field_name}\r\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * @param ${param} the ${bare_field_name} to set\r\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created JavaScript files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\r\n * @author ${user}\r\n *\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for vars" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Jsdoc)\r\n * ${see_to_overridden}\r\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\r\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created function stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated function stub\r\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\r\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.wst.jsdt.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.wst.jsdt.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_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=true +sp_cleanup.correct_indentation=true +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_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=true +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +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=true +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=true +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/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.ltk.core.refactoring.prefs b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.ltk.core.refactoring.prefs new file mode 100644 index 00000000..5e7f2bd4 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.ltk.core.refactoring.prefs @@ -0,0 +1,3 @@ +#Tue Aug 18 22:42:26 PDT 2009 +eclipse.preferences.version=1 +org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.mylyn.tasks.ui.prefs new file mode 100644 index 00000000..d8c6d26a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.mylyn.tasks.ui.prefs @@ -0,0 +1,4 @@ +#Mon Jun 25 03:02:37 GMT 2007 +eclipse.preferences.version=1 +project.repository.kind=bugzilla +project.repository.url=https\://bugs.eclipse.org/bugs diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.mylyn.team.ui.prefs new file mode 100644 index 00000000..10d0afb9 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.mylyn.team.ui.prefs @@ -0,0 +1,2 @@ +commit.comment.template=${task.key}\: ${task.description}\n\nTask-Url\: ${task.url} +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.pde.prefs b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.pde.prefs new file mode 100644 index 00000000..e8f2d562 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/.settings/org.eclipse.pde.prefs @@ -0,0 +1,18 @@ +#Tue Apr 15 11:07:59 PDT 2008 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=2 +compilers.p.missing-bundle-classpath-entries=1 +compilers.p.missing-packages=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=0 +compilers.p.unknown-class=0 +compilers.p.unknown-element=0 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=0 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.use-project=true +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.example.emftasks.model/META-INF/MANIFEST.MF new file mode 100644 index 00000000..306d6f97 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/META-INF/MANIFEST.MF @@ -0,0 +1,20 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Mylyn Emf Example Tasks Model +Bundle-SymbolicName: org.eclipse.mylyn.reviews.example.emftasks.model;singleton:=true +Bundle-Version: 0.13.0.qualifier +Bundle-ClassPath: . +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.emf.common, + org.eclipse.emf.ecore, + org.eclipse.emf.ecore.xmi, + org.eclipse.mylyn.commons.core, + org.eclipse.mylyn.commons.net, + org.eclipse.mylyn.tasks.core, + org.eclipse.mylyn.commons.sdk.util +Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-Vendor: Eclipse Mylyn +Export-Package: org.eclipse.mylyn.reviews.example.emftasks, + org.eclipse.mylyn.reviews.example.emftasks.impl, + org.eclipse.mylyn.reviews.example.emftasks.util diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/about.html b/org.eclipse.mylyn.reviews.example.emftasks.model/about.html new file mode 100644 index 00000000..d774b07c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/about.html @@ -0,0 +1,27 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> +<html> +<head> +<title>About</title> +<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1"> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 25, 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</a>.</p> + +</body> +</html>
\ No newline at end of file diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/build.properties b/org.eclipse.mylyn.reviews.example.emftasks.model/build.properties new file mode 100644 index 00000000..452f0867 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/build.properties @@ -0,0 +1,9 @@ +# + +bin.includes = .,\ + model/,\ + META-INF/,\ + plugin.xml +jars.compile.order = . +source.. = src/ +output.. = bin/ diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/model/emftasks.ecore b/org.eclipse.mylyn.reviews.example.emftasks.model/model/emftasks.ecore new file mode 100644 index 00000000..7cf2703f --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/model/emftasks.ecore @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="emftasks" nsURI="http://eclipse.org/mylyn/tasks/emftasks/1.0" + nsPrefix="emftasks"> + <eClassifiers xsi:type="ecore:EClass" name="SimpleTask"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" + iD="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="summary" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="status" eType="#//Status"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="priority" eType="#//Priority"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="dueDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="completionDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="creationDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="modificationDate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="collaborators" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="relatedUrl" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="ranking" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="category" eType="#//Category"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="Status"> + <eLiterals name="New" value="1" literal="NEW"/> + <eLiterals name="Active" value="2" literal="ACTIVE"/> + <eLiterals name="Complete" value="3" literal="COMPLETE"/> + <eLiterals name="Deferred" value="4" literal="DEFERRED"/> + <eLiterals name="Invalid" value="5" literal="INVALID"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="Priority"> + <eLiterals name="Minor" value="10" literal="MINOR"/> + <eLiterals name="Standard" value="20" literal="STANDARD"/> + <eLiterals name="Important" value="30" literal="IMPORTANT"/> + <eLiterals name="Urgent" value="40" literal="URGENT"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Category"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="summary" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TaskCollection"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="tasks" upperBound="-1" + eType="#//SimpleTask" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastTaskId" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="0"/> + </eClassifiers> +</ecore:EPackage> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/model/emftasks.genmodel b/org.eclipse.mylyn.reviews.example.emftasks.model/model/emftasks.genmodel new file mode 100644 index 00000000..5536607b --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/model/emftasks.genmodel @@ -0,0 +1,48 @@ +<?xml version="1.0" encoding="UTF-8"?> +<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" + xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.mylyn.reviews.example.emftasks.model/src" + modelPluginID="org.eclipse.mylyn.reviews.example.emftasks.model" modelName="EmfTasks" + rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" importerID="org.eclipse.emf.importer.ecore" + complianceLevel="6.0" copyrightFields="false" runtimeVersion="2.7" operationReflection="true"> + <foreignModel>emftasks.ecore</foreignModel> + <genPackages prefix="EmfTasks" basePackage="org.eclipse.mylyn.reviews.example" disposableProviderFactory="true" + ecorePackage="emftasks.ecore#/"> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="emftasks.ecore#//Status"> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Status/New"/> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Status/Active"/> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Status/Complete"/> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Status/Deferred"/> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Status/Invalid"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="emftasks.ecore#//Priority"> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Priority/Minor"/> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Priority/Standard"/> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Priority/Important"/> + <genEnumLiterals ecoreEnumLiteral="emftasks.ecore#//Priority/Urgent"/> + </genEnums> + <genClasses ecoreClass="emftasks.ecore#//SimpleTask" labelFeature="#//emftasks/SimpleTask/summary"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/summary"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/description"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/status"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/priority"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/dueDate"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/completionDate"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/creationDate"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/modificationDate"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/collaborators"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/relatedUrl"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//SimpleTask/ranking"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference emftasks.ecore#//SimpleTask/category"/> + </genClasses> + <genClasses ecoreClass="emftasks.ecore#//Category"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//Category/summary"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//Category/description"/> + </genClasses> + <genClasses ecoreClass="emftasks.ecore#//TaskCollection"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//TaskCollection/label"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference emftasks.ecore#//TaskCollection/tasks"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute emftasks.ecore#//TaskCollection/lastTaskId"/> + </genClasses> + </genPackages> +</genmodel:GenModel> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/plugin.properties b/org.eclipse.mylyn.reviews.example.emftasks.model/plugin.properties new file mode 100644 index 00000000..873a37b3 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/plugin.properties @@ -0,0 +1,4 @@ +# + +pluginName = EmfTasks Model +providerName = www.example.org diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/plugin.xml b/org.eclipse.mylyn.reviews.example.emftasks.model/plugin.xml new file mode 100644 index 00000000..007da0c2 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/plugin.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- +--> + +<plugin> + + <extension point="org.eclipse.emf.ecore.generated_package"> + <!-- @generated emftasks --> + <package + uri="http://eclipse.org/mylyn/tasks/emftasks/1.0" + class="org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage" + genModel="model/emftasks.genmodel"/> + </extension> + +</plugin> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/pom.xml b/org.eclipse.mylyn.reviews.example.emftasks.model/pom.xml new file mode 100644 index 00000000..52c9a1e8 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/pom.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>org.eclipse.mylyn.reviews.r4e-parent</artifactId> + <groupId>org.eclipse.mylyn.reviews.r4e</groupId> + <version>0.13.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.mylyn.reviews.example.emftasks.model</artifactId> + <version>0.13.0-SNAPSHOT</version> + <packaging>eclipse-plugin</packaging> + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-source-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Category.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Category.java new file mode 100644 index 00000000..abbedda9 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Category.java @@ -0,0 +1,77 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Category</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.Category#getSummary <em>Summary</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.Category#getDescription <em>Description</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getCategory() + * @model + * @generated + */ +public interface Category extends EObject { + /** + * Returns the value of the '<em><b>Summary</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Summary</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Summary</em>' attribute. + * @see #setSummary(String) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getCategory_Summary() + * @model required="true" + * @generated + */ + String getSummary(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.Category#getSummary <em>Summary</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Summary</em>' attribute. + * @see #getSummary() + * @generated + */ + void setSummary(String value); + + /** + * Returns the value of the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Description</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Description</em>' attribute. + * @see #setDescription(String) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getCategory_Description() + * @model + * @generated + */ + String getDescription(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.Category#getDescription <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Description</em>' attribute. + * @see #getDescription() + * @generated + */ + void setDescription(String value); + +} // Category diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/EmfTasksFactory.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/EmfTasksFactory.java new file mode 100644 index 00000000..d4fc5e80 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/EmfTasksFactory.java @@ -0,0 +1,60 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage + * @generated + */ +public interface EmfTasksFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EmfTasksFactory eINSTANCE = org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Simple Task</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Simple Task</em>'. + * @generated + */ + SimpleTask createSimpleTask(); + + /** + * Returns a new object of class '<em>Category</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Category</em>'. + * @generated + */ + Category createCategory(); + + /** + * Returns a new object of class '<em>Task Collection</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Task Collection</em>'. + * @generated + */ + TaskCollection createTaskCollection(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + EmfTasksPackage getEmfTasksPackage(); + +} //EmfTasksFactory diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/EmfTasksPackage.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/EmfTasksPackage.java new file mode 100644 index 00000000..cf4ffc09 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/EmfTasksPackage.java @@ -0,0 +1,794 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksFactory + * @model kind="package" + * @generated + */ +public interface EmfTasksPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "emftasks"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "http://eclipse.org/mylyn/tasks/emftasks/1.0"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "emftasks"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EmfTasksPackage eINSTANCE = org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl.init(); + + /** + * The meta object id for the '{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl <em>Simple Task</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getSimpleTask() + * @generated + */ + int SIMPLE_TASK = 0; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__ID = 0; + + /** + * The feature id for the '<em><b>Summary</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__SUMMARY = 1; + + /** + * The feature id for the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__DESCRIPTION = 2; + + /** + * The feature id for the '<em><b>Status</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__STATUS = 3; + + /** + * The feature id for the '<em><b>Priority</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__PRIORITY = 4; + + /** + * The feature id for the '<em><b>Due Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__DUE_DATE = 5; + + /** + * The feature id for the '<em><b>Completion Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__COMPLETION_DATE = 6; + + /** + * The feature id for the '<em><b>Creation Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__CREATION_DATE = 7; + + /** + * The feature id for the '<em><b>Modification Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__MODIFICATION_DATE = 8; + + /** + * The feature id for the '<em><b>Collaborators</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__COLLABORATORS = 9; + + /** + * The feature id for the '<em><b>Related Url</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__RELATED_URL = 10; + + /** + * The feature id for the '<em><b>Ranking</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__RANKING = 11; + + /** + * The feature id for the '<em><b>Category</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK__CATEGORY = 12; + + /** + * The number of structural features of the '<em>Simple Task</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK_FEATURE_COUNT = 13; + + /** + * The number of operations of the '<em>Simple Task</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SIMPLE_TASK_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.mylyn.reviews.example.emftasks.impl.CategoryImpl <em>Category</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.CategoryImpl + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getCategory() + * @generated + */ + int CATEGORY = 1; + + /** + * The feature id for the '<em><b>Summary</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CATEGORY__SUMMARY = 0; + + /** + * The feature id for the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CATEGORY__DESCRIPTION = 1; + + /** + * The number of structural features of the '<em>Category</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CATEGORY_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>Category</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CATEGORY_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.mylyn.reviews.example.emftasks.impl.TaskCollectionImpl <em>Task Collection</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.TaskCollectionImpl + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getTaskCollection() + * @generated + */ + int TASK_COLLECTION = 2; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TASK_COLLECTION__LABEL = 0; + + /** + * The feature id for the '<em><b>Tasks</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TASK_COLLECTION__TASKS = 1; + + /** + * The feature id for the '<em><b>Last Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TASK_COLLECTION__LAST_TASK_ID = 2; + + /** + * The number of structural features of the '<em>Task Collection</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TASK_COLLECTION_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Task Collection</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TASK_COLLECTION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.mylyn.reviews.example.emftasks.Status <em>Status</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.Status + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getStatus() + * @generated + */ + int STATUS = 3; + + /** + * The meta object id for the '{@link org.eclipse.mylyn.reviews.example.emftasks.Priority <em>Priority</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.Priority + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getPriority() + * @generated + */ + int PRIORITY = 4; + + + /** + * Returns the meta object for class '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask <em>Simple Task</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Simple Task</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask + * @generated + */ + EClass getSimpleTask(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getId() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_Id(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getSummary <em>Summary</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Summary</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getSummary() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_Summary(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDescription <em>Description</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Description</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDescription() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_Description(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getStatus <em>Status</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Status</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getStatus() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_Status(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getPriority <em>Priority</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Priority</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getPriority() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_Priority(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDueDate <em>Due Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Due Date</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDueDate() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_DueDate(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCompletionDate <em>Completion Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Completion Date</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCompletionDate() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_CompletionDate(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCreationDate <em>Creation Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Creation Date</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCreationDate() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_CreationDate(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getModificationDate <em>Modification Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Modification Date</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getModificationDate() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_ModificationDate(); + + /** + * Returns the meta object for the attribute list '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCollaborators <em>Collaborators</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Collaborators</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCollaborators() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_Collaborators(); + + /** + * Returns the meta object for the attribute list '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getRelatedUrl <em>Related Url</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Related Url</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getRelatedUrl() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_RelatedUrl(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getRanking <em>Ranking</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Ranking</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getRanking() + * @see #getSimpleTask() + * @generated + */ + EAttribute getSimpleTask_Ranking(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCategory <em>Category</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Category</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCategory() + * @see #getSimpleTask() + * @generated + */ + EReference getSimpleTask_Category(); + + /** + * Returns the meta object for class '{@link org.eclipse.mylyn.reviews.example.emftasks.Category <em>Category</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Category</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.Category + * @generated + */ + EClass getCategory(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.Category#getSummary <em>Summary</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Summary</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.Category#getSummary() + * @see #getCategory() + * @generated + */ + EAttribute getCategory_Summary(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.Category#getDescription <em>Description</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Description</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.Category#getDescription() + * @see #getCategory() + * @generated + */ + EAttribute getCategory_Description(); + + /** + * Returns the meta object for class '{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection <em>Task Collection</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Task Collection</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.TaskCollection + * @generated + */ + EClass getTaskCollection(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLabel <em>Label</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Label</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLabel() + * @see #getTaskCollection() + * @generated + */ + EAttribute getTaskCollection_Label(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getTasks <em>Tasks</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Tasks</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getTasks() + * @see #getTaskCollection() + * @generated + */ + EReference getTaskCollection_Tasks(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLastTaskId <em>Last Task Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Last Task Id</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLastTaskId() + * @see #getTaskCollection() + * @generated + */ + EAttribute getTaskCollection_LastTaskId(); + + /** + * Returns the meta object for enum '{@link org.eclipse.mylyn.reviews.example.emftasks.Status <em>Status</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Status</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.Status + * @generated + */ + EEnum getStatus(); + + /** + * Returns the meta object for enum '{@link org.eclipse.mylyn.reviews.example.emftasks.Priority <em>Priority</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Priority</em>'. + * @see org.eclipse.mylyn.reviews.example.emftasks.Priority + * @generated + */ + EEnum getPriority(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + EmfTasksFactory getEmfTasksFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl <em>Simple Task</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getSimpleTask() + * @generated + */ + EClass SIMPLE_TASK = eINSTANCE.getSimpleTask(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__ID = eINSTANCE.getSimpleTask_Id(); + + /** + * The meta object literal for the '<em><b>Summary</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__SUMMARY = eINSTANCE.getSimpleTask_Summary(); + + /** + * The meta object literal for the '<em><b>Description</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__DESCRIPTION = eINSTANCE.getSimpleTask_Description(); + + /** + * The meta object literal for the '<em><b>Status</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__STATUS = eINSTANCE.getSimpleTask_Status(); + + /** + * The meta object literal for the '<em><b>Priority</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__PRIORITY = eINSTANCE.getSimpleTask_Priority(); + + /** + * The meta object literal for the '<em><b>Due Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__DUE_DATE = eINSTANCE.getSimpleTask_DueDate(); + + /** + * The meta object literal for the '<em><b>Completion Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__COMPLETION_DATE = eINSTANCE.getSimpleTask_CompletionDate(); + + /** + * The meta object literal for the '<em><b>Creation Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__CREATION_DATE = eINSTANCE.getSimpleTask_CreationDate(); + + /** + * The meta object literal for the '<em><b>Modification Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__MODIFICATION_DATE = eINSTANCE.getSimpleTask_ModificationDate(); + + /** + * The meta object literal for the '<em><b>Collaborators</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__COLLABORATORS = eINSTANCE.getSimpleTask_Collaborators(); + + /** + * The meta object literal for the '<em><b>Related Url</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__RELATED_URL = eINSTANCE.getSimpleTask_RelatedUrl(); + + /** + * The meta object literal for the '<em><b>Ranking</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SIMPLE_TASK__RANKING = eINSTANCE.getSimpleTask_Ranking(); + + /** + * The meta object literal for the '<em><b>Category</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference SIMPLE_TASK__CATEGORY = eINSTANCE.getSimpleTask_Category(); + + /** + * The meta object literal for the '{@link org.eclipse.mylyn.reviews.example.emftasks.impl.CategoryImpl <em>Category</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.CategoryImpl + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getCategory() + * @generated + */ + EClass CATEGORY = eINSTANCE.getCategory(); + + /** + * The meta object literal for the '<em><b>Summary</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute CATEGORY__SUMMARY = eINSTANCE.getCategory_Summary(); + + /** + * The meta object literal for the '<em><b>Description</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute CATEGORY__DESCRIPTION = eINSTANCE.getCategory_Description(); + + /** + * The meta object literal for the '{@link org.eclipse.mylyn.reviews.example.emftasks.impl.TaskCollectionImpl <em>Task Collection</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.TaskCollectionImpl + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getTaskCollection() + * @generated + */ + EClass TASK_COLLECTION = eINSTANCE.getTaskCollection(); + + /** + * The meta object literal for the '<em><b>Label</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TASK_COLLECTION__LABEL = eINSTANCE.getTaskCollection_Label(); + + /** + * The meta object literal for the '<em><b>Tasks</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TASK_COLLECTION__TASKS = eINSTANCE.getTaskCollection_Tasks(); + + /** + * The meta object literal for the '<em><b>Last Task Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TASK_COLLECTION__LAST_TASK_ID = eINSTANCE.getTaskCollection_LastTaskId(); + + /** + * The meta object literal for the '{@link org.eclipse.mylyn.reviews.example.emftasks.Status <em>Status</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.Status + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getStatus() + * @generated + */ + EEnum STATUS = eINSTANCE.getStatus(); + + /** + * The meta object literal for the '{@link org.eclipse.mylyn.reviews.example.emftasks.Priority <em>Priority</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.Priority + * @see org.eclipse.mylyn.reviews.example.emftasks.impl.EmfTasksPackageImpl#getPriority() + * @generated + */ + EEnum PRIORITY = eINSTANCE.getPriority(); + + } + +} //EmfTasksPackage diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Priority.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Priority.java new file mode 100644 index 00000000..45c900ee --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Priority.java @@ -0,0 +1,262 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Priority</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getPriority() + * @model + * @generated + */ +public enum Priority implements Enumerator { + /** + * The '<em><b>Minor</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #MINOR_VALUE + * @generated + * @ordered + */ + MINOR(10, "Minor", "MINOR"), + + /** + * The '<em><b>Standard</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #STANDARD_VALUE + * @generated + * @ordered + */ + STANDARD(20, "Standard", "STANDARD"), + + /** + * The '<em><b>Important</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #IMPORTANT_VALUE + * @generated + * @ordered + */ + IMPORTANT(30, "Important", "IMPORTANT"), + + /** + * The '<em><b>Urgent</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #URGENT_VALUE + * @generated + * @ordered + */ + URGENT(40, "Urgent", "URGENT"); + + /** + * The '<em><b>Minor</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Minor</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #MINOR + * @model name="Minor" literal="MINOR" + * @generated + * @ordered + */ + public static final int MINOR_VALUE = 10; + + /** + * The '<em><b>Standard</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Standard</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #STANDARD + * @model name="Standard" literal="STANDARD" + * @generated + * @ordered + */ + public static final int STANDARD_VALUE = 20; + + /** + * The '<em><b>Important</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Important</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #IMPORTANT + * @model name="Important" literal="IMPORTANT" + * @generated + * @ordered + */ + public static final int IMPORTANT_VALUE = 30; + + /** + * The '<em><b>Urgent</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Urgent</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #URGENT + * @model name="Urgent" literal="URGENT" + * @generated + * @ordered + */ + public static final int URGENT_VALUE = 40; + + /** + * An array of all the '<em><b>Priority</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final Priority[] VALUES_ARRAY = + new Priority[] { + MINOR, + STANDARD, + IMPORTANT, + URGENT, + }; + + /** + * A public read-only list of all the '<em><b>Priority</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<Priority> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Priority</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static Priority get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Priority result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Priority</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static Priority getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Priority result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Priority</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static Priority get(int value) { + switch (value) { + case MINOR_VALUE: return MINOR; + case STANDARD_VALUE: return STANDARD; + case IMPORTANT_VALUE: return IMPORTANT; + case URGENT_VALUE: return URGENT; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private Priority(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Priority diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/SimpleTask.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/SimpleTask.java new file mode 100644 index 00000000..258c05c9 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/SimpleTask.java @@ -0,0 +1,364 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks; + +import java.util.Date; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Simple Task</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getId <em>Id</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getSummary <em>Summary</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDescription <em>Description</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getStatus <em>Status</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getPriority <em>Priority</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDueDate <em>Due Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCompletionDate <em>Completion Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCreationDate <em>Creation Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getModificationDate <em>Modification Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCollaborators <em>Collaborators</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getRelatedUrl <em>Related Url</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getRanking <em>Ranking</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCategory <em>Category</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask() + * @model + * @generated + */ +public interface SimpleTask extends EObject { + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Id</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(int) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Id() + * @model id="true" required="true" + * @generated + */ + int getId(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId(int value); + + /** + * Returns the value of the '<em><b>Summary</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Summary</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Summary</em>' attribute. + * @see #setSummary(String) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Summary() + * @model required="true" + * @generated + */ + String getSummary(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getSummary <em>Summary</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Summary</em>' attribute. + * @see #getSummary() + * @generated + */ + void setSummary(String value); + + /** + * Returns the value of the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Description</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Description</em>' attribute. + * @see #setDescription(String) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Description() + * @model + * @generated + */ + String getDescription(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDescription <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Description</em>' attribute. + * @see #getDescription() + * @generated + */ + void setDescription(String value); + + /** + * Returns the value of the '<em><b>Status</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.mylyn.reviews.example.emftasks.Status}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Status</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Status</em>' attribute. + * @see org.eclipse.mylyn.reviews.example.emftasks.Status + * @see #setStatus(Status) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Status() + * @model + * @generated + */ + Status getStatus(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getStatus <em>Status</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Status</em>' attribute. + * @see org.eclipse.mylyn.reviews.example.emftasks.Status + * @see #getStatus() + * @generated + */ + void setStatus(Status value); + + /** + * Returns the value of the '<em><b>Priority</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.mylyn.reviews.example.emftasks.Priority}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Priority</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Priority</em>' attribute. + * @see org.eclipse.mylyn.reviews.example.emftasks.Priority + * @see #setPriority(Priority) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Priority() + * @model + * @generated + */ + Priority getPriority(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getPriority <em>Priority</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Priority</em>' attribute. + * @see org.eclipse.mylyn.reviews.example.emftasks.Priority + * @see #getPriority() + * @generated + */ + void setPriority(Priority value); + + /** + * Returns the value of the '<em><b>Due Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Due Date</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Due Date</em>' attribute. + * @see #setDueDate(Date) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_DueDate() + * @model + * @generated + */ + Date getDueDate(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getDueDate <em>Due Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Due Date</em>' attribute. + * @see #getDueDate() + * @generated + */ + void setDueDate(Date value); + + /** + * Returns the value of the '<em><b>Completion Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Completion Date</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Completion Date</em>' attribute. + * @see #setCompletionDate(Date) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_CompletionDate() + * @model + * @generated + */ + Date getCompletionDate(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCompletionDate <em>Completion Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Completion Date</em>' attribute. + * @see #getCompletionDate() + * @generated + */ + void setCompletionDate(Date value); + + /** + * Returns the value of the '<em><b>Creation Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Creation Date</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Creation Date</em>' attribute. + * @see #setCreationDate(Date) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_CreationDate() + * @model + * @generated + */ + Date getCreationDate(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCreationDate <em>Creation Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Creation Date</em>' attribute. + * @see #getCreationDate() + * @generated + */ + void setCreationDate(Date value); + + /** + * Returns the value of the '<em><b>Modification Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Modification Date</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Modification Date</em>' attribute. + * @see #setModificationDate(Date) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_ModificationDate() + * @model + * @generated + */ + Date getModificationDate(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getModificationDate <em>Modification Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Modification Date</em>' attribute. + * @see #getModificationDate() + * @generated + */ + void setModificationDate(Date value); + + /** + * Returns the value of the '<em><b>Collaborators</b></em>' attribute list. + * The list contents are of type {@link java.lang.String}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Collaborators</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Collaborators</em>' attribute list. + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Collaborators() + * @model + * @generated + */ + EList<String> getCollaborators(); + + /** + * Returns the value of the '<em><b>Related Url</b></em>' attribute list. + * The list contents are of type {@link java.lang.String}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Related Url</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Related Url</em>' attribute list. + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_RelatedUrl() + * @model + * @generated + */ + EList<String> getRelatedUrl(); + + /** + * Returns the value of the '<em><b>Ranking</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Ranking</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Ranking</em>' attribute. + * @see #setRanking(double) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Ranking() + * @model + * @generated + */ + double getRanking(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getRanking <em>Ranking</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Ranking</em>' attribute. + * @see #getRanking() + * @generated + */ + void setRanking(double value); + + /** + * Returns the value of the '<em><b>Category</b></em>' reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Category</em>' reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Category</em>' reference. + * @see #setCategory(Category) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getSimpleTask_Category() + * @model + * @generated + */ + Category getCategory(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask#getCategory <em>Category</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Category</em>' reference. + * @see #getCategory() + * @generated + */ + void setCategory(Category value); + +} // SimpleTask diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Status.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Status.java new file mode 100644 index 00000000..52f034a6 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/Status.java @@ -0,0 +1,289 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Status</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getStatus() + * @model + * @generated + */ +public enum Status implements Enumerator { + /** + * The '<em><b>New</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #NEW_VALUE + * @generated + * @ordered + */ + NEW(1, "New", "NEW"), + + /** + * The '<em><b>Active</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #ACTIVE_VALUE + * @generated + * @ordered + */ + ACTIVE(2, "Active", "ACTIVE"), + + /** + * The '<em><b>Complete</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #COMPLETE_VALUE + * @generated + * @ordered + */ + COMPLETE(3, "Complete", "COMPLETE"), + + /** + * The '<em><b>Deferred</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #DEFERRED_VALUE + * @generated + * @ordered + */ + DEFERRED(4, "Deferred", "DEFERRED"), + + /** + * The '<em><b>Invalid</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #INVALID_VALUE + * @generated + * @ordered + */ + INVALID(5, "Invalid", "INVALID"); + + /** + * The '<em><b>New</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>New</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #NEW + * @model name="New" literal="NEW" + * @generated + * @ordered + */ + public static final int NEW_VALUE = 1; + + /** + * The '<em><b>Active</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Active</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #ACTIVE + * @model name="Active" literal="ACTIVE" + * @generated + * @ordered + */ + public static final int ACTIVE_VALUE = 2; + + /** + * The '<em><b>Complete</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Complete</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #COMPLETE + * @model name="Complete" literal="COMPLETE" + * @generated + * @ordered + */ + public static final int COMPLETE_VALUE = 3; + + /** + * The '<em><b>Deferred</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Deferred</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #DEFERRED + * @model name="Deferred" literal="DEFERRED" + * @generated + * @ordered + */ + public static final int DEFERRED_VALUE = 4; + + /** + * The '<em><b>Invalid</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Invalid</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #INVALID + * @model name="Invalid" literal="INVALID" + * @generated + * @ordered + */ + public static final int INVALID_VALUE = 5; + + /** + * An array of all the '<em><b>Status</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final Status[] VALUES_ARRAY = + new Status[] { + NEW, + ACTIVE, + COMPLETE, + DEFERRED, + INVALID, + }; + + /** + * A public read-only list of all the '<em><b>Status</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<Status> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Status</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static Status get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Status result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Status</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static Status getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Status result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Status</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static Status get(int value) { + switch (value) { + case NEW_VALUE: return NEW; + case ACTIVE_VALUE: return ACTIVE; + case COMPLETE_VALUE: return COMPLETE; + case DEFERRED_VALUE: return DEFERRED; + case INVALID_VALUE: return INVALID; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private Status(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Status diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/TaskCollection.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/TaskCollection.java new file mode 100644 index 00000000..f5148490 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/TaskCollection.java @@ -0,0 +1,97 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Task Collection</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLabel <em>Label</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getTasks <em>Tasks</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLastTaskId <em>Last Task Id</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getTaskCollection() + * @model + * @generated + */ +public interface TaskCollection extends EObject { + /** + * Returns the value of the '<em><b>Label</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Label</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Label</em>' attribute. + * @see #setLabel(String) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getTaskCollection_Label() + * @model required="true" + * @generated + */ + String getLabel(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLabel <em>Label</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Label</em>' attribute. + * @see #getLabel() + * @generated + */ + void setLabel(String value); + + /** + * Returns the value of the '<em><b>Tasks</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Tasks</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Tasks</em>' containment reference list. + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getTaskCollection_Tasks() + * @model containment="true" + * @generated + */ + EList<SimpleTask> getTasks(); + + /** + * Returns the value of the '<em><b>Last Task Id</b></em>' attribute. + * The default value is <code>"0"</code>. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Last Task Id</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Task Id</em>' attribute. + * @see #setLastTaskId(int) + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#getTaskCollection_LastTaskId() + * @model default="0" required="true" + * @generated + */ + int getLastTaskId(); + + /** + * Sets the value of the '{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection#getLastTaskId <em>Last Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Last Task Id</em>' attribute. + * @see #getLastTaskId() + * @generated + */ + void setLastTaskId(int value); + +} // TaskCollection diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/CategoryImpl.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/CategoryImpl.java new file mode 100644 index 00000000..af1bfc88 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/CategoryImpl.java @@ -0,0 +1,217 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.mylyn.reviews.example.emftasks.Category; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Category</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.CategoryImpl#getSummary <em>Summary</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.CategoryImpl#getDescription <em>Description</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class CategoryImpl extends MinimalEObjectImpl.Container implements Category { + /** + * The default value of the '{@link #getSummary() <em>Summary</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSummary() + * @generated + * @ordered + */ + protected static final String SUMMARY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSummary() <em>Summary</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSummary() + * @generated + * @ordered + */ + protected String summary = SUMMARY_EDEFAULT; + + /** + * The default value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected static final String DESCRIPTION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected String description = DESCRIPTION_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected CategoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return EmfTasksPackage.Literals.CATEGORY; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSummary() { + return summary; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSummary(String newSummary) { + String oldSummary = summary; + summary = newSummary; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.CATEGORY__SUMMARY, oldSummary, summary)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getDescription() { + return description; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDescription(String newDescription) { + String oldDescription = description; + description = newDescription; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.CATEGORY__DESCRIPTION, oldDescription, description)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case EmfTasksPackage.CATEGORY__SUMMARY: + return getSummary(); + case EmfTasksPackage.CATEGORY__DESCRIPTION: + return getDescription(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case EmfTasksPackage.CATEGORY__SUMMARY: + setSummary((String)newValue); + return; + case EmfTasksPackage.CATEGORY__DESCRIPTION: + setDescription((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case EmfTasksPackage.CATEGORY__SUMMARY: + setSummary(SUMMARY_EDEFAULT); + return; + case EmfTasksPackage.CATEGORY__DESCRIPTION: + setDescription(DESCRIPTION_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case EmfTasksPackage.CATEGORY__SUMMARY: + return SUMMARY_EDEFAULT == null ? summary != null : !SUMMARY_EDEFAULT.equals(summary); + case EmfTasksPackage.CATEGORY__DESCRIPTION: + return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (summary: "); + result.append(summary); + result.append(", description: "); + result.append(description); + result.append(')'); + return result.toString(); + } + +} //CategoryImpl diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/EmfTasksFactoryImpl.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/EmfTasksFactoryImpl.java new file mode 100644 index 00000000..6cd7e20c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/EmfTasksFactoryImpl.java @@ -0,0 +1,192 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.impl; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +import org.eclipse.mylyn.reviews.example.emftasks.*; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class EmfTasksFactoryImpl extends EFactoryImpl implements EmfTasksFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static EmfTasksFactory init() { + try { + EmfTasksFactory theEmfTasksFactory = (EmfTasksFactory)EPackage.Registry.INSTANCE.getEFactory("http://eclipse.org/mylyn/tasks/emftasks/1.0"); + if (theEmfTasksFactory != null) { + return theEmfTasksFactory; + } + } + catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new EmfTasksFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case EmfTasksPackage.SIMPLE_TASK: return createSimpleTask(); + case EmfTasksPackage.CATEGORY: return createCategory(); + case EmfTasksPackage.TASK_COLLECTION: return createTaskCollection(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) { + switch (eDataType.getClassifierID()) { + case EmfTasksPackage.STATUS: + return createStatusFromString(eDataType, initialValue); + case EmfTasksPackage.PRIORITY: + return createPriorityFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) { + switch (eDataType.getClassifierID()) { + case EmfTasksPackage.STATUS: + return convertStatusToString(eDataType, instanceValue); + case EmfTasksPackage.PRIORITY: + return convertPriorityToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public SimpleTask createSimpleTask() { + SimpleTaskImpl simpleTask = new SimpleTaskImpl(); + return simpleTask; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Category createCategory() { + CategoryImpl category = new CategoryImpl(); + return category; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TaskCollection createTaskCollection() { + TaskCollectionImpl taskCollection = new TaskCollectionImpl(); + return taskCollection; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Status createStatusFromString(EDataType eDataType, String initialValue) { + Status result = Status.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertStatusToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Priority createPriorityFromString(EDataType eDataType, String initialValue) { + Priority result = Priority.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertPriorityToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksPackage getEmfTasksPackage() { + return (EmfTasksPackage)getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static EmfTasksPackage getPackage() { + return EmfTasksPackage.eINSTANCE; + } + +} //EmfTasksFactoryImpl diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/EmfTasksPackageImpl.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/EmfTasksPackageImpl.java new file mode 100644 index 00000000..56527336 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/EmfTasksPackageImpl.java @@ -0,0 +1,460 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.impl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.mylyn.reviews.example.emftasks.Category; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksFactory; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.reviews.example.emftasks.Priority; +import org.eclipse.mylyn.reviews.example.emftasks.SimpleTask; +import org.eclipse.mylyn.reviews.example.emftasks.Status; +import org.eclipse.mylyn.reviews.example.emftasks.TaskCollection; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class EmfTasksPackageImpl extends EPackageImpl implements EmfTasksPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass simpleTaskEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass categoryEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass taskCollectionEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum statusEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum priorityEEnum = null; + + /** + * Creates an instance of the model <b>Package</b>, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + * <p>Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage#eNS_URI + * @see #init() + * @generated + */ + private EmfTasksPackageImpl() { + super(eNS_URI, EmfTasksFactory.eINSTANCE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. + * + * <p>This method is used to initialize {@link EmfTasksPackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static EmfTasksPackage init() { + if (isInited) return (EmfTasksPackage)EPackage.Registry.INSTANCE.getEPackage(EmfTasksPackage.eNS_URI); + + // Obtain or create and register package + EmfTasksPackageImpl theEmfTasksPackage = (EmfTasksPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof EmfTasksPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new EmfTasksPackageImpl()); + + isInited = true; + + // Create package meta-data objects + theEmfTasksPackage.createPackageContents(); + + // Initialize created meta-data + theEmfTasksPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theEmfTasksPackage.freeze(); + + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(EmfTasksPackage.eNS_URI, theEmfTasksPackage); + return theEmfTasksPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getSimpleTask() { + return simpleTaskEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_Id() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_Summary() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_Description() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_Status() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_Priority() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_DueDate() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_CompletionDate() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_CreationDate() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(7); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_ModificationDate() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(8); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_Collaborators() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(9); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_RelatedUrl() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(10); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSimpleTask_Ranking() { + return (EAttribute)simpleTaskEClass.getEStructuralFeatures().get(11); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getSimpleTask_Category() { + return (EReference)simpleTaskEClass.getEStructuralFeatures().get(12); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getCategory() { + return categoryEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getCategory_Summary() { + return (EAttribute)categoryEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getCategory_Description() { + return (EAttribute)categoryEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getTaskCollection() { + return taskCollectionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getTaskCollection_Label() { + return (EAttribute)taskCollectionEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getTaskCollection_Tasks() { + return (EReference)taskCollectionEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getTaskCollection_LastTaskId() { + return (EAttribute)taskCollectionEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EEnum getStatus() { + return statusEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EEnum getPriority() { + return priorityEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksFactory getEmfTasksFactory() { + return (EmfTasksFactory)getEFactoryInstance(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void createPackageContents() { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + simpleTaskEClass = createEClass(SIMPLE_TASK); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__ID); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__SUMMARY); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__DESCRIPTION); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__STATUS); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__PRIORITY); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__DUE_DATE); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__COMPLETION_DATE); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__CREATION_DATE); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__MODIFICATION_DATE); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__COLLABORATORS); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__RELATED_URL); + createEAttribute(simpleTaskEClass, SIMPLE_TASK__RANKING); + createEReference(simpleTaskEClass, SIMPLE_TASK__CATEGORY); + + categoryEClass = createEClass(CATEGORY); + createEAttribute(categoryEClass, CATEGORY__SUMMARY); + createEAttribute(categoryEClass, CATEGORY__DESCRIPTION); + + taskCollectionEClass = createEClass(TASK_COLLECTION); + createEAttribute(taskCollectionEClass, TASK_COLLECTION__LABEL); + createEReference(taskCollectionEClass, TASK_COLLECTION__TASKS); + createEAttribute(taskCollectionEClass, TASK_COLLECTION__LAST_TASK_ID); + + // Create enums + statusEEnum = createEEnum(STATUS); + priorityEEnum = createEEnum(PRIORITY); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void initializePackageContents() { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + + // Initialize classes, features, and operations; add parameters + initEClass(simpleTaskEClass, SimpleTask.class, "SimpleTask", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getSimpleTask_Id(), ecorePackage.getEInt(), "id", null, 1, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_Summary(), ecorePackage.getEString(), "summary", null, 1, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_Description(), ecorePackage.getEString(), "description", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_Status(), this.getStatus(), "status", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_Priority(), this.getPriority(), "priority", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_DueDate(), ecorePackage.getEDate(), "dueDate", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_CompletionDate(), ecorePackage.getEDate(), "completionDate", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_CreationDate(), ecorePackage.getEDate(), "creationDate", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_ModificationDate(), ecorePackage.getEDate(), "modificationDate", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_Collaborators(), ecorePackage.getEString(), "collaborators", null, 0, -1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_RelatedUrl(), ecorePackage.getEString(), "relatedUrl", null, 0, -1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSimpleTask_Ranking(), ecorePackage.getEDouble(), "ranking", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getSimpleTask_Category(), this.getCategory(), null, "category", null, 0, 1, SimpleTask.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(categoryEClass, Category.class, "Category", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getCategory_Summary(), ecorePackage.getEString(), "summary", null, 1, 1, Category.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getCategory_Description(), ecorePackage.getEString(), "description", null, 0, 1, Category.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(taskCollectionEClass, TaskCollection.class, "TaskCollection", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTaskCollection_Label(), ecorePackage.getEString(), "label", null, 1, 1, TaskCollection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTaskCollection_Tasks(), this.getSimpleTask(), null, "tasks", null, 0, -1, TaskCollection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTaskCollection_LastTaskId(), ecorePackage.getEInt(), "lastTaskId", "0", 1, 1, TaskCollection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + // Initialize enums and add enum literals + initEEnum(statusEEnum, Status.class, "Status"); + addEEnumLiteral(statusEEnum, Status.NEW); + addEEnumLiteral(statusEEnum, Status.ACTIVE); + addEEnumLiteral(statusEEnum, Status.COMPLETE); + addEEnumLiteral(statusEEnum, Status.DEFERRED); + addEEnumLiteral(statusEEnum, Status.INVALID); + + initEEnum(priorityEEnum, Priority.class, "Priority"); + addEEnumLiteral(priorityEEnum, Priority.MINOR); + addEEnumLiteral(priorityEEnum, Priority.STANDARD); + addEEnumLiteral(priorityEEnum, Priority.IMPORTANT); + addEEnumLiteral(priorityEEnum, Priority.URGENT); + + // Create resource + createResource(eNS_URI); + } + +} //EmfTasksPackageImpl diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/SimpleTaskImpl.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/SimpleTaskImpl.java new file mode 100644 index 00000000..14c8b1c1 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/SimpleTaskImpl.java @@ -0,0 +1,793 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.impl; + +import java.util.Collection; +import java.util.Date; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EDataTypeUniqueEList; + +import org.eclipse.mylyn.reviews.example.emftasks.Category; +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.reviews.example.emftasks.Priority; +import org.eclipse.mylyn.reviews.example.emftasks.SimpleTask; +import org.eclipse.mylyn.reviews.example.emftasks.Status; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Simple Task</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getId <em>Id</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getSummary <em>Summary</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getDescription <em>Description</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getStatus <em>Status</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getPriority <em>Priority</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getDueDate <em>Due Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getCompletionDate <em>Completion Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getCreationDate <em>Creation Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getModificationDate <em>Modification Date</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getCollaborators <em>Collaborators</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getRelatedUrl <em>Related Url</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getRanking <em>Ranking</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.SimpleTaskImpl#getCategory <em>Category</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class SimpleTaskImpl extends MinimalEObjectImpl.Container implements SimpleTask { + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final int ID_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected int id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getSummary() <em>Summary</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSummary() + * @generated + * @ordered + */ + protected static final String SUMMARY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSummary() <em>Summary</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSummary() + * @generated + * @ordered + */ + protected String summary = SUMMARY_EDEFAULT; + + /** + * The default value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected static final String DESCRIPTION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected String description = DESCRIPTION_EDEFAULT; + + /** + * The default value of the '{@link #getStatus() <em>Status</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStatus() + * @generated + * @ordered + */ + protected static final Status STATUS_EDEFAULT = Status.NEW; + + /** + * The cached value of the '{@link #getStatus() <em>Status</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStatus() + * @generated + * @ordered + */ + protected Status status = STATUS_EDEFAULT; + + /** + * The default value of the '{@link #getPriority() <em>Priority</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPriority() + * @generated + * @ordered + */ + protected static final Priority PRIORITY_EDEFAULT = Priority.MINOR; + + /** + * The cached value of the '{@link #getPriority() <em>Priority</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPriority() + * @generated + * @ordered + */ + protected Priority priority = PRIORITY_EDEFAULT; + + /** + * The default value of the '{@link #getDueDate() <em>Due Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDueDate() + * @generated + * @ordered + */ + protected static final Date DUE_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDueDate() <em>Due Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDueDate() + * @generated + * @ordered + */ + protected Date dueDate = DUE_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getCompletionDate() <em>Completion Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCompletionDate() + * @generated + * @ordered + */ + protected static final Date COMPLETION_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCompletionDate() <em>Completion Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCompletionDate() + * @generated + * @ordered + */ + protected Date completionDate = COMPLETION_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getCreationDate() <em>Creation Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCreationDate() + * @generated + * @ordered + */ + protected static final Date CREATION_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCreationDate() <em>Creation Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCreationDate() + * @generated + * @ordered + */ + protected Date creationDate = CREATION_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getModificationDate() <em>Modification Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getModificationDate() + * @generated + * @ordered + */ + protected static final Date MODIFICATION_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getModificationDate() <em>Modification Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getModificationDate() + * @generated + * @ordered + */ + protected Date modificationDate = MODIFICATION_DATE_EDEFAULT; + + /** + * The cached value of the '{@link #getCollaborators() <em>Collaborators</em>}' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCollaborators() + * @generated + * @ordered + */ + protected EList<String> collaborators; + + /** + * The cached value of the '{@link #getRelatedUrl() <em>Related Url</em>}' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelatedUrl() + * @generated + * @ordered + */ + protected EList<String> relatedUrl; + + /** + * The default value of the '{@link #getRanking() <em>Ranking</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRanking() + * @generated + * @ordered + */ + protected static final double RANKING_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getRanking() <em>Ranking</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRanking() + * @generated + * @ordered + */ + protected double ranking = RANKING_EDEFAULT; + + /** + * The cached value of the '{@link #getCategory() <em>Category</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCategory() + * @generated + * @ordered + */ + protected Category category; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SimpleTaskImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return EmfTasksPackage.Literals.SIMPLE_TASK; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setId(int newId) { + int oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__ID, oldId, id)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSummary() { + return summary; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSummary(String newSummary) { + String oldSummary = summary; + summary = newSummary; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__SUMMARY, oldSummary, summary)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getDescription() { + return description; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDescription(String newDescription) { + String oldDescription = description; + description = newDescription; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__DESCRIPTION, oldDescription, description)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Status getStatus() { + return status; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setStatus(Status newStatus) { + Status oldStatus = status; + status = newStatus == null ? STATUS_EDEFAULT : newStatus; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__STATUS, oldStatus, status)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Priority getPriority() { + return priority; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPriority(Priority newPriority) { + Priority oldPriority = priority; + priority = newPriority == null ? PRIORITY_EDEFAULT : newPriority; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__PRIORITY, oldPriority, priority)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Date getDueDate() { + return dueDate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDueDate(Date newDueDate) { + Date oldDueDate = dueDate; + dueDate = newDueDate; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__DUE_DATE, oldDueDate, dueDate)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Date getCompletionDate() { + return completionDate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCompletionDate(Date newCompletionDate) { + Date oldCompletionDate = completionDate; + completionDate = newCompletionDate; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__COMPLETION_DATE, oldCompletionDate, completionDate)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Date getCreationDate() { + return creationDate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCreationDate(Date newCreationDate) { + Date oldCreationDate = creationDate; + creationDate = newCreationDate; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__CREATION_DATE, oldCreationDate, creationDate)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Date getModificationDate() { + return modificationDate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setModificationDate(Date newModificationDate) { + Date oldModificationDate = modificationDate; + modificationDate = newModificationDate; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__MODIFICATION_DATE, oldModificationDate, modificationDate)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<String> getCollaborators() { + if (collaborators == null) { + collaborators = new EDataTypeUniqueEList<String>(String.class, this, EmfTasksPackage.SIMPLE_TASK__COLLABORATORS); + } + return collaborators; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<String> getRelatedUrl() { + if (relatedUrl == null) { + relatedUrl = new EDataTypeUniqueEList<String>(String.class, this, EmfTasksPackage.SIMPLE_TASK__RELATED_URL); + } + return relatedUrl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getRanking() { + return ranking; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRanking(double newRanking) { + double oldRanking = ranking; + ranking = newRanking; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__RANKING, oldRanking, ranking)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Category getCategory() { + if (category != null && category.eIsProxy()) { + InternalEObject oldCategory = (InternalEObject)category; + category = (Category)eResolveProxy(oldCategory); + if (category != oldCategory) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, EmfTasksPackage.SIMPLE_TASK__CATEGORY, oldCategory, category)); + } + } + return category; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Category basicGetCategory() { + return category; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCategory(Category newCategory) { + Category oldCategory = category; + category = newCategory; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.SIMPLE_TASK__CATEGORY, oldCategory, category)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case EmfTasksPackage.SIMPLE_TASK__ID: + return getId(); + case EmfTasksPackage.SIMPLE_TASK__SUMMARY: + return getSummary(); + case EmfTasksPackage.SIMPLE_TASK__DESCRIPTION: + return getDescription(); + case EmfTasksPackage.SIMPLE_TASK__STATUS: + return getStatus(); + case EmfTasksPackage.SIMPLE_TASK__PRIORITY: + return getPriority(); + case EmfTasksPackage.SIMPLE_TASK__DUE_DATE: + return getDueDate(); + case EmfTasksPackage.SIMPLE_TASK__COMPLETION_DATE: + return getCompletionDate(); + case EmfTasksPackage.SIMPLE_TASK__CREATION_DATE: + return getCreationDate(); + case EmfTasksPackage.SIMPLE_TASK__MODIFICATION_DATE: + return getModificationDate(); + case EmfTasksPackage.SIMPLE_TASK__COLLABORATORS: + return getCollaborators(); + case EmfTasksPackage.SIMPLE_TASK__RELATED_URL: + return getRelatedUrl(); + case EmfTasksPackage.SIMPLE_TASK__RANKING: + return getRanking(); + case EmfTasksPackage.SIMPLE_TASK__CATEGORY: + if (resolve) return getCategory(); + return basicGetCategory(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case EmfTasksPackage.SIMPLE_TASK__ID: + setId((Integer)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__SUMMARY: + setSummary((String)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__DESCRIPTION: + setDescription((String)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__STATUS: + setStatus((Status)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__PRIORITY: + setPriority((Priority)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__DUE_DATE: + setDueDate((Date)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__COMPLETION_DATE: + setCompletionDate((Date)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__CREATION_DATE: + setCreationDate((Date)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__MODIFICATION_DATE: + setModificationDate((Date)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__COLLABORATORS: + getCollaborators().clear(); + getCollaborators().addAll((Collection<? extends String>)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__RELATED_URL: + getRelatedUrl().clear(); + getRelatedUrl().addAll((Collection<? extends String>)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__RANKING: + setRanking((Double)newValue); + return; + case EmfTasksPackage.SIMPLE_TASK__CATEGORY: + setCategory((Category)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case EmfTasksPackage.SIMPLE_TASK__ID: + setId(ID_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__SUMMARY: + setSummary(SUMMARY_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__DESCRIPTION: + setDescription(DESCRIPTION_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__STATUS: + setStatus(STATUS_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__PRIORITY: + setPriority(PRIORITY_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__DUE_DATE: + setDueDate(DUE_DATE_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__COMPLETION_DATE: + setCompletionDate(COMPLETION_DATE_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__CREATION_DATE: + setCreationDate(CREATION_DATE_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__MODIFICATION_DATE: + setModificationDate(MODIFICATION_DATE_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__COLLABORATORS: + getCollaborators().clear(); + return; + case EmfTasksPackage.SIMPLE_TASK__RELATED_URL: + getRelatedUrl().clear(); + return; + case EmfTasksPackage.SIMPLE_TASK__RANKING: + setRanking(RANKING_EDEFAULT); + return; + case EmfTasksPackage.SIMPLE_TASK__CATEGORY: + setCategory((Category)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case EmfTasksPackage.SIMPLE_TASK__ID: + return id != ID_EDEFAULT; + case EmfTasksPackage.SIMPLE_TASK__SUMMARY: + return SUMMARY_EDEFAULT == null ? summary != null : !SUMMARY_EDEFAULT.equals(summary); + case EmfTasksPackage.SIMPLE_TASK__DESCRIPTION: + return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description); + case EmfTasksPackage.SIMPLE_TASK__STATUS: + return status != STATUS_EDEFAULT; + case EmfTasksPackage.SIMPLE_TASK__PRIORITY: + return priority != PRIORITY_EDEFAULT; + case EmfTasksPackage.SIMPLE_TASK__DUE_DATE: + return DUE_DATE_EDEFAULT == null ? dueDate != null : !DUE_DATE_EDEFAULT.equals(dueDate); + case EmfTasksPackage.SIMPLE_TASK__COMPLETION_DATE: + return COMPLETION_DATE_EDEFAULT == null ? completionDate != null : !COMPLETION_DATE_EDEFAULT.equals(completionDate); + case EmfTasksPackage.SIMPLE_TASK__CREATION_DATE: + return CREATION_DATE_EDEFAULT == null ? creationDate != null : !CREATION_DATE_EDEFAULT.equals(creationDate); + case EmfTasksPackage.SIMPLE_TASK__MODIFICATION_DATE: + return MODIFICATION_DATE_EDEFAULT == null ? modificationDate != null : !MODIFICATION_DATE_EDEFAULT.equals(modificationDate); + case EmfTasksPackage.SIMPLE_TASK__COLLABORATORS: + return collaborators != null && !collaborators.isEmpty(); + case EmfTasksPackage.SIMPLE_TASK__RELATED_URL: + return relatedUrl != null && !relatedUrl.isEmpty(); + case EmfTasksPackage.SIMPLE_TASK__RANKING: + return ranking != RANKING_EDEFAULT; + case EmfTasksPackage.SIMPLE_TASK__CATEGORY: + return category != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (id: "); + result.append(id); + result.append(", summary: "); + result.append(summary); + result.append(", description: "); + result.append(description); + result.append(", status: "); + result.append(status); + result.append(", priority: "); + result.append(priority); + result.append(", dueDate: "); + result.append(dueDate); + result.append(", completionDate: "); + result.append(completionDate); + result.append(", creationDate: "); + result.append(creationDate); + result.append(", modificationDate: "); + result.append(modificationDate); + result.append(", collaborators: "); + result.append(collaborators); + result.append(", relatedUrl: "); + result.append(relatedUrl); + result.append(", ranking: "); + result.append(ranking); + result.append(')'); + return result.toString(); + } + +} //SimpleTaskImpl diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/TaskCollectionImpl.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/TaskCollectionImpl.java new file mode 100644 index 00000000..589e0459 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/impl/TaskCollectionImpl.java @@ -0,0 +1,276 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage; +import org.eclipse.mylyn.reviews.example.emftasks.SimpleTask; +import org.eclipse.mylyn.reviews.example.emftasks.TaskCollection; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Task Collection</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.TaskCollectionImpl#getLabel <em>Label</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.TaskCollectionImpl#getTasks <em>Tasks</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.example.emftasks.impl.TaskCollectionImpl#getLastTaskId <em>Last Task Id</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class TaskCollectionImpl extends MinimalEObjectImpl.Container implements TaskCollection { + /** + * The default value of the '{@link #getLabel() <em>Label</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLabel() + * @generated + * @ordered + */ + protected static final String LABEL_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLabel() + * @generated + * @ordered + */ + protected String label = LABEL_EDEFAULT; + + /** + * The cached value of the '{@link #getTasks() <em>Tasks</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTasks() + * @generated + * @ordered + */ + protected EList<SimpleTask> tasks; + + /** + * The default value of the '{@link #getLastTaskId() <em>Last Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastTaskId() + * @generated + * @ordered + */ + protected static final int LAST_TASK_ID_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getLastTaskId() <em>Last Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastTaskId() + * @generated + * @ordered + */ + protected int lastTaskId = LAST_TASK_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TaskCollectionImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return EmfTasksPackage.Literals.TASK_COLLECTION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLabel() { + return label; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLabel(String newLabel) { + String oldLabel = label; + label = newLabel; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.TASK_COLLECTION__LABEL, oldLabel, label)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<SimpleTask> getTasks() { + if (tasks == null) { + tasks = new EObjectContainmentEList<SimpleTask>(SimpleTask.class, this, EmfTasksPackage.TASK_COLLECTION__TASKS); + } + return tasks; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getLastTaskId() { + return lastTaskId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLastTaskId(int newLastTaskId) { + int oldLastTaskId = lastTaskId; + lastTaskId = newLastTaskId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EmfTasksPackage.TASK_COLLECTION__LAST_TASK_ID, oldLastTaskId, lastTaskId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case EmfTasksPackage.TASK_COLLECTION__TASKS: + return ((InternalEList<?>)getTasks()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case EmfTasksPackage.TASK_COLLECTION__LABEL: + return getLabel(); + case EmfTasksPackage.TASK_COLLECTION__TASKS: + return getTasks(); + case EmfTasksPackage.TASK_COLLECTION__LAST_TASK_ID: + return getLastTaskId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case EmfTasksPackage.TASK_COLLECTION__LABEL: + setLabel((String)newValue); + return; + case EmfTasksPackage.TASK_COLLECTION__TASKS: + getTasks().clear(); + getTasks().addAll((Collection<? extends SimpleTask>)newValue); + return; + case EmfTasksPackage.TASK_COLLECTION__LAST_TASK_ID: + setLastTaskId((Integer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case EmfTasksPackage.TASK_COLLECTION__LABEL: + setLabel(LABEL_EDEFAULT); + return; + case EmfTasksPackage.TASK_COLLECTION__TASKS: + getTasks().clear(); + return; + case EmfTasksPackage.TASK_COLLECTION__LAST_TASK_ID: + setLastTaskId(LAST_TASK_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case EmfTasksPackage.TASK_COLLECTION__LABEL: + return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label); + case EmfTasksPackage.TASK_COLLECTION__TASKS: + return tasks != null && !tasks.isEmpty(); + case EmfTasksPackage.TASK_COLLECTION__LAST_TASK_ID: + return lastTaskId != LAST_TASK_ID_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (label: "); + result.append(label); + result.append(", lastTaskId: "); + result.append(lastTaskId); + result.append(')'); + return result.toString(); + } + +} //TaskCollectionImpl diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/util/EmfTasksAdapterFactory.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/util/EmfTasksAdapterFactory.java new file mode 100644 index 00000000..2bf027fd --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/util/EmfTasksAdapterFactory.java @@ -0,0 +1,156 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.util; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.mylyn.reviews.example.emftasks.*; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage + * @generated + */ +public class EmfTasksAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static EmfTasksPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksAdapterFactory() { + if (modelPackage == null) { + modelPackage = EmfTasksPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EmfTasksSwitch<Adapter> modelSwitch = + new EmfTasksSwitch<Adapter>() { + @Override + public Adapter caseSimpleTask(SimpleTask object) { + return createSimpleTaskAdapter(); + } + @Override + public Adapter caseCategory(Category object) { + return createCategoryAdapter(); + } + @Override + public Adapter caseTaskCollection(TaskCollection object) { + return createTaskCollectionAdapter(); + } + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject)target); + } + + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.mylyn.reviews.example.emftasks.SimpleTask <em>Simple Task</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.mylyn.reviews.example.emftasks.SimpleTask + * @generated + */ + public Adapter createSimpleTaskAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.mylyn.reviews.example.emftasks.Category <em>Category</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.mylyn.reviews.example.emftasks.Category + * @generated + */ + public Adapter createCategoryAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.mylyn.reviews.example.emftasks.TaskCollection <em>Task Collection</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.mylyn.reviews.example.emftasks.TaskCollection + * @generated + */ + public Adapter createTaskCollectionAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //EmfTasksAdapterFactory diff --git a/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/util/EmfTasksSwitch.java b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/util/EmfTasksSwitch.java new file mode 100644 index 00000000..07f204f8 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.model/src/org/eclipse/mylyn/reviews/example/emftasks/util/EmfTasksSwitch.java @@ -0,0 +1,152 @@ +/** + */ +package org.eclipse.mylyn.reviews.example.emftasks.util; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +import org.eclipse.mylyn.reviews.example.emftasks.*; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see org.eclipse.mylyn.reviews.example.emftasks.EmfTasksPackage + * @generated + */ +public class EmfTasksSwitch<T> extends Switch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static EmfTasksPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EmfTasksSwitch() { + if (modelPackage == null) { + modelPackage = EmfTasksPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @parameter ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case EmfTasksPackage.SIMPLE_TASK: { + SimpleTask simpleTask = (SimpleTask)theEObject; + T result = caseSimpleTask(simpleTask); + if (result == null) result = defaultCase(theEObject); + return result; + } + case EmfTasksPackage.CATEGORY: { + Category category = (Category)theEObject; + T result = caseCategory(category); + if (result == null) result = defaultCase(theEObject); + return result; + } + case EmfTasksPackage.TASK_COLLECTION: { + TaskCollection taskCollection = (TaskCollection)theEObject; + T result = caseTaskCollection(taskCollection); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Simple Task</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Simple Task</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSimpleTask(SimpleTask object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Category</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Category</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCategory(Category object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Task Collection</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Task Collection</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTaskCollection(TaskCollection object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //EmfTasksSwitch diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.classpath b/org.eclipse.mylyn.reviews.example.emftasks.ui/.classpath new file mode 100644 index 00000000..ad32c83a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.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/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.project b/org.eclipse.mylyn.reviews.example.emftasks.ui/.project new file mode 100644 index 00000000..b002ed87 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.project @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.mylyn.reviews.example.emftasks.ui</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> + <buildCommand> + <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature> + </natures> +</projectDescription> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 00000000..5a0ad22d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.core.runtime.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +line.separator=\n diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000..3b0b4b04 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,353 @@ +#Thu Mar 10 01:21:05 PST 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.codeComplete.argumentPrefixes= +org.eclipse.jdt.core.codeComplete.argumentSuffixes= +org.eclipse.jdt.core.codeComplete.fieldPrefixes= +org.eclipse.jdt.core.codeComplete.fieldSuffixes= +org.eclipse.jdt.core.codeComplete.localPrefixes= +org.eclipse.jdt.core.codeComplete.localSuffixes= +org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= +org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=error +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled +org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL +org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=1 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +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=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=false +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=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert +org.eclipse.jdt.core.formatter.comment.line_length=120 +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=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +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=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=do not 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=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_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_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=true +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=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=true +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=true +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=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_outer_expressions_when_nested=true diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000..d92dfc1c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,63 @@ +#Wed Mar 02 16:00:08 PST 2011 +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_Mylyn based on Eclipse +formatter_settings_version=12 +internal.default.compliance=default +org.eclipse.jdt.ui.exception.name=e +org.eclipse.jdt.ui.gettersetter.use.is=true +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.keywordthis=false +org.eclipse.jdt.ui.overrideannotation=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">/**\r\n * @return the ${bare_field_name}\r\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">/**\r\n * @param ${param} the ${bare_field_name} to set\r\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">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\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">/**\r\n * @author ${user}\r\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">/**\r\n * \r\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">/**\r\n * ${tags}\r\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\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\r\n * Copyright (c) ${year} Tasktop Technologies and others.\r\n * All rights reserved. This program and the accompanying materials\r\n * are made available under the terms of the Eclipse Public License v1.0\r\n * which accompanies this distribution, and is available at\r\n * http\://www.eclipse.org/legal/epl-v10.html\r\n *\r\n * Contributors\:\r\n * Tasktop Technologies - initial API and implementation\r\n *******************************************************************************/\r\n\r\n${package_declaration}\r\n\r\n${typecomment}\r\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">\r\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">\r\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">\r\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">\r\n</template><template autoinsert\="false" 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\r\n${exception_var}.printStackTrace();</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ignore\r\n${body_statement}</template><template autoinsert\="false" 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}\r\n// ignore</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><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">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * @return the ${bare_field_name}\r\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * @param ${param} the ${bare_field_name} to set\r\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created JavaScript files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\r\n * @author ${user}\r\n *\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for vars" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding function" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Jsdoc)\r\n * ${see_to_overridden}\r\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate functions" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\r\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created function stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated function stub\r\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.wst.jsdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\r\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.wst.jsdt.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.wst.jsdt.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_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=true +sp_cleanup.correct_indentation=true +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_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=true +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +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=true +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=true +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/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.ltk.core.refactoring.prefs b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.ltk.core.refactoring.prefs new file mode 100644 index 00000000..5e7f2bd4 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.ltk.core.refactoring.prefs @@ -0,0 +1,3 @@ +#Tue Aug 18 22:42:26 PDT 2009 +eclipse.preferences.version=1 +org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.mylyn.tasks.ui.prefs new file mode 100644 index 00000000..d8c6d26a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.mylyn.tasks.ui.prefs @@ -0,0 +1,4 @@ +#Mon Jun 25 03:02:37 GMT 2007 +eclipse.preferences.version=1 +project.repository.kind=bugzilla +project.repository.url=https\://bugs.eclipse.org/bugs diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.mylyn.team.ui.prefs new file mode 100644 index 00000000..10d0afb9 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.mylyn.team.ui.prefs @@ -0,0 +1,2 @@ +commit.comment.template=${task.key}\: ${task.description}\n\nTask-Url\: ${task.url} +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.pde.prefs b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.pde.prefs new file mode 100644 index 00000000..e8f2d562 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/.settings/org.eclipse.pde.prefs @@ -0,0 +1,18 @@ +#Tue Apr 15 11:07:59 PDT 2008 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=2 +compilers.p.missing-bundle-classpath-entries=1 +compilers.p.missing-packages=1 +compilers.p.no-required-att=0 +compilers.p.not-externalized-att=2 +compilers.p.unknown-attribute=0 +compilers.p.unknown-class=0 +compilers.p.unknown-element=0 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=0 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=0 +compilers.use-project=true +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.example.emftasks.ui/META-INF/MANIFEST.MF new file mode 100644 index 00000000..fe724e45 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/META-INF/MANIFEST.MF @@ -0,0 +1,34 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Mylyn Emf Example Connector UI +Bundle-SymbolicName: org.eclipse.mylyn.reviews.example.emftasks.ui;singleton:=true +Bundle-Version: 0.13.0.qualifier +Bundle-Activator: org.eclipse.mylyn.internal.reviews.example.emftasks.ui.EmfExampleUiPlugin +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.core.resources, + org.eclipse.mylyn.commons.core, + org.eclipse.mylyn.commons.net, + org.eclipse.mylyn.commons.ui, + org.eclipse.mylyn.commons.workbench, + org.eclipse.mylyn.tasks.core, + org.eclipse.mylyn.tasks.ui, + org.eclipse.jface, + org.eclipse.jface.text, + org.eclipse.compare, + org.eclipse.ui, + org.eclipse.ui.editors, + org.eclipse.ui.forms, + org.eclipse.ui.workbench.texteditor, + org.eclipse.emf.ecore, + org.eclipse.mylyn.commons.net, + org.eclipse.mylyn.tasks.ui, + org.eclipse.mylyn.reviews.connector, + org.eclipse.mylyn.reviews.example.emftasks.core, + org.eclipse.mylyn.reviews.example.emftasks.model, + org.eclipse.mylyn.reviews.connector.ui, + org.eclipse.mylyn.reviews.example.emftasks.model.editor +Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-Vendor: Eclipse Mylyn +Export-Package: org.eclipse.mylyn.internal.reviews.example.emftasks.ui;x-internal:=true, + org.eclipse.mylyn.internal.reviews.example.emftasks.ui.editor;x-internal:=true diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/about.html b/org.eclipse.mylyn.reviews.example.emftasks.ui/about.html new file mode 100644 index 00000000..d774b07c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/about.html @@ -0,0 +1,27 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> +<html> +<head> +<title>About</title> +<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1"> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 25, 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</a>.</p> + +</body> +</html>
\ No newline at end of file diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/build.properties b/org.eclipse.mylyn.reviews.example.emftasks.ui/build.properties new file mode 100644 index 00000000..461e5612 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/build.properties @@ -0,0 +1,8 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + plugin.xml,\ + icons/,\ + about.html +src.includes = about.html diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/icons/obj16/Ecore.png b/org.eclipse.mylyn.reviews.example.emftasks.ui/icons/obj16/Ecore.png Binary files differnew file mode 100644 index 00000000..30c5c10c --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/icons/obj16/Ecore.png diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/icons/obj16/EcoreOverlay.png b/org.eclipse.mylyn.reviews.example.emftasks.ui/icons/obj16/EcoreOverlay.png Binary files differnew file mode 100644 index 00000000..b520987f --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/icons/obj16/EcoreOverlay.png diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/plugin.xml b/org.eclipse.mylyn.reviews.example.emftasks.ui/plugin.xml new file mode 100644 index 00000000..499f1262 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/plugin.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.4"?> +<plugin> + <extension + point="org.eclipse.mylyn.tasks.ui.repositories"> + <connectorCore + id="org.eclipse.mylyn.emf.example" + class="org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleConnector" + name="Emf Example Tasks"/> + <connectorUi + brandingIcon="icons/obj16/Ecore.png" + class="org.eclipse.mylyn.internal.reviews.example.emftasks.ui.EmfExampleConnectorUi" + id="org.eclipse.mylyn.tasks.example.emf" + name="Emf Example Tasks" + overlayIcon="icons/obj16/EcoreOverlay.png"/> + </extension> + + + <extension + point="org.eclipse.mylyn.tasks.ui.editors"> + <pageFactory + class="org.eclipse.mylyn.internal.reviews.example.emftasks.ui.editor.EmfExampleEditorPageFactory" + id="org.eclipse.mylyn.reviews.r4e.connector.ui.pageFactory"> + </pageFactory> + </extension> +</plugin> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/pom.xml b/org.eclipse.mylyn.reviews.example.emftasks.ui/pom.xml new file mode 100644 index 00000000..7b94feaa --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/pom.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>org.eclipse.mylyn.reviews.r4e-parent</artifactId> + <groupId>org.eclipse.mylyn.reviews.r4e</groupId> + <version>0.13.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.mylyn.reviews.example.emftasks.ui</artifactId> + <version>0.13.0-SNAPSHOT</version> + <packaging>eclipse-plugin</packaging> + <build> + <plugins> + <plugin> + <groupId>org.eclipse.tycho</groupId> + <artifactId>tycho-source-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleConnectorUi.java b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleConnectorUi.java new file mode 100644 index 00000000..566a47de --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleConnectorUi.java @@ -0,0 +1,113 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.ui; + +import org.eclipse.core.runtime.IPath; +import org.eclipse.jface.resource.ImageDescriptor; +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.jface.wizard.IWizard; +import org.eclipse.jface.wizard.WizardDialog; +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleCorePlugin; +import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector; +import org.eclipse.mylyn.reviews.connector.ui.AbstractEmfConnectorUi; +import org.eclipse.mylyn.reviews.connector.ui.EmfRepositorySettingsPage; +import org.eclipse.mylyn.reviews.connector.ui.wizards.EmfRepositoryQueryPage; +import org.eclipse.mylyn.reviews.example.emftasks.presentation.EmfTasksModelWizard; +import org.eclipse.mylyn.tasks.core.IRepositoryQuery; +import org.eclipse.mylyn.tasks.core.ITask; +import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.eclipse.mylyn.tasks.ui.wizards.ITaskRepositoryPage; +import org.eclipse.mylyn.tasks.ui.wizards.ITaskSearchPage; +import org.eclipse.mylyn.tasks.ui.wizards.RepositoryQueryWizard; +import org.eclipse.swt.SWT; +import org.eclipse.swt.widgets.Shell; + +/** + * Connector specific UI for R4E. + * + * @author Miles Parker + */ +public class EmfExampleConnectorUi extends AbstractEmfConnectorUi { + + public static final String[] FILE_NAME_EXTENSIONS = new String[] { "*.emftasks" }; + + class InnerEmfRepositorySettingsPage extends EmfRepositorySettingsPage { + + public InnerEmfRepositorySettingsPage(TaskRepository taskRepository) { + super("Emf Example Repository Settings", "Connect to a Repository File", taskRepository); + } + + @Override + public AbstractEmfConnectorUi getConnectorUi() { + return EmfExampleConnectorUi.this; + } + + } + + class InnerQueryPage extends EmfRepositoryQueryPage { + + public InnerQueryPage(TaskRepository repository, IRepositoryQuery query) { + super(repository, "Emf Example Query", query); + } + + @Override + public AbstractEmfConnector getConnector() { + return EmfExampleConnectorUi.this.getConnector(); + } + + } + + @Override + public ITaskRepositoryPage getSettingsPage(TaskRepository taskRepository) { + return new InnerEmfRepositorySettingsPage(taskRepository); + } + + @Override + public IWizard getQueryWizard(TaskRepository repository, IRepositoryQuery query) { + RepositoryQueryWizard wizard = new RepositoryQueryWizard(repository); + wizard.addPage(new InnerQueryPage(repository, query)); + return wizard; + } + + @Override + public ITaskSearchPage getSearchPage(TaskRepository repository, IStructuredSelection selection) { + return new InnerQueryPage(repository, null); + } + + @Override + public ImageDescriptor getTaskKindOverlay(ITask task) { + return EmfExampleImages.ECORE_OVERLAY; + } + + @Override + public AbstractEmfConnector getConnector() { + return EmfExampleCorePlugin.getDefault().getConnector(); + } + + @Override + public String[] getFileNameExtensions() { + return FILE_NAME_EXTENSIONS; + } + + @Override + public IPath createNewRepository(Shell parent) { + EmfTasksModelWizard wizard = new EmfTasksModelWizard(); + WizardDialog dialog = new WizardDialog(parent, wizard); + int open = dialog.open(); + if (open != SWT.CANCEL && wizard.getModelFile() != null) { + return wizard.getModelFile().getFullPath(); + } + return null; + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleImages.java b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleImages.java new file mode 100644 index 00000000..151b14df --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleImages.java @@ -0,0 +1,46 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.ui; + +import java.net.MalformedURLException; +import java.net.URL; + +import org.eclipse.jface.resource.ImageDescriptor; + +/** + * @author Miles Parker + */ +public class EmfExampleImages { + + private static final URL baseURL = EmfExampleUiPlugin.getDefault().getBundle().getEntry("/icons/"); //$NON-NLS-1$ + + public static final ImageDescriptor ECORE_OVERLAY = create("eview16/EcoreOverlay.png"); //$NON-NLS-1$ + + public static final ImageDescriptor ECORE = create("obj16/Ecore.png"); //$NON-NLS-1$ + + private static ImageDescriptor create(String path) { + try { + return ImageDescriptor.createFromURL(makeIconFileURL(path)); + } catch (MalformedURLException e) { + return ImageDescriptor.getMissingImageDescriptor(); + } + } + + private static URL makeIconFileURL(String path) throws MalformedURLException { + if (baseURL == null) { + throw new MalformedURLException(); + } + return new URL(baseURL, path); + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleUiPlugin.java b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleUiPlugin.java new file mode 100644 index 00000000..a8b505a5 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleUiPlugin.java @@ -0,0 +1,59 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.ui; + +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.osgi.framework.BundleContext; + +/** + * The activator class controls the plug-in life cycle. + * + * @author Miles Parker + */ +public class EmfExampleUiPlugin extends AbstractUIPlugin { + + public static final String PLUGIN_ID = "org.eclipse.mylyn.reviews.example.emftasks.connector.ui"; //$NON-NLS-1$ + + private static EmfExampleUiPlugin plugin; + + private EmfExampleConnectorUi ui; + + public EmfExampleUiPlugin() { + } + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + plugin = this; + } + + @Override + public void stop(BundleContext context) throws Exception { + plugin = null; + super.stop(context); + } + + /** + * Returns the shared instance. + * + * @return the shared instance + */ + public static EmfExampleUiPlugin getDefault() { + return plugin; + } + + public EmfExampleConnectorUi getConnectorUi() { + return ui; + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleUrlHandler.java b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleUrlHandler.java new file mode 100644 index 00000000..bc8443ed --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleUrlHandler.java @@ -0,0 +1,29 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.ui; + +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleCorePlugin; +import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector; +import org.eclipse.mylyn.reviews.connector.ui.EmfUrlHandler; + +/** + * @author Miles Parker + */ +public class EmfExampleUrlHandler extends EmfUrlHandler { + + @Override + protected AbstractEmfConnector getEmfConnector() { + return EmfExampleCorePlugin.getDefault().getConnector(); + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfExampleEditorPageFactory.java b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfExampleEditorPageFactory.java new file mode 100644 index 00000000..0d3ad66e --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfExampleEditorPageFactory.java @@ -0,0 +1,56 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.ui.editor; + +import org.eclipse.mylyn.commons.ui.CommonImages; +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleConnector; +import org.eclipse.mylyn.tasks.ui.TasksUiImages; +import org.eclipse.mylyn.tasks.ui.TasksUiUtil; +import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPageFactory; +import org.eclipse.mylyn.tasks.ui.editors.TaskEditor; +import org.eclipse.mylyn.tasks.ui.editors.TaskEditorInput; +import org.eclipse.swt.graphics.Image; +import org.eclipse.ui.forms.editor.IFormPage; + +/** + * @author Miles Parker + */ +public class EmfExampleEditorPageFactory extends AbstractTaskEditorPageFactory { + + @Override + public boolean canCreatePageFor(TaskEditorInput input) { + return (input.getTask().getConnectorKind().equals(EmfExampleConnector.CONNECTOR_KIND)) + || (TasksUiUtil.isOutgoingNewTask(input.getTask(), EmfExampleConnector.CONNECTOR_KIND)); + } + + @Override + public IFormPage createPage(TaskEditor parentEditor) { + return new EmfTaskEditorPage(parentEditor); + } + + @Override + public Image getPageImage() { + return CommonImages.getImage(TasksUiImages.REPOSITORY_SMALL); + } + + @Override + public String getPageText() { + return "Emf Task"; + } + + @Override + public int getPriority() { + return PRIORITY_TASK; + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfExampleTaskEditorSection.java b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfExampleTaskEditorSection.java new file mode 100644 index 00000000..da451045 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfExampleTaskEditorSection.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ + +package org.eclipse.mylyn.internal.reviews.example.emftasks.ui.editor; + +import org.eclipse.mylyn.internal.tasks.ui.editors.AbstractTaskEditorSection; +import org.eclipse.mylyn.tasks.core.ITask; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.ui.forms.widgets.FormToolkit; + +/** + * @author Miles Parker + */ +public class EmfExampleTaskEditorSection extends AbstractTaskEditorSection { + + private Composite composite; + + public EmfExampleTaskEditorSection() { + setPartName("Review"); + } + + @Override + protected Control createContent(FormToolkit toolkit, Composite parent) { + composite = toolkit.createComposite(parent); + return composite; + } + + @Override + protected boolean shouldExpandOnCreate() { + return true; + } + + protected Shell getShell() { + return getTaskEditorPage().getSite().getShell(); + } + + protected ITask getTask() { + return getTaskEditorPage().getTask(); + } +} diff --git a/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfTaskEditorPage.java b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfTaskEditorPage.java new file mode 100644 index 00000000..7b402a9a --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/editor/EmfTaskEditorPage.java @@ -0,0 +1,47 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson AB and others. + * + * 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 + * + * Description: + * + * Contributors: + * Miles Parker, Tasktop Technologies - Initial API and Implementation + *******************************************************************************/ +package org.eclipse.mylyn.internal.reviews.example.emftasks.ui.editor; + +import org.eclipse.mylyn.internal.reviews.example.emftasks.core.EmfExampleConnector; +import org.eclipse.mylyn.tasks.core.data.TaskAttribute; +import org.eclipse.mylyn.tasks.ui.editors.AbstractAttributeEditor; +import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPage; +import org.eclipse.mylyn.tasks.ui.editors.AttributeEditorFactory; +import org.eclipse.mylyn.tasks.ui.editors.TaskEditor; + +/** + * @author Miles Parker + */ +public class EmfTaskEditorPage extends AbstractTaskEditorPage { + + public EmfTaskEditorPage(TaskEditor editor) { + super(editor, EmfExampleConnector.CONNECTOR_KIND); + setNeedsPrivateSection(true); + } + + @Override + protected AttributeEditorFactory createAttributeEditorFactory() { + return new AttributeEditorFactory(getModel(), getTaskRepository(), getEditorSite()) { + @Override + public AbstractAttributeEditor createEditor(String type, TaskAttribute taskAttribute) { + try { + return super.createEditor(type, taskAttribute); + } catch (IllegalArgumentException e) { + //ignore + } + return null; + } + }; + } +} diff --git a/org.eclipse.mylyn.reviews.example.feature/.project b/org.eclipse.mylyn.reviews.example.feature/.project new file mode 100644 index 00000000..041d3e79 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/.project @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.mylyn.reviews.example.emftasks-feature</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.pde.FeatureBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.FeatureNature</nature> + </natures> +</projectDescription> diff --git a/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 00000000..5a0ad22d --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.core.runtime.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +line.separator=\n diff --git a/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.mylyn.tasks.ui.prefs new file mode 100644 index 00000000..47ada179 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.mylyn.tasks.ui.prefs @@ -0,0 +1,4 @@ +#Thu Dec 20 14:12:59 PST 2007 +eclipse.preferences.version=1 +project.repository.kind=bugzilla +project.repository.url=https\://bugs.eclipse.org/bugs diff --git a/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.mylyn.team.ui.prefs new file mode 100644 index 00000000..10d0afb9 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/.settings/org.eclipse.mylyn.team.ui.prefs @@ -0,0 +1,2 @@ +commit.comment.template=${task.key}\: ${task.description}\n\nTask-Url\: ${task.url} +eclipse.preferences.version=1 diff --git a/org.eclipse.mylyn.reviews.example.feature/build.properties b/org.eclipse.mylyn.reviews.example.feature/build.properties new file mode 100644 index 00000000..8e3732e7 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/build.properties @@ -0,0 +1,14 @@ +############################################################################### +# Copyright (c) 2009, 2010 Tasktop Technologies and others. +# 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: +# Tasktop Technologies - initial API and implementation +############################################################################### +bin.includes = feature.properties,\ + feature.xml,\ + epl-v10.html,\ + license.html diff --git a/org.eclipse.mylyn.reviews.example.feature/epl-v10.html b/org.eclipse.mylyn.reviews.example.feature/epl-v10.html new file mode 100644 index 00000000..ed4b1966 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/epl-v10.html @@ -0,0 +1,328 @@ +<html xmlns:o="urn:schemas-microsoft-com:office:office" +xmlns:w="urn:schemas-microsoft-com:office:word" +xmlns="http://www.w3.org/TR/REC-html40"> + +<head> +<meta http-equiv=Content-Type content="text/html; charset=windows-1252"> +<meta name=ProgId content=Word.Document> +<meta name=Generator content="Microsoft Word 9"> +<meta name=Originator content="Microsoft Word 9"> +<link rel=File-List +href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml"> +<title>Eclipse Public License - Version 1.0</title> +<!--[if gte mso 9]><xml> + <o:DocumentProperties> + <o:Revision>2</o:Revision> + <o:TotalTime>3</o:TotalTime> + <o:Created>2004-03-05T23:03:00Z</o:Created> + <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved> + <o:Pages>4</o:Pages> + <o:Words>1626</o:Words> + <o:Characters>9270</o:Characters> + <o:Lines>77</o:Lines> + <o:Paragraphs>18</o:Paragraphs> + <o:CharactersWithSpaces>11384</o:CharactersWithSpaces> + <o:Version>9.4402</o:Version> + </o:DocumentProperties> +</xml><![endif]--><!--[if gte mso 9]><xml> + <w:WordDocument> + <w:TrackRevisions/> + </w:WordDocument> +</xml><![endif]--> +<style> +<!-- + /* Font Definitions */ +@font-face + {font-family:Tahoma; + panose-1:2 11 6 4 3 5 4 4 2 4; + mso-font-charset:0; + mso-generic-font-family:swiss; + mso-font-pitch:variable; + mso-font-signature:553679495 -2147483648 8 0 66047 0;} + /* Style Definitions */ +p.MsoNormal, li.MsoNormal, div.MsoNormal + {mso-style-parent:""; + margin:0in; + margin-bottom:.0001pt; + mso-pagination:widow-orphan; + font-size:12.0pt; + font-family:"Times New Roman"; + mso-fareast-font-family:"Times New Roman";} +p + {margin-right:0in; + mso-margin-top-alt:auto; + mso-margin-bottom-alt:auto; + margin-left:0in; + mso-pagination:widow-orphan; + font-size:12.0pt; + font-family:"Times New Roman"; + mso-fareast-font-family:"Times New Roman";} +p.BalloonText, li.BalloonText, div.BalloonText + {mso-style-name:"Balloon Text"; + margin:0in; + margin-bottom:.0001pt; + mso-pagination:widow-orphan; + font-size:8.0pt; + font-family:Tahoma; + mso-fareast-font-family:"Times New Roman";} +@page Section1 + {size:8.5in 11.0in; + margin:1.0in 1.25in 1.0in 1.25in; + mso-header-margin:.5in; + mso-footer-margin:.5in; + mso-paper-source:0;} +div.Section1 + {page:Section1;} +--> +</style> +</head> + +<body lang=EN-US style='tab-interval:.5in'> + +<div class=Section1> + +<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b> +</p> + +<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER +THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, +REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE +OF THIS AGREEMENT.</span> </p> + +<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p> + +<p><span style='font-size:10.0pt'>"Contribution" means:</span> </p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a) +in the case of the initial Contributor, the initial code and documentation +distributed under this Agreement, and<br clear=left> +b) in the case of each subsequent Contributor:</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i) +changes to the Program, and</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii) +additions to the Program;</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where +such changes and/or additions to the Program originate from and are distributed +by that particular Contributor. A Contribution 'originates' from a Contributor +if it was added to the Program by such Contributor itself or anyone acting on +such Contributor's behalf. Contributions do not include additions to the +Program which: (i) are separate modules of software distributed in conjunction +with the Program under their own license agreement, and (ii) are not derivative +works of the Program. </span></p> + +<p><span style='font-size:10.0pt'>"Contributor" means any person or +entity that distributes the Program.</span> </p> + +<p><span style='font-size:10.0pt'>"Licensed Patents " mean patent +claims licensable by a Contributor which are necessarily infringed by the use +or sale of its Contribution alone or when combined with the Program. </span></p> + +<p><span style='font-size:10.0pt'>"Program" means the Contributions +distributed in accordance with this Agreement.</span> </p> + +<p><span style='font-size:10.0pt'>"Recipient" means anyone who +receives the Program under this Agreement, including all Contributors.</span> </p> + +<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a) +Subject to the terms of this Agreement, each Contributor hereby grants Recipient +a non-exclusive, worldwide, royalty-free copyright license to<span +style='color:red'> </span>reproduce, prepare derivative works of, publicly +display, publicly perform, distribute and sublicense the Contribution of such +Contributor, if any, and such derivative works, in source code and object code +form.</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) +Subject to the terms of this Agreement, each Contributor hereby grants +Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free +patent license under Licensed Patents to make, use, sell, offer to sell, import +and otherwise transfer the Contribution of such Contributor, if any, in source +code and object code form. This patent license shall apply to the combination +of the Contribution and the Program if, at the time the Contribution is added +by the Contributor, such addition of the Contribution causes such combination +to be covered by the Licensed Patents. The patent license shall not apply to +any other combinations which include the Contribution. No hardware per se is +licensed hereunder. </span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c) +Recipient understands that although each Contributor grants the licenses to its +Contributions set forth herein, no assurances are provided by any Contributor +that the Program does not infringe the patent or other intellectual property +rights of any other entity. Each Contributor disclaims any liability to Recipient +for claims brought by any other entity based on infringement of intellectual +property rights or otherwise. As a condition to exercising the rights and +licenses granted hereunder, each Recipient hereby assumes sole responsibility +to secure any other intellectual property rights needed, if any. For example, +if a third party patent license is required to allow Recipient to distribute +the Program, it is Recipient's responsibility to acquire that license before +distributing the Program.</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d) +Each Contributor represents that to its knowledge it has sufficient copyright +rights in its Contribution, if any, to grant the copyright license set forth in +this Agreement. </span></p> + +<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p> + +<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the +Program in object code form under its own license agreement, provided that:</span> +</p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a) +it complies with the terms and conditions of this Agreement; and</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) +its license agreement:</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i) +effectively disclaims on behalf of all Contributors all warranties and +conditions, express and implied, including warranties or conditions of title +and non-infringement, and implied warranties or conditions of merchantability +and fitness for a particular purpose; </span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii) +effectively excludes on behalf of all Contributors all liability for damages, +including direct, indirect, special, incidental and consequential damages, such +as lost profits; </span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii) +states that any provisions which differ from this Agreement are offered by that +Contributor alone and not by any other party; and</span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv) +states that source code for the Program is available from such Contributor, and +informs licensees how to obtain it in a reasonable manner on or through a +medium customarily used for software exchange.<span style='color:blue'> </span></span></p> + +<p><span style='font-size:10.0pt'>When the Program is made available in source +code form:</span> </p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a) +it must be made available under this Agreement; and </span></p> + +<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a +copy of this Agreement must be included with each copy of the Program. </span></p> + +<p><span style='font-size:10.0pt'>Contributors may not remove or alter any +copyright notices contained within the Program. </span></p> + +<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the +originator of its Contribution, if any, in a manner that reasonably allows +subsequent Recipients to identify the originator of the Contribution. </span></p> + +<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p> + +<p><span style='font-size:10.0pt'>Commercial distributors of software may +accept certain responsibilities with respect to end users, business partners +and the like. While this license is intended to facilitate the commercial use +of the Program, the Contributor who includes the Program in a commercial +product offering should do so in a manner which does not create potential +liability for other Contributors. Therefore, if a Contributor includes the +Program in a commercial product offering, such Contributor ("Commercial +Contributor") hereby agrees to defend and indemnify every other +Contributor ("Indemnified Contributor") against any losses, damages and +costs (collectively "Losses") arising from claims, lawsuits and other +legal actions brought by a third party against the Indemnified Contributor to +the extent caused by the acts or omissions of such Commercial Contributor in +connection with its distribution of the Program in a commercial product +offering. The obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. In order +to qualify, an Indemnified Contributor must: a) promptly notify the Commercial +Contributor in writing of such claim, and b) allow the Commercial Contributor +to control, and cooperate with the Commercial Contributor in, the defense and +any related settlement negotiations. The Indemnified Contributor may participate +in any such claim at its own expense.</span> </p> + +<p><span style='font-size:10.0pt'>For example, a Contributor might include the +Program in a commercial product offering, Product X. That Contributor is then a +Commercial Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance claims and +warranties are such Commercial Contributor's responsibility alone. Under this +section, the Commercial Contributor would have to defend claims against the +other Contributors related to those performance claims and warranties, and if a +court requires any other Contributor to pay any damages as a result, the +Commercial Contributor must pay those damages.</span> </p> + +<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p> + +<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS +AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, +WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely +responsible for determining the appropriateness of using and distributing the +Program and assumes all risks associated with its exercise of rights under this +Agreement , including but not limited to the risks and costs of program errors, +compliance with applicable laws, damage to or loss of data, programs or +equipment, and unavailability or interruption of operations. </span></p> + +<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p> + +<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS +AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF +THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGES.</span> </p> + +<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p> + +<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid +or unenforceable under applicable law, it shall not affect the validity or +enforceability of the remainder of the terms of this Agreement, and without +further action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable.</span> </p> + +<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation +against any entity (including a cross-claim or counterclaim in a lawsuit) +alleging that the Program itself (excluding combinations of the Program with +other software or hardware) infringes such Recipient's patent(s), then such +Recipient's rights granted under Section 2(b) shall terminate as of the date +such litigation is filed. </span></p> + +<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement +shall terminate if it fails to comply with any of the material terms or +conditions of this Agreement and does not cure such failure in a reasonable +period of time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use and +distribution of the Program as soon as reasonably practicable. However, +Recipient's obligations under this Agreement and any licenses granted by +Recipient relating to the Program shall continue and survive. </span></p> + +<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute +copies of this Agreement, but in order to avoid inconsistency the Agreement is +copyrighted and may only be modified in the following manner. The Agreement +Steward reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement Steward has +the right to modify this Agreement. The Eclipse Foundation is the initial +Agreement Steward. The Eclipse Foundation may assign the responsibility to +serve as the Agreement Steward to a suitable separate entity. Each new version +of the Agreement will be given a distinguishing version number. The Program +(including Contributions) may always be distributed subject to the version of +the Agreement under which it was received. In addition, after a new version of +the Agreement is published, Contributor may elect to distribute the Program +(including its Contributions) under the new version. Except as expressly stated +in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to +the intellectual property of any Contributor under this Agreement, whether +expressly, by implication, estoppel or otherwise. All rights in the Program not +expressly granted under this Agreement are reserved.</span> </p> + +<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the +State of New York and the intellectual property laws of the United States of +America. No party to this Agreement will bring a legal action under this +Agreement more than one year after the cause of action arose. Each party waives +its rights to a jury trial in any resulting litigation.</span> </p> + +<p class=MsoNormal><![if !supportEmptyParas]> <![endif]><o:p></o:p></p> + +</div> + +</body> + +</html>
\ No newline at end of file diff --git a/org.eclipse.mylyn.reviews.example.feature/feature.properties b/org.eclipse.mylyn.reviews.example.feature/feature.properties new file mode 100644 index 00000000..a2269bc0 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/feature.properties @@ -0,0 +1,138 @@ +############################################################################### +# Copyright (c) 2011 Tasktop Technologies and others. +# 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: +# Tasktop Technologies - initial API and implementation +############################################################################### +featureName=Mylyn Emf Example Tasks +description=Provides an exemplar EMF-based Mylyn Task Repository and Connector. +providerName=Eclipse Mylyn +copyright=Copyright (c) 2012 Tasktop Technologies and others. All rights reserved. +license=\ +Eclipse Foundation Software User Agreement\n\ +February 1, 2011\n\ +\n\ +Usage Of Content\n\ +\n\ +THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\ +OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\ +USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\ +AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\ +NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\ +AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\ +AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\ +OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\ +TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\ +OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\ +BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\ +\n\ +Applicable Licenses\n\ +\n\ +Unless otherwise indicated, all Content made available by the\n\ +Eclipse Foundation is provided to you under the terms and conditions of\n\ +the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\ +provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\ +For purposes of the EPL, "Program" will mean the Content.\n\ +\n\ +Content includes, but is not limited to, source code, object code,\n\ +documentation and other files maintained in the Eclipse Foundation source code\n\ +repository ("Repository") in software modules ("Modules") and made available\n\ +as downloadable archives ("Downloads").\n\ +\n\ + - Content may be structured and packaged into modules to facilitate delivering,\n\ + extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\ + plug-in fragments ("Fragments"), and features ("Features").\n\ + - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\ + in a directory named "plugins".\n\ + - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\ + Each Feature may be packaged as a sub-directory in a directory named "features".\n\ + Within a Feature, files named "feature.xml" may contain a list of the names and version\n\ + numbers of the Plug-ins and/or Fragments associated with that Feature.\n\ + - Features may also include other Features ("Included Features"). Within a Feature, files\n\ + named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\ +\n\ +The terms and conditions governing Plug-ins and Fragments should be\n\ +contained in files named "about.html" ("Abouts"). The terms and\n\ +conditions governing Features and Included Features should be contained\n\ +in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\ +Licenses may be located in any directory of a Download or Module\n\ +including, but not limited to the following locations:\n\ +\n\ + - The top-level (root) directory\n\ + - Plug-in and Fragment directories\n\ + - Inside Plug-ins and Fragments packaged as JARs\n\ + - Sub-directories of the directory named "src" of certain Plug-ins\n\ + - Feature directories\n\ +\n\ +Note: if a Feature made available by the Eclipse Foundation is installed using the\n\ +Provisioning Technology (as defined below), you must agree to a license ("Feature \n\ +Update License") during the installation process. If the Feature contains\n\ +Included Features, the Feature Update License should either provide you\n\ +with the terms and conditions governing the Included Features or inform\n\ +you where you can locate them. Feature Update Licenses may be found in\n\ +the "license" property of files named "feature.properties" found within a Feature.\n\ +Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\ +terms and conditions (or references to such terms and conditions) that\n\ +govern your use of the associated Content in that directory.\n\ +\n\ +THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\ +TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\ +SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\ +\n\ + - Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\ + - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\ + - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\ + - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\ + - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\ + - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\ +\n\ +IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\ +TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\ +is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\ +govern that particular Content.\n\ +\n\ +\n\Use of Provisioning Technology\n\ +\n\ +The Eclipse Foundation makes available provisioning software, examples of which include,\n\ +but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\ +the purpose of allowing users to install software, documentation, information and/or\n\ +other materials (collectively "Installable Software"). This capability is provided with\n\ +the intent of allowing such users to install, extend and update Eclipse-based products.\n\ +Information about packaging Installable Software is available at\n\ +http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\ +\n\ +You may use Provisioning Technology to allow other parties to install Installable Software.\n\ +You shall be responsible for enabling the applicable license agreements relating to the\n\ +Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\ +in accordance with the Specification. By using Provisioning Technology in such a manner and\n\ +making it available in accordance with the Specification, you further acknowledge your\n\ +agreement to, and the acquisition of all necessary rights to permit the following:\n\ +\n\ + 1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\ + the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\ + extending or updating the functionality of an Eclipse-based product.\n\ + 2. During the Provisioning Process, the Provisioning Technology may cause third party\n\ + Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\ + 3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\ + govern the use of the Installable Software ("Installable Software Agreement") and such\n\ + Installable Software Agreement shall be accessed from the Target Machine in accordance\n\ + with the Specification. Such Installable Software Agreement must inform the user of the\n\ + terms and conditions that govern the Installable Software and must solicit acceptance by\n\ + the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\ + indication of agreement by the user, the provisioning Technology will complete installation\n\ + of the Installable Software.\n\ +\n\ +Cryptography\n\ +\n\ +Content may contain encryption software. The country in which you are\n\ +currently may have restrictions on the import, possession, and use,\n\ +and/or re-export to another country, of encryption software. BEFORE\n\ +using any encryption software, please check the country's laws,\n\ +regulations and policies concerning the import, possession, or use, and\n\ +re-export of encryption software, to see if this is permitted.\n\ +\n\ +Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n diff --git a/org.eclipse.mylyn.reviews.example.feature/feature.xml b/org.eclipse.mylyn.reviews.example.feature/feature.xml new file mode 100644 index 00000000..cf9f402b --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/feature.xml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2011 Tasktop Technologies and others. + 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: + Tasktop Technologies - initial API and implementation + --> +<feature + id="org.eclipse.mylyn.reviews.example.emftasks.feature" + label="%featureName" + version="0.13.0.qualifier" + provider-name="%providerName" + plugin="org.eclipse.mylyn.reviews.example.emftasks.core"> + + <description url="http://eclipse.org/mylyn/reviews"> + %description + </description> + + <copyright> + %copyright + </copyright> + + <license url="license.html"> + %license + </license> + + <requires> + <import feature="org.eclipse.mylyn_feature" version="3.9.0" match="compatible"/> + </requires> + + <plugin + id="org.eclipse.mylyn.reviews.example.emftasks.core" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="org.eclipse.mylyn.reviews.example.emftasks.ui" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="org.eclipse.mylyn.reviews.example.emftasks.model" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="org.eclipse.mylyn.reviews.example.emftasks.model.edit" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="org.eclipse.mylyn.reviews.example.emftasks.model.editor" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + +</feature> diff --git a/org.eclipse.mylyn.reviews.example.feature/license.html b/org.eclipse.mylyn.reviews.example.feature/license.html new file mode 100644 index 00000000..f19c483b --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/license.html @@ -0,0 +1,108 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<!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>Eclipse Foundation Software User Agreement</title> +</head> + +<body lang="EN-US"> +<h2>Eclipse Foundation Software User Agreement</h2> +<p>February 1, 2011</p> + +<h3>Usage Of Content</h3> + +<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS + (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND + CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE + OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR + NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND + CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p> + +<h3>Applicable Licenses</h3> + +<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0 + ("EPL"). A copy of the EPL is provided with this Content and is also 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>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code + repository ("Repository") in software modules ("Modules") and made available as downloadable archives ("Downloads").</p> + +<ul> + <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and features ("Features").</li> + <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java™ ARchive) in a directory named "plugins".</li> + <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named "features". Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of the Plug-ins + and/or Fragments associated with that Feature.</li> + <li>Features may also include other Features ("Included Features"). Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of Included Features.</li> +</ul> + +<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named "about.html" ("Abouts"). The terms and conditions governing Features and +Included Features should be contained in files named "license.html" ("Feature Licenses"). Abouts and Feature Licenses may be located in any directory of a Download or Module +including, but not limited to the following locations:</p> + +<ul> + <li>The top-level (root) directory</li> + <li>Plug-in and Fragment directories</li> + <li>Inside Plug-ins and Fragments packaged as JARs</li> + <li>Sub-directories of the directory named "src" of certain Plug-ins</li> + <li>Feature directories</li> +</ul> + +<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license ("Feature Update License") during the +installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or +inform you where you can locate them. Feature Update Licenses may be found in the "license" property of files named "feature.properties" found within a Feature. +Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in +that directory.</p> + +<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE +OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p> + +<ul> + <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li> + <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li> + <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li> + <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li> + <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li> + <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li> +</ul> + +<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please +contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p> + + +<h3>Use of Provisioning Technology</h3> + +<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse + Update Manager ("Provisioning Technology") for the purpose of allowing users to install software, documentation, information and/or + other materials (collectively "Installable Software"). This capability is provided with the intent of allowing such users to + install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a + href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a> + ("Specification").</p> + +<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the + applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology + in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the + Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p> + +<ol> + <li>A series of actions may occur ("Provisioning Process") in which a user may execute the Provisioning Technology + on a machine ("Target Machine") with the intent of installing, extending or updating the functionality of an Eclipse-based + product.</li> + <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be + accessed and copied to the Target Machine.</li> + <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable + Software ("Installable Software Agreement") and such Installable Software Agreement shall be accessed from the Target + Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern + the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such + indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li> +</ol> + +<h3>Cryptography</h3> + +<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to + another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import, + possession, or use, and re-export of encryption software, to see if this is permitted.</p> + +<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p> +</body> +</html> diff --git a/org.eclipse.mylyn.reviews.example.feature/pom.xml b/org.eclipse.mylyn.reviews.example.feature/pom.xml new file mode 100644 index 00000000..f0cb1d54 --- /dev/null +++ b/org.eclipse.mylyn.reviews.example.feature/pom.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>org.eclipse.mylyn.reviews.r4e-parent</artifactId> + <groupId>org.eclipse.mylyn.reviews.r4e</groupId> + <version>0.13.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.mylyn.reviews.example.emftasks.feature</artifactId> + <version>0.13.0-SNAPSHOT</version> + <packaging>eclipse-feature</packaging> +</project> @@ -188,5 +188,12 @@ <module>org.eclipse.mylyn.reviews.connector.ui</module> <module>org.eclipse.mylyn.reviews.connector.tests</module> <module>org.eclipse.mylyn.reviews.connector.feature</module> + <module>org.eclipse.mylyn.reviews.example.emftasks.core</module> + <module>org.eclipse.mylyn.reviews.example.emftasks.core.tests</module> + <module>org.eclipse.mylyn.reviews.example.emftasks.ui</module> + <module>org.eclipse.mylyn.reviews.example.emftasks.model</module> + <module>org.eclipse.mylyn.reviews.example.emftasks.model.edit</module> + <module>org.eclipse.mylyn.reviews.example.emftasks.model.editor</module> + <module>org.eclipse.mylyn.reviews.example.feature</module> </modules> </project> |