Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Parker2013-01-30 19:33:49 +0000
committersdubois2013-02-01 21:37:57 +0000
commit9a6b593eae9a2054dccf06e565f04232a1f5db7a (patch)
tree5c6a96c12c31d4f5b874194ac57d54129ab15bdb
parent27039c8076bbbf7c6114236209a7f70437df92ae (diff)
downloadorg.eclipse.mylyn.reviews.r4e-9a6b593eae9a2054dccf06e565f04232a1f5db7a.tar.gz
org.eclipse.mylyn.reviews.r4e-9a6b593eae9a2054dccf06e565f04232a1f5db7a.tar.xz
org.eclipse.mylyn.reviews.r4e-9a6b593eae9a2054dccf06e565f04232a1f5db7a.zip
389457: Implement Mylyn Connector for R4E
Change-Id: Iae34eae797548b5f855e0e425363fff344ce7cfe Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=389457
-rw-r--r--org.eclipse.mylyn.reviews.connector.tests/.classpath2
-rw-r--r--org.eclipse.mylyn.reviews.connector.tests/.settings/org.eclipse.jdt.core.prefs9
-rw-r--r--org.eclipse.mylyn.reviews.connector.tests/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.connector.ui/.settings/.api_filters13
-rw-r--r--org.eclipse.mylyn.reviews.connector.ui/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.connector.ui/build.properties1
-rw-r--r--org.eclipse.mylyn.reviews.connector.ui/src/org/eclipse/mylyn/reviews/connector/ui/EmfRepositorySettingsPage.java30
-rw-r--r--org.eclipse.mylyn.reviews.connector/.classpath2
-rw-r--r--org.eclipse.mylyn.reviews.connector/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--org.eclipse.mylyn.reviews.connector/build.properties1
-rw-r--r--org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/AbstractEmfConnector.java18
-rw-r--r--org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/EmfTaskSchema.java9
-rw-r--r--org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/client/EmfClient.java14
-rw-r--r--org.eclipse.mylyn.reviews.example.emftasks.core.tests/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.example.emftasks.core/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.example.emftasks.model.edit/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.example.emftasks.model.editor/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.example.emftasks.model/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.example.emftasks.ui/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.mylyn.reviews.example.emftasks.ui/src/org/eclipse/mylyn/internal/reviews/example/emftasks/ui/EmfExampleUiPlugin.java3
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.classpath7
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.project34
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.core.runtime.prefs2
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.jdt.core.prefs357
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.jdt.ui.prefs63
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.ltk.core.refactoring.prefs3
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.mylyn.tasks.ui.prefs4
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.mylyn.team.ui.prefs2
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.pde.prefs18
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/META-INF/MANIFEST.MF21
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/R4E Connector Core Tests.launch47
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/about.html27
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/build.properties7
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/pom.xml22
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4ETaskSchemaTest.java62
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/client/R4EClientTest.java137
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EFixture.java61
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EHarness.java36
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/tests/R4ETestConstants.java26
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Golden_Group_group_root.xrer15
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Jerry20_group_reviews.xrer10
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/Review1_review.xrer5
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/lmcalvs_comments.xrer5
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_comments.xrer36
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_items.xrer115
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/ReviewSampl_review.xrer8
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_comments.xrer37
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_items.xrer115
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_comments.xrer36
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_items.xrer115
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/ReviewTwo_review.xrer8
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_comments.xrer37
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_items.xrer115
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Tom10_group_reviews.xrer12
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/lmcalvs_group_reviews.xrer8
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer15
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Jerry20_group_reviews.xrer10
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/Review1_review.xrer5
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/lmcalvs_comments.xrer5
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_comments.xrer36
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_items.xrer115
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/ReviewSampl_review.xrer8
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_comments.xrer37
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_items.xrer115
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_comments.xrer36
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_items.xrer115
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/ReviewTwo_review.xrer8
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_comments.xrer37
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_items.xrer115
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Tom10_group_reviews.xrer12
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/conversion.log110
-rwxr-xr-xorg.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/lmcalvs_group_reviews.xrer8
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.classpath14
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.core.runtime.prefs2
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.jdt.core.prefs353
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.jdt.ui.prefs63
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.mylyn.tasks.ui.prefs4
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.mylyn.team.ui.prefs2
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.pde.prefs18
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/META-INF/MANIFEST.MF36
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/about.html27
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/build.properties8
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/icons/eview16/overlay-review.pngbin0 -> 208 bytes
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/icons/obj16/revgrp_obj.gifbin0 -> 361 bytes
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/plugin.xml29
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/pom.xml29
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EConnectorUi.java112
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EImages.java46
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4ERepositorySettingsPage.java46
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUiPlugin.java64
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUrlHandler.java29
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ArtifactsSection.java196
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4EEditorPeoplePart.java80
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPage.java123
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPageFactory.java59
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ReviewItemLabelProvider.java93
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.classpath14
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.project34
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.core.runtime.prefs2
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.jdt.core.prefs352
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.jdt.ui.prefs63
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.ltk.core.refactoring.prefs3
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.mylyn.tasks.ui.prefs4
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.mylyn.team.ui.prefs2
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.pde.prefs18
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/META-INF/MANIFEST.MF22
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/about.html27
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/build.properties16
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/pom.xml29
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EAttributeMapper.java57
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EClient.java88
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnector.java246
-rw-r--r--org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnectorPlugin.java72
-rw-r--r--org.eclipse.mylyn.reviews.r4e.core.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer30
-rw-r--r--org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/editors/EditorProxy.java83
-rw-r--r--org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/properties/tabbed/ReviewGroupTabPropertySection.java2
-rw-r--r--pom.xml3
118 files changed, 5063 insertions, 65 deletions
diff --git a/org.eclipse.mylyn.reviews.connector.tests/.classpath b/org.eclipse.mylyn.reviews.connector.tests/.classpath
index a48380cc..04a15488 100644
--- a/org.eclipse.mylyn.reviews.connector.tests/.classpath
+++ b/org.eclipse.mylyn.reviews.connector.tests/.classpath
@@ -1,6 +1,6 @@
<?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.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
<accessrules>
<accessrule kind="accessible" pattern="org/eclipse/mylyn/tasks/core/**"/>
diff --git a/org.eclipse.mylyn.reviews.connector.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.connector.tests/.settings/org.eclipse.jdt.core.prefs
index e6f2755b..7d4db006 100644
--- a/org.eclipse.mylyn.reviews.connector.tests/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.mylyn.reviews.connector.tests/.settings/org.eclipse.jdt.core.prefs
@@ -1,4 +1,3 @@
-#Wed Mar 30 23:08:12 CEST 2011
eclipse.preferences.version=1
org.eclipse.jdt.core.codeComplete.argumentPrefixes=
org.eclipse.jdt.core.codeComplete.argumentSuffixes=
@@ -9,9 +8,9 @@ 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.targetPlatform=1.5
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
@@ -75,7 +74,7 @@ org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disa
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.source=1.5
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
@@ -160,10 +159,8 @@ 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
diff --git a/org.eclipse.mylyn.reviews.connector.tests/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.connector.tests/META-INF/MANIFEST.MF
index 9b4b8336..fd700c21 100644
--- a/org.eclipse.mylyn.reviews.connector.tests/META-INF/MANIFEST.MF
+++ b/org.eclipse.mylyn.reviews.connector.tests/META-INF/MANIFEST.MF
@@ -5,7 +5,7 @@ Bundle-SymbolicName: org.eclipse.mylyn.reviews.connector.tests;singleton:=true
Bundle-Version: 0.13.0.qualifier
Bundle-Vendor: Eclipse Mylyn
Fragment-Host: org.eclipse.mylyn.reviews.connector
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
Require-Bundle: org.junit;bundle-version="4.5.0",
org.hamcrest;bundle-version="[1.0.0,2.0.0)",
org.eclipse.mylyn.commons.net,
diff --git a/org.eclipse.mylyn.reviews.connector.ui/.settings/.api_filters b/org.eclipse.mylyn.reviews.connector.ui/.settings/.api_filters
index 09e014ba..88d470da 100644
--- a/org.eclipse.mylyn.reviews.connector.ui/.settings/.api_filters
+++ b/org.eclipse.mylyn.reviews.connector.ui/.settings/.api_filters
@@ -1,10 +1,19 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<component id="org.eclipse.mylyn.reviews.connector.ui" version="2">
- <resource path="src/org/eclipse/mylyn/tasks/emf/connector/ui/AbstractEmfConnectorUi.java" type="org.eclipse.mylyn.reviews.connector.ui.AbstractEmfConnectorUi">
+ <resource path="src/org/eclipse/mylyn/reviews/connector/ui/EmfRepositorySettingsPage.java" type="org.eclipse.mylyn.reviews.connector.ui.EmfRepositorySettingsPage">
<filter id="643842064">
<message_arguments>
<message_argument value="AbstractEmfConnector"/>
- <message_argument value="AbstractEmfConnectorUi"/>
+ <message_argument value="EmfRepositorySettingsPage"/>
+ <message_argument value="getConnector()"/>
+ </message_arguments>
+ </filter>
+ </resource>
+ <resource path="src/org/eclipse/mylyn/reviews/connector/ui/wizards/EmfRepositoryQueryPage.java" type="org.eclipse.mylyn.reviews.connector.ui.wizards.EmfRepositoryQueryPage">
+ <filter id="643842064">
+ <message_arguments>
+ <message_argument value="AbstractEmfConnector"/>
+ <message_argument value="EmfRepositoryQueryPage"/>
<message_argument value="getConnector()"/>
</message_arguments>
</filter>
diff --git a/org.eclipse.mylyn.reviews.connector.ui/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.connector.ui/META-INF/MANIFEST.MF
index 7925d46e..b4c6a200 100644
--- a/org.eclipse.mylyn.reviews.connector.ui/META-INF/MANIFEST.MF
+++ b/org.eclipse.mylyn.reviews.connector.ui/META-INF/MANIFEST.MF
@@ -22,7 +22,7 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.mylyn.tasks.ui;bundle-version="3.9.0",
org.eclipse.mylyn.reviews.connector
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-Vendor: Eclipse Mylyn
Export-Package: org.eclipse.mylyn.internal.reviews.connector.ui,
org.eclipse.mylyn.reviews.connector.ui,
diff --git a/org.eclipse.mylyn.reviews.connector.ui/build.properties b/org.eclipse.mylyn.reviews.connector.ui/build.properties
index 6e6e1b3a..aae04148 100644
--- a/org.eclipse.mylyn.reviews.connector.ui/build.properties
+++ b/org.eclipse.mylyn.reviews.connector.ui/build.properties
@@ -5,3 +5,4 @@ bin.includes = META-INF/,\
about.html,\
icons/
src.includes = about.html
+jre.compilation.profile = JavaSE-1.6
diff --git a/org.eclipse.mylyn.reviews.connector.ui/src/org/eclipse/mylyn/reviews/connector/ui/EmfRepositorySettingsPage.java b/org.eclipse.mylyn.reviews.connector.ui/src/org/eclipse/mylyn/reviews/connector/ui/EmfRepositorySettingsPage.java
index b72c1b71..f802262f 100644
--- a/org.eclipse.mylyn.reviews.connector.ui/src/org/eclipse/mylyn/reviews/connector/ui/EmfRepositorySettingsPage.java
+++ b/org.eclipse.mylyn.reviews.connector.ui/src/org/eclipse/mylyn/reviews/connector/ui/EmfRepositorySettingsPage.java
@@ -28,7 +28,6 @@ import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
@@ -36,10 +35,10 @@ import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.jface.dialogs.IMessageProvider;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.layout.GridDataFactory;
-import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.internal.reviews.connector.ui.EmfUiPlugin;
import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector;
import org.eclipse.mylyn.reviews.connector.client.EmfClient;
+import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.ui.wizards.AbstractTaskRepositoryPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
@@ -191,6 +190,7 @@ public abstract class EmfRepositorySettingsPage extends AbstractTaskRepositoryPa
@SuppressWarnings("restriction")
@Override
public void applyTo(TaskRepository repository) {
+ super.applyTo(repository);
repository.setRepositoryUrl(getRepositoryUrl());
repository.setRepositoryLabel(labelEditor.getText());
}
@@ -224,9 +224,15 @@ public abstract class EmfRepositorySettingsPage extends AbstractTaskRepositoryPa
validating = false;
}
if (client == null) {
- if (StringUtils.isBlank(repositoryUrl)) {
+ if (StringUtils.isBlank(labelEditor.getText()) && StringUtils.isBlank(repositoryUrl)) {
+ return new Status(IStatus.ERROR, getConnector().getConnectorBundle().getSymbolicName(),
+ "Specify a repository location or specify a repository label to create a new repository.");
+ } else if (StringUtils.isBlank(repositoryUrl)) {
return new Status(IStatus.ERROR, getConnector().getConnectorBundle().getSymbolicName(),
- "Specify a repository.");
+ "Specify a repository location.");
+ } else if (StringUtils.isBlank(labelEditor.getText())) {
+ return new Status(IStatus.ERROR, getConnector().getConnectorBundle().getSymbolicName(),
+ "Specify a repository label.");
}
try {
URI testURI = URI.createURI(repositoryUrl);
@@ -344,7 +350,7 @@ public abstract class EmfRepositorySettingsPage extends AbstractTaskRepositoryPa
fileName = StringUtils.deleteWhitespace(labelEditor.getText());
}
if (fileName != null) {
- browseDialog.setFileName(fileName);
+ browseDialog.setFileName(getQualifiedName(fileName));
}
browseDialog.setFilterExtensions(getConnectorUi().getFileNameExtensions());
String browseResult = browseDialog.open();
@@ -362,8 +368,7 @@ public abstract class EmfRepositorySettingsPage extends AbstractTaskRepositoryPa
ResourceSet resourceSet = new ResourceSetImpl();
URI fileURI = URI.createFileURI(browseResult);
Resource resource = resourceSet.createResource(fileURI);
- EReference containmentRef = getConnector().getContainmentReference();
- EClass eContainingClass = containmentRef.getEContainingClass();
+ EClass eContainingClass = getConnector().getContainerClass();
EObject rootObject = eContainingClass.getEPackage().getEFactoryInstance().create(eContainingClass);
if (rootObject != null) {
resource.getContents().add(rootObject);
@@ -382,9 +387,14 @@ public abstract class EmfRepositorySettingsPage extends AbstractTaskRepositoryPa
}
}
- @Override
- public void performFinish(TaskRepository repository) {
- super.performFinish(repository);
+ /**
+ * Supports R4E naming issue. Otherwise, not intended for extension.
+ *
+ * @param browseResult
+ * @return
+ */
+ protected String getQualifiedName(String browseResult) {
+ return browseResult;
}
@Override
diff --git a/org.eclipse.mylyn.reviews.connector/.classpath b/org.eclipse.mylyn.reviews.connector/.classpath
index ad32c83a..64c5e31b 100644
--- a/org.eclipse.mylyn.reviews.connector/.classpath
+++ b/org.eclipse.mylyn.reviews.connector/.classpath
@@ -1,6 +1,6 @@
<?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.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
diff --git a/org.eclipse.mylyn.reviews.connector/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.connector/.settings/org.eclipse.jdt.core.prefs
index bc2c501d..be363990 100644
--- a/org.eclipse.mylyn.reviews.connector/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.mylyn.reviews.connector/.settings/org.eclipse.jdt.core.prefs
@@ -1,4 +1,3 @@
-#Thu Mar 10 01:20:38 PST 2011
eclipse.preferences.version=1
org.eclipse.jdt.core.codeComplete.argumentPrefixes=
org.eclipse.jdt.core.codeComplete.argumentSuffixes=
@@ -9,9 +8,9 @@ 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.targetPlatform=1.5
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
@@ -75,7 +74,7 @@ org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disa
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.source=1.5
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
diff --git a/org.eclipse.mylyn.reviews.connector/build.properties b/org.eclipse.mylyn.reviews.connector/build.properties
index 2d01f760..bb3818fa 100644
--- a/org.eclipse.mylyn.reviews.connector/build.properties
+++ b/org.eclipse.mylyn.reviews.connector/build.properties
@@ -15,3 +15,4 @@ jars.compile.order = .
source.. = src/
output.. = bin/
src.includes = about.html
+jre.compilation.profile = J2SE-1.5
diff --git a/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/AbstractEmfConnector.java b/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/AbstractEmfConnector.java
index 58255bff..12b34cbd 100644
--- a/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/AbstractEmfConnector.java
+++ b/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/AbstractEmfConnector.java
@@ -220,10 +220,12 @@ public abstract class AbstractEmfConnector extends AbstractRepositoryConnector {
taskId = getTaskKey(repository, emfTask);
if (StringUtils.isEmpty(taskId) || taskId.equals("0")) { //$NON-NLS-1$
taskId = getNextTaskId(client.getRootContainer());
+ if (taskId != null) {
+ TaskAttribute keyAttribute = taskData.getRoot().getAttribute(TaskAttribute.TASK_KEY);
+ keyAttribute.setValue(taskId);
+ oldAttributes.add(keyAttribute);
+ }
}
- TaskAttribute keyAttribute = taskData.getRoot().getAttribute(TaskAttribute.TASK_KEY);
- keyAttribute.setValue(taskId);
- oldAttributes.add(keyAttribute);
for (Field field : getSchema().getFields()) {
oldAttributes.add(taskData.getRoot().getAttribute(field.getKey()));
}
@@ -463,7 +465,6 @@ public abstract class AbstractEmfConnector extends AbstractRepositoryConnector {
try {
EmfClient client = getClient(repository);
client.open();
-// new SELECT(new WHERE(new EObjectAttributeValueCondition(attribute, valueCondition)), where)
List<EObject> results;
try {
results = getQueryEngine(repository).performQuery(query, monitor);
@@ -563,6 +564,15 @@ public abstract class AbstractEmfConnector extends AbstractRepositoryConnector {
public abstract EReference getContainmentReference();
+ /**
+ * The class to be used for task container. By default this is the clss defined by the containment reference.
+ *
+ * @return
+ */
+ public EClass getContainerClass() {
+ return getContainmentReference().getEContainingClass();
+ }
+
public abstract EAttribute[] getSearchAttributes();
public abstract Bundle getConnectorBundle();
diff --git a/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/EmfTaskSchema.java b/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/EmfTaskSchema.java
index 04d9dec0..98a1fa18 100644
--- a/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/EmfTaskSchema.java
+++ b/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/EmfTaskSchema.java
@@ -14,6 +14,7 @@ package org.eclipse.mylyn.reviews.connector;
import java.util.HashMap;
import java.util.Map;
+import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.WordUtils;
@@ -82,7 +83,6 @@ public abstract class EmfTaskSchema extends AbstractTaskSchema {
private boolean keyFieldDefined;
public void initialize() {
- boolean keyFieldDefined = false;
for (FieldFeature fieldFeature : getSchemaPairs()) {
if (fieldFeature.parentField.getKey() == parent.TASK_KEY.getKey()) {
keyFieldDefined = true;
@@ -190,16 +190,17 @@ public abstract class EmfTaskSchema extends AbstractTaskSchema {
featureByTaskKey.put(field.getKey(), feature);
}
- private Field createField(EStructuralFeature feature) {
+ protected Field createField(EStructuralFeature feature, Flag... flags) {
String key = getKey(feature);
String label = getLabel(feature);
String type = getTaskType(feature);
- Field field = createField(key, label, type, key, Flag.ATTRIBUTE);
+ flags = (Flag[]) ArrayUtils.add(flags, Flag.ATTRIBUTE);
+ Field field = createField(key, label, type, key, flags);
addEmfField(feature, field);
return field;
}
- private Field createField(FieldFeature fieldFeature) {
+ protected Field createField(FieldFeature fieldFeature) {
Field parentField = fieldFeature.parentField;
EStructuralFeature emfAttribute = fieldFeature.feature;
String key = getKey(emfAttribute);
diff --git a/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/client/EmfClient.java b/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/client/EmfClient.java
index c7a07261..20d1c32a 100644
--- a/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/client/EmfClient.java
+++ b/org.eclipse.mylyn.reviews.connector/src/org/eclipse/mylyn/reviews/connector/client/EmfClient.java
@@ -28,10 +28,10 @@ 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.connector.EmfCorePlugin;
-import org.eclipse.mylyn.tasks.core.TaskRepository;
-import org.eclipse.mylyn.tasks.core.data.TaskData;
import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector;
import org.eclipse.mylyn.reviews.connector.EmfConfiguration;
+import org.eclipse.mylyn.tasks.core.TaskRepository;
+import org.eclipse.mylyn.tasks.core.data.TaskData;
/**
* Manages interaction with specific review file.
@@ -46,6 +46,8 @@ public abstract class EmfClient {
private EObject taskContainer;
+ private boolean reloadOnOpen;
+
public EmfClient(TaskRepository repository) {
this.repository = repository;
}
@@ -59,7 +61,7 @@ public abstract class EmfClient {
if (taskContainer != null) {
URI uri = URI.createURI(repository.getRepositoryUrl());
URI currentUri = taskContainer.eResource().getURI();
- if (!uri.equals(currentUri)) {
+ if (!uri.equals(currentUri) || reloadOnOpen) {
save();
close();
taskContainer = null;
@@ -81,7 +83,7 @@ public abstract class EmfClient {
*/
public synchronized void open() throws CoreException {
URI uri = URI.createURI(getRepository().getRepositoryUrl());
- if (taskContainer != null) {
+ if (!reloadOnOpen && taskContainer != null) {
URI currentUri = taskContainer.eResource().getURI();
if (uri.equals(currentUri)) {
return;
@@ -209,5 +211,9 @@ public abstract class EmfClient {
return repository;
}
+ public void setReloadOnOpen(boolean reloadOnOpen) {
+ this.reloadOnOpen = reloadOnOpen;
+ }
+
public abstract AbstractEmfConnector getConnector();
}
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
index 1dff0275..bbfb84c9 100644
--- 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
@@ -5,7 +5,7 @@ Bundle-SymbolicName: org.eclipse.mylyn.reviews.example.emftasks.core.tests;singl
Bundle-Version: 0.13.0.qualifier
Bundle-Vendor: Eclipse Mylyn
Fragment-Host: org.eclipse.mylyn.reviews.example.emftasks.core
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
Require-Bundle: org.junit;bundle-version="4.5.0",
org.hamcrest;bundle-version="[0.13.0,2.0.0)",
org.eclipse.equinox.security,
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
index d0476733..aeb1a363 100644
--- a/org.eclipse.mylyn.reviews.example.emftasks.core/META-INF/MANIFEST.MF
+++ b/org.eclipse.mylyn.reviews.example.emftasks.core/META-INF/MANIFEST.MF
@@ -16,6 +16,6 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.mylyn.reviews.connector,
org.eclipse.mylyn.reviews.example.emftasks.model
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
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.model.edit/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.example.emftasks.model.edit/META-INF/MANIFEST.MF
index 359d5f41..7a9e0917 100644
--- 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
@@ -7,7 +7,7 @@ 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
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
Export-Package: org.eclipse.mylyn.reviews.example.emftasks.provider
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.mylyn.reviews.example.emftasks.model;visibility:=reexport,
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
index 02f33b93..04e1d7d4 100644
--- 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
@@ -7,7 +7,7 @@ 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
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
Export-Package: org.eclipse.mylyn.reviews.example.emftasks.presentation
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.core.resources;visibility:=reexport,
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
index 306d6f97..043a9cb0 100644
--- a/org.eclipse.mylyn.reviews.example.emftasks.model/META-INF/MANIFEST.MF
+++ b/org.eclipse.mylyn.reviews.example.emftasks.model/META-INF/MANIFEST.MF
@@ -13,7 +13,7 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.mylyn.tasks.core,
org.eclipse.mylyn.commons.sdk.util
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-Vendor: Eclipse Mylyn
Export-Package: org.eclipse.mylyn.reviews.example.emftasks,
org.eclipse.mylyn.reviews.example.emftasks.impl,
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
index fe724e45..19440051 100644
--- a/org.eclipse.mylyn.reviews.example.emftasks.ui/META-INF/MANIFEST.MF
+++ b/org.eclipse.mylyn.reviews.example.emftasks.ui/META-INF/MANIFEST.MF
@@ -28,7 +28,7 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.mylyn.reviews.connector.ui,
org.eclipse.mylyn.reviews.example.emftasks.model.editor
Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
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/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
index a8b505a5..334c5865 100644
--- 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
@@ -54,6 +54,9 @@ public class EmfExampleUiPlugin extends AbstractUIPlugin {
}
public EmfExampleConnectorUi getConnectorUi() {
+ if (ui == null) {
+ ui = new EmfExampleConnectorUi();
+ }
return ui;
}
}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/.classpath b/org.eclipse.mylyn.reviews.r4e.connector.tests/.classpath
new file mode 100644
index 00000000..ad32c83a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/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.r4e.connector.tests/.project b/org.eclipse.mylyn.reviews.r4e.connector.tests/.project
new file mode 100644
index 00000000..6c40a0d6
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000..5a0ad22d
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..e6f2755b
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 00000000..f6c0a161
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/.settings/org.eclipse.ltk.core.refactoring.prefs b/org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.ltk.core.refactoring.prefs
new file mode 100644
index 00000000..5e7f2bd4
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.mylyn.tasks.ui.prefs
new file mode 100644
index 00000000..d8c6d26a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.mylyn.team.ui.prefs
new file mode 100644
index 00000000..10d0afb9
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/.settings/org.eclipse.pde.prefs b/org.eclipse.mylyn.reviews.r4e.connector.tests/.settings/org.eclipse.pde.prefs
new file mode 100644
index 00000000..e8f2d562
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.tests/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.r4e.connector.tests/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..c51e1977
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Mylyn R4E Connector Tests
+Bundle-SymbolicName: org.eclipse.mylyn.reviews.r4e.connector.tests;singleton:=true
+Bundle-Version: 0.13.0.qualifier
+Bundle-Vendor: Eclipse Mylyn
+Fragment-Host: org.eclipse.mylyn.reviews.r4e.connector
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.junit;bundle-version="4.5.0",
+ org.hamcrest;bundle-version="[1.0.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.mylyn.reviews.r4e.core.tests;bundle-version="0.13.0",
+ org.apache.commons.io
+Export-Package: org.eclipse.mylyn.internal.reviews.r4e.connector;x-internal:=true,
+ org.eclipse.mylyn.internal.reviews.r4e.connector.client;x-internal:=true,
+ org.eclipse.mylyn.internal.reviews.r4e.connector.support;x-internal:=true,
+ org.eclipse.mylyn.internal.reviews.r4e.connector.tests;x-internal:=true
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/R4E Connector Core Tests.launch b/org.eclipse.mylyn.reviews.r4e.connector.tests/R4E Connector Core Tests.launch
new file mode 100644
index 00000000..0ee935fe
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/R4E Connector Core Tests.launch
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
+<booleanAttribute key="append.args" value="true"/>
+<stringAttribute key="application" value="org.eclipse.pde.junit.runtime.coretestapplication"/>
+<booleanAttribute key="askclear" value="false"/>
+<booleanAttribute key="automaticAdd" value="false"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<booleanAttribute key="clearws" value="true"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
+<booleanAttribute key="default" value="false"/>
+<booleanAttribute key="includeOptional" value="false"/>
+<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/org.eclipse.mylyn.reviews.r4e.connector.tests"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.mylyn.reviews.r4e.connector.tests"/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.mylyn.reviews.r4e.connector.tests"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<stringAttribute key="product" value="org.eclipse.platform.ide"/>
+<booleanAttribute key="run_in_ui_thread" value="false"/>
+<stringAttribute key="selected_target_plugins" value="com.ibm.icu@default:default,com.jcraft.jsch@default:default,com.sun.syndication@default:default,javax.activation@default:default,javax.annotation@default:default,javax.inject@default:default,javax.mail@default:default,javax.xml@default:default,org.apache.batik.css@default:default,org.apache.batik.util.gui@default:default,org.apache.batik.util@default:default,org.apache.commons.codec@default:default,org.apache.commons.httpclient@default:default,org.apache.commons.io@default:default,org.apache.commons.lang@default:default,org.apache.commons.logging*1.1.1.v201101211721@default:default,org.apache.lucene*1.9.1.v201101211617@default:default,org.apache.lucene*2.9.1.v201101211721@default:default,org.apache.lucene.analysis@default:default,org.apache.lucene.core*2.9.1.v201101211721@default:default,org.apache.lucene.core*3.5.0.v20120319-2345@default:default,org.eclipse.ant.core@default:default,org.eclipse.birt.jetty.overlay@default:false,org.eclipse.compare.core@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.macosx@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net@default:default,org.eclipse.core.resources@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.debug.core@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.ui.bindings@default:default,org.eclipse.e4.ui.css.core@default:default,org.eclipse.e4.ui.css.swt.theme@default:default,org.eclipse.e4.ui.css.swt@default:default,org.eclipse.e4.ui.di@default:default,org.eclipse.e4.ui.model.workbench@default:default,org.eclipse.e4.ui.services@default:default,org.eclipse.e4.ui.widgets@default:default,org.eclipse.e4.ui.workbench.renderers.swt.cocoa@default:false,org.eclipse.e4.ui.workbench.renderers.swt@default:default,org.eclipse.e4.ui.workbench.swt@default:default,org.eclipse.e4.ui.workbench3@default:default,org.eclipse.e4.ui.workbench@default:default,org.eclipse.egit.core@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.ds@1:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.macosx@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.util@default:default,org.eclipse.help.base@default:default,org.eclipse.help@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.jgit@default:default,org.eclipse.mylyn.commons.core@default:default,org.eclipse.mylyn.commons.identity.core@default:default,org.eclipse.mylyn.commons.net@default:default,org.eclipse.mylyn.commons.notifications.core@default:default,org.eclipse.mylyn.commons.notifications.feed@default:default,org.eclipse.mylyn.commons.notifications.ui@default:default,org.eclipse.mylyn.commons.repositories.core@default:default,org.eclipse.mylyn.commons.repositories.ui@default:default,org.eclipse.mylyn.commons.screenshots@default:default,org.eclipse.mylyn.commons.sdk.util@default:default,org.eclipse.mylyn.commons.ui@default:default,org.eclipse.mylyn.commons.workbench@default:default,org.eclipse.mylyn.context.core@default:default,org.eclipse.mylyn.monitor.core@default:default,org.eclipse.mylyn.monitor.ui@default:default,org.eclipse.mylyn.tasks.core@default:default,org.eclipse.mylyn.tasks.ui@default:default,org.eclipse.mylyn.tests.util@default:default,org.eclipse.osgi.services@default:default,org.eclipse.osgi@-1:true,org.eclipse.platform@default:default,org.eclipse.swt.cocoa.macosx.x86_64@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.browser@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.hamcrest.core@default:default,org.hamcrest.integration@default:default,org.hamcrest.library@default:default,org.hamcrest.text@default:default,org.hamcrest@default:default,org.jdom@default:default,org.junit*4.10.0.v4_10_0_v20120426-0900@default:default,org.junit4@default:default,org.mockito@default:default,org.objenesis@default:default,org.w3c.css.sac@default:default,org.w3c.dom.smil@default:default,org.w3c.dom.svg@default:default"/>
+<stringAttribute key="selected_workspace_plugins" value="org.eclipse.mylyn.reviews.VCalendar@default:default,org.eclipse.mylyn.reviews.core.tests@default:false,org.eclipse.mylyn.reviews.core@default:default,org.eclipse.mylyn.reviews.frame.ui@default:default,org.eclipse.mylyn.reviews.notifications@default:default,org.eclipse.mylyn.reviews.r4e.connector.tests@default:false,org.eclipse.mylyn.reviews.r4e.connector@default:default,org.eclipse.mylyn.reviews.r4e.core.tests@default:default,org.eclipse.mylyn.reviews.r4e.core@default:default,org.eclipse.mylyn.reviews.r4e.mail.smtp@default:default,org.eclipse.mylyn.reviews.r4e.transform@default:default,org.eclipse.mylyn.reviews.r4e.ui@default:default,org.eclipse.mylyn.tasks.emf.connector.tests@default:false,org.eclipse.mylyn.tasks.emf.connector@default:default,org.eclipse.mylyn.tasks.emf.example.connector.core@default:default,org.eclipse.mylyn.tasks.emf.example.model@default:default,org.eclipse.mylyn.versions.core@default:default,org.eclipse.mylyn.versions.ui@default:default"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="templateConfig" value="${target_home}/configuration/config.ini"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useCustomFeatures" value="false"/>
+<booleanAttribute key="useDefaultConfig" value="true"/>
+<booleanAttribute key="useDefaultConfigArea" value="false"/>
+<booleanAttribute key="useProduct" value="false"/>
+</launchConfiguration>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/about.html b/org.eclipse.mylyn.reviews.r4e.connector.tests/about.html
new file mode 100644
index 00000000..d774b07c
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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 (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). 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, &quot;Program&quot; 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 (&quot;Redistributor&quot;) 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.r4e.connector.tests/build.properties b/org.eclipse.mylyn.reviews.r4e.connector.tests/build.properties
new file mode 100644
index 00000000..248ba844
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/build.properties
@@ -0,0 +1,7 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ stubs_model/
+src.includes = about.html
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/pom.xml b/org.eclipse.mylyn.reviews.r4e.connector.tests/pom.xml
new file mode 100644
index 00000000..957f9d7a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.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.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4ETaskSchemaTest.java b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4ETaskSchemaTest.java
new file mode 100644
index 00000000..d8cb8c23
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4ETaskSchemaTest.java
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector;
+
+import static org.junit.Assert.assertEquals;
+
+import org.eclipse.mylyn.reviews.connector.EmfTaskSchema;
+import org.eclipse.mylyn.reviews.r4e.core.model.RModelPackage;
+import org.eclipse.mylyn.tasks.core.data.AbstractTaskSchema.Field;
+import org.eclipse.mylyn.tasks.core.data.TaskAttribute;
+import org.junit.Test;
+
+/**
+ * @author Miles Parker
+ */
+public class R4ETaskSchemaTest {
+
+ @Test
+ public void testFeatureKeys() {
+ EmfTaskSchema schema = new R4EConnector().createTaskSchema();
+ schema.initialize();
+
+ Field field = schema.getFieldByFeature(RModelPackage.Literals.R4E_REVIEW__NAME);
+ assertEquals("emf.model.r4ereview.name", field.getKey());
+ assertEquals("shortRichText", field.getType());
+
+ field = schema.getFieldByFeature(RModelPackage.Literals.R4E_REVIEW__CREATED_BY);
+ assertEquals("emf.model.r4ereview.createdby", field.getKey());
+ assertEquals("person", field.getType());
+
+ field = schema.getFieldByFeature(RModelPackage.Literals.R4E_REVIEW__DUE_DATE);
+ assertEquals("emf.model.r4ereview.duedate", field.getKey());
+ assertEquals("date", field.getType());
+
+ field = schema.getFieldByFeature(RModelPackage.Literals.R4E_REVIEW__END_DATE);
+ assertEquals("emf.model.r4ereview.enddate", field.getKey());
+ assertEquals("date", field.getType());
+ }
+
+ @Test
+ public void testMappedKeys() {
+ EmfTaskSchema schema = new R4EConnector().createTaskSchema();
+ schema.initialize();
+
+ String key = schema.getKey(schema.getFeature(TaskAttribute.SUMMARY));
+ assertEquals("emf.model.r4ereview.name", key);
+
+ key = schema.getKey(schema.getFeature(TaskAttribute.DATE_COMPLETION));
+ assertEquals("emf.model.r4ereview.enddate", key);
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/client/R4EClientTest.java b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/client/R4EClientTest.java
new file mode 100644
index 00000000..69bd7c14
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/client/R4EClientTest.java
@@ -0,0 +1,137 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.client;
+
+import static org.hamcrest.Matchers.instanceOf;
+import static org.hamcrest.Matchers.is;
+import static org.hamcrest.Matchers.startsWith;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertThat;
+
+import java.io.File;
+import java.util.Calendar;
+import java.util.TimeZone;
+
+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.r4e.connector.R4EClient;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnector;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.support.R4EFixture;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.support.R4EHarness;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.tests.R4ETestConstants;
+import org.eclipse.mylyn.reviews.connector.EmfConfiguration;
+import org.eclipse.mylyn.reviews.connector.client.EmfClient;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EReview;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EReviewGroup;
+import org.eclipse.mylyn.reviews.r4e.core.model.RModelPackage;
+import org.eclipse.mylyn.tasks.core.data.TaskData;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Unit tests for {@link EmfClient}.
+ *
+ * @author Miles Parker
+ * @author Alvaro Sanchez-Leon
+ */
+public class R4EClientTest {
+ private R4EClient client;
+
+ private R4EHarness harness;
+
+ private URI testRootURI;
+
+ private R4EConnector connector;
+
+ @Before
+ public void setUp() throws Exception {
+
+ String base = System.getProperty("java.io.tmpdir");
+ if (!base.endsWith(File.separator)) {
+ base = base + File.separator;
+ }
+
+ File rootDir = new File(base + "r4eCoreTest");
+
+ // Resolve golden group storage dir
+ URI file = R4ETestConstants.TEST_GROUP_URI;
+ String rootFile = file.lastSegment();
+ File goldenDir = new File(URI.decode(file.trimSegments(1).devicePath()));
+
+ // Take the directory name to be used as copy destination
+ String testDir = rootDir.toString() + "OutL1" + File.separator + "OutL2" + File.separator + goldenDir.getName();
+ File fTestDir = new File(testDir);
+
+ // Determine the location of the group file in the destination folder
+ testRootURI = URI.createFileURI(fTestDir.getAbsolutePath());
+ testRootURI = testRootURI.appendSegment(rootFile);
+
+ // Copy golden dir to test dir
+ FileUtils.copyDirectory(goldenDir, fTestDir);
+ harness = new R4EFixture(testRootURI.toString(), "1.0.0", "").harness();
+ client = harness.client();
+ connector = new R4EConnector();
+ client.updateConfiguration(new NullProgressMonitor());
+ assertThat(client.getRootContainer(), instanceOf(R4EReviewGroup.class));
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ harness.dispose();
+ }
+
+ @Test
+ public void testRefreshConfig() throws Exception {
+ EmfConfiguration config = client.updateConfiguration(new NullProgressMonitor());
+ assertNotNull(config);
+ }
+
+ @Test
+ public void testChangeUrlConfig() throws Exception {
+ EmfConfiguration config = client.updateConfiguration(new NullProgressMonitor());
+// client.getRepository().setRepositoryUrl(repositoryUrl);
+ assertNotNull(config);
+ }
+
+ @Test
+ public void testGetReview() throws CoreException {
+ EObject object = connector.getTaskObject(client.getRepository(), "0", new NullProgressMonitor());
+ assertThat(object, instanceOf(R4EReview.class));
+ R4EReview r4eReview = (R4EReview) object;
+ assertThat(r4eReview.getName(), startsWith("Review"));
+ Calendar pst = Calendar.getInstance(TimeZone.getTimeZone("PST"));
+ pst.set(1867, 6, 2, 21, 0, 0);
+ long testTime = pst.getTime().getTime();
+ long reviewTime = r4eReview.getEndDate().getTime();
+ assertThat(pst.getTime().getYear(), is(r4eReview.getEndDate().getYear()));
+ assertThat(pst.getTime().getMonth(), is(r4eReview.getEndDate().getMonth()));
+ assertThat(pst.getTime().getDay(), is(r4eReview.getEndDate().getDay()));
+ }
+
+ @Test
+ public void testPullTaskData() throws CoreException {
+ TaskData taskData = connector.getTaskData(client.getRepository(), "0", new NullProgressMonitor());
+ String id = connector.getSchema().getKey(RModelPackage.Literals.R4E_REVIEW__NAME);
+ assertThat(taskData.getRoot().getAttribute(id).getValue(), startsWith("Review"));
+ id = connector.getSchema().getKey(RModelPackage.Literals.R4E_REVIEW__END_DATE);
+ Calendar pst = Calendar.getInstance(TimeZone.getTimeZone("PST"));
+ pst.set(1867, 6, 2, 21, 0);
+ assertThat(taskData.getRoot().getAttribute(id).getValue(), startsWith(pst.get(Calendar.YEAR) + "-"));
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EFixture.java b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EFixture.java
new file mode 100644
index 00000000..8abd8a1c
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EFixture.java
@@ -0,0 +1,61 @@
+/*******************************************************************************
+ * Copyright (c) 2013 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.internal.reviews.r4e.connector.support;
+
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnector;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.tests.R4ETestConstants;
+import org.eclipse.mylyn.tests.util.TestFixture;
+
+/**
+ * @author Steffen Pingel
+ * @author Miles Parker
+ */
+public class R4EFixture extends TestFixture {
+
+ public static R4EFixture R4E_GIT_TEST = new R4EFixture(R4ETestConstants.TEST_REVIEW_GROUP_URI, "1.0.0", ""); //$NON-NLS-1$ //$NON-NLS-2$
+
+ public static R4EFixture DEFAULT = R4E_GIT_TEST;
+
+ private static R4EFixture current;
+
+ public R4EFixture(String url, String version, String description) {
+ super(R4EConnector.CONNECTOR_KIND, url);
+ setInfo(url, version, description);
+ }
+
+ public static R4EFixture current() {
+ if (current == null) {
+ DEFAULT.activate();
+ }
+ return current;
+ }
+
+ @Override
+ protected R4EFixture activate() {
+ current = this;
+ setUpFramework();
+ return this;
+ }
+
+ @Override
+ protected R4EFixture getDefault() {
+ return DEFAULT;
+ }
+
+ public R4EHarness harness() {
+ return new R4EHarness(this);
+ }
+
+ public boolean canAuthenticate() {
+ return true;
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EHarness.java b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EHarness.java
new file mode 100644
index 00000000..daca840f
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/support/R4EHarness.java
@@ -0,0 +1,36 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.support;
+
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EClient;
+import org.eclipse.mylyn.tasks.core.TaskRepository;
+
+/**
+ * @author Miles Parker
+ */
+public class R4EHarness {
+
+ private final R4EFixture fixture;
+
+ public R4EHarness(R4EFixture fixture) {
+ this.fixture = fixture;
+ }
+
+ public R4EClient client() {
+ return new R4EClient(new TaskRepository(fixture.getConnectorKind(), fixture.getRepositoryUrl()));
+ }
+
+ public void dispose() {
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/tests/R4ETestConstants.java b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/tests/R4ETestConstants.java
new file mode 100644
index 00000000..78f11979
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/src/org/eclipse/mylyn/internal/reviews/r4e/connector/tests/R4ETestConstants.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.tests;
+
+import org.eclipse.emf.common.util.URI;
+
+/**
+ * @author Miles Parker
+ */
+public class R4ETestConstants {
+ public final static String TEST_REVIEW_GROUP_URI = "data/TestReviewGroup_group_root.xrer";
+
+ //public final static String TEST_REVIEW_GROUP_URI = "file:///Users/milesparker/git/org.eclipse.mylyn.reviews.r4e/org.eclipse.mylyn.reviews.r4e.connector.tests/data/TestReviewGroup_group_root.xrer";
+ public static final URI TEST_GROUP_URI = URI.createFileURI("stubs_model/outGroupX/Golden_Group_group_root.xrer");
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Golden_Group_group_root.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Golden_Group_group_root.xrer
new file mode 100644
index 00000000..8571677a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Golden_Group_group_root.xrer
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReviewGroup xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_xxzSQERCEeC2DrmWDHmN2w" description="This is sample description - Group level" fragmentVersion="2.0.0" name="Golden Group" defaultEntryCriteria="-Entry Criteria">
+ <reviewGroupTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_x0s1QERCEeC2DrmWDHmN2w" taskId="324327" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324327"/>
+ <availableProjects>P1</availableProjects>
+ <availableProjects>P2</availableProjects>
+ <availableProjects>P3</availableProjects>
+ <availableComponents>Component1</availableComponents>
+ <availableComponents>Component2</availableComponents>
+ <availableComponents>Component3</availableComponents>
+ <designRuleLocations xsi:nil="true"/>
+ <availableAnomalyTypes xmi:id="_x0uqcERCEeC2DrmWDHmN2w" type="Erroneous"/>
+ <availableAnomalyTypes xmi:id="_x0uqckRCEeC2DrmWDHmN2w" type="Superflous"/>
+ <availableAnomalyTypes xmi:id="_x0uqdERCEeC2DrmWDHmN2w" type="Improvement"/>
+ <availableAnomalyTypes xmi:id="_x0uqdkRCEeC2DrmWDHmN2w" type="Question"/>
+</r4ecore:R4EReviewGroup>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Jerry20_group_reviews.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Jerry20_group_reviews.xrer
new file mode 100644
index 00000000..af802ddb
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Jerry20_group_reviews.xrer
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EUserReviews xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_x6UVEkRCEeC2DrmWDHmN2w" name="Jerry20">
+ <invitedToMap xmi:id="_x6UVFERCEeC2DrmWDHmN2w" key="ReviewSampl">
+ <value href="ReviewSampl/ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ </invitedToMap>
+ <invitedToMap xmi:id="_yD1dc0RCEeC2DrmWDHmN2w" key="ReviewTwo">
+ <value href="ReviewTwo/ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ </invitedToMap>
+ <group href="Golden_Group_group_root.xrer#_xxzSQERCEeC2DrmWDHmN2w"/>
+</r4ecore:R4EUserReviews>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/Review1_review.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/Review1_review.xrer
new file mode 100644
index 00000000..4639e400
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/Review1_review.xrer
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_x0yU0ERCEeC2DrmWDHmN2w" fragmentVersion="2.0.0" name="Review1" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500">
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_x2N4MERCEeC2DrmWDHmN2w"/>
+ <createdBy href="lmcalvs_comments.xrer#_x02mQURCEeC2DrmWDHmN2w"/>
+</r4ecore:R4EReview>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/lmcalvs_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/lmcalvs_comments.xrer
new file mode 100644
index 00000000..7078fea6
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Review1/lmcalvs_comments.xrer
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EParticipant xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_x02mQURCEeC2DrmWDHmN2w" id="lmcalvs" reviewCreatedByMe="true">
+ <reviewInstance href="Review1_review.xrer#_x0yU0ERCEeC2DrmWDHmN2w"/>
+ <roles>ORGANIZER</roles>
+</r4ecore:R4EParticipant>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_comments.xrer
new file mode 100644
index 00000000..9ccb0f19
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_comments.xrer
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_x6UVEURCEeC2DrmWDHmN2w" id="Jerry20" sequenceIDCounter="15" focusArea="Feature" isPartOfDecision="true">
+ <addedComments href="#_x78swERCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_x8TSEERCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_x8YKkURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yAWroERCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yA9voURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yBmo0URCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yCRXMERCEeC2DrmWDHmN2w"/>
+ <reviewInstance href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_x7ahQERCEeC2DrmWDHmN2w" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_x7bIUERCEeC2DrmWDHmN2w" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_x78swERCEeC2DrmWDHmN2w" author="_x6UVEURCEeC2DrmWDHmN2w" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_x7-h8ERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_x78swURCEeC2DrmWDHmN2w" sequenceID="1" userID="Jerry20"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_x7-h8ERCEeC2DrmWDHmN2w" info="Write any information here">
+ <location href="#_x8DacERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_x8DacERCEeC2DrmWDHmN2w" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_x8HE0ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_x8HE0ERCEeC2DrmWDHmN2w" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_x8TSEERCEeC2DrmWDHmN2w" author="_x6UVEURCEeC2DrmWDHmN2w" description="This is test comment number 1" createdOn="2011-03-01T15:30:43.121-0500">
+ <id xmi:id="_x8T5IERCEeC2DrmWDHmN2w" sequenceID="2" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_x7h2AERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_x8YKkURCEeC2DrmWDHmN2w" author="_x6UVEURCEeC2DrmWDHmN2w" description="This is test comment number 2" createdOn="2011-03-01T15:30:43.129-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_x8YKkERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_x8YKkkRCEeC2DrmWDHmN2w" sequenceID="3" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_x7h2AERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_items.xrer
new file mode 100644
index 00000000..a32c2f3a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Jerry20_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_yAWroERCEeC2DrmWDHmN2w" description="Jerry20-Item to review 11" addedById="Jerry20" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yAWroURCEeC2DrmWDHmN2w" sequenceID="4" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_x6UVEURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yArbwERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yArbwERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yArbwURCEeC2DrmWDHmN2w" sequenceID="5" userID="Jerry20"/>
+ <deltas href="#_yAw7UURCEeC2DrmWDHmN2w"/>
+ <base href="#_yAt4AERCEeC2DrmWDHmN2w"/>
+ <target href="#_yAvtMERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yAt4AERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019327" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_yAvtMERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019328" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_yAw7UURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yAw7UkRCEeC2DrmWDHmN2w" sequenceID="6" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yAywgERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yA43IERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yAywgERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yA0lsERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yA0lsERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yA43IERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yA6sUERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yA6sUERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yA9voURCEeC2DrmWDHmN2w" description="Jerry20-Item to review 12" addedById="Jerry20" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yA9vokRCEeC2DrmWDHmN2w" sequenceID="7" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_x6UVEURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yBIHsERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yBIHsERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yBIHsURCEeC2DrmWDHmN2w" sequenceID="8" userID="Jerry20"/>
+ <deltas href="#_yBTG0URCEeC2DrmWDHmN2w"/>
+ <base href="#_yBLyEERCEeC2DrmWDHmN2w"/>
+ <target href="#_yBQqkERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yBLyEERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019328" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_yBQqkERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019329" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_yBTG0URCEeC2DrmWDHmN2w">
+ <id xmi:id="_yBTG0kRCEeC2DrmWDHmN2w" sequenceID="9" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yBU8AERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yBbCoERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yBU8AERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yBXYQERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yBXYQERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yBbCoERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yBjlgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yBjlgERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yBmo0URCEeC2DrmWDHmN2w" description="Jerry20-Item to review 21" addedById="Jerry20" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yBmo0kRCEeC2DrmWDHmN2w" sequenceID="10" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_x6UVEURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yBsvcERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yBsvcERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yBtWgERCEeC2DrmWDHmN2w" sequenceID="11" userID="Jerry20"/>
+ <deltas href="#_yB7Y8URCEeC2DrmWDHmN2w"/>
+ <base href="#_yBvLsERCEeC2DrmWDHmN2w"/>
+ <target href="#_yBzdIERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yBvLsERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019358" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_yBzdIERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019359" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_yB7Y8URCEeC2DrmWDHmN2w">
+ <id xmi:id="_yB7Y8kRCEeC2DrmWDHmN2w" sequenceID="12" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yCFJ8ERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yCL3oERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yCFJ8ERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yCHmMERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yCHmMERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yCL3oERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yCOT4ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yCOT4ERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yCRXMERCEeC2DrmWDHmN2w" description="Jerry20-Item to review 22" addedById="Jerry20" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yCRXMURCEeC2DrmWDHmN2w" sequenceID="13" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_x6UVEURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yCW2wERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yCW2wERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yCXd0ERCEeC2DrmWDHmN2w" sequenceID="14" userID="Jerry20"/>
+ <deltas href="#_yCic8URCEeC2DrmWDHmN2w"/>
+ <base href="#_yCZ6EERCEeC2DrmWDHmN2w"/>
+ <target href="#_yCeLgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yCZ6EERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019359" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_yCeLgERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019360" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_yCic8URCEeC2DrmWDHmN2w">
+ <id xmi:id="_yCic8kRCEeC2DrmWDHmN2w" sequenceID="15" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yCqYwERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yCxtgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yCqYwERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yCtcEERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yCtcEERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yCxtgERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yC3NEERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yC3NEERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/ReviewSampl_review.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/ReviewSampl_review.xrer
new file mode 100644
index 00000000..62b359f4
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/ReviewSampl_review.xrer
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_x22KUERCEeC2DrmWDHmN2w" fragmentVersion="2.0.0" name="ReviewSampl" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="INFORMAL">
+ <reviewTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_yC9TskRCEeC2DrmWDHmN2w" taskId="324328" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324328"/>
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_yC9TsURCEeC2DrmWDHmN2w" state="PREPARATION"/>
+ <components>Component1</components>
+ <decision xmi:id="_yC9TsERCEeC2DrmWDHmN2w" spentTime="120" value="ACCEPTED"/>
+ <createdBy href="Tom10_comments.xrer#_x22xYERCEeC2DrmWDHmN2w"/>
+</r4ecore:R4EReview>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_comments.xrer
new file mode 100644
index 00000000..fdfbf986
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_comments.xrer
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_x22xYERCEeC2DrmWDHmN2w" id="Tom10" sequenceIDCounter="15" reviewCreatedByMe="true" focusArea="Performance" isPartOfDecision="true">
+ <addedComments href="#_x7h2AERCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_x8LWQERCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_x8PAoURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_x8jwwURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_x9pV4URCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_x-QZ4URCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_x_RtkURCEeC2DrmWDHmN2w"/>
+ <reviewInstance href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <roles>ORGANIZER</roles>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_x6Sf4ERCEeC2DrmWDHmN2w" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_x6Sf4URCEeC2DrmWDHmN2w" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_x7h2AERCEeC2DrmWDHmN2w" author="_x22xYERCEeC2DrmWDHmN2w" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_x7s1IERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_x7k5UERCEeC2DrmWDHmN2w" sequenceID="1" userID="Tom10"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_x7s1IERCEeC2DrmWDHmN2w" info="Write any information here">
+ <location href="#_x7yUsERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_x7yUsERCEeC2DrmWDHmN2w" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_x74bUERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_x74bUERCEeC2DrmWDHmN2w" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_x8LWQERCEeC2DrmWDHmN2w" author="_x22xYERCEeC2DrmWDHmN2w" description="This is test comment number 1" createdOn="2011-03-01T15:30:43.108-0500">
+ <id xmi:id="_x8L9UERCEeC2DrmWDHmN2w" sequenceID="2" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_x78swERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_x8PAoURCEeC2DrmWDHmN2w" author="_x22xYERCEeC2DrmWDHmN2w" description="This is test comment number 2" createdOn="2011-03-01T15:30:43.114-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_x8PAoERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_x8PAokRCEeC2DrmWDHmN2w" sequenceID="3" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_x78swERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_items.xrer
new file mode 100644
index 00000000..db32c1d0
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewSampl/Tom10_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_x8jwwURCEeC2DrmWDHmN2w" description="Tom10-Item to review 11" addedById="Tom10" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_x8jwwkRCEeC2DrmWDHmN2w" sequenceID="4" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_x22xYERCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_x9BDwERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_x9BDwERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_x9Bq0ERCEeC2DrmWDHmN2w" sequenceID="5" userID="Tom10"/>
+ <deltas href="#_x9Lb0URCEeC2DrmWDHmN2w"/>
+ <base href="#_x9DgAERCEeC2DrmWDHmN2w"/>
+ <target href="#_x9GjUERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_x9DgAERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978412" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_x9GjUERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978411" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_x9Lb0URCEeC2DrmWDHmN2w">
+ <id xmi:id="_x9Lb0kRCEeC2DrmWDHmN2w" sequenceID="6" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_x9Vz4ERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_x9j2UERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_x9Vz4ERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_x9haEERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_x9haEERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_x9j2UERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_x9lrgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_x9lrgERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_x9pV4URCEeC2DrmWDHmN2w" description="Tom10-Item to review 12" addedById="Tom10" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_x9pV4kRCEeC2DrmWDHmN2w" sequenceID="7" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_x22xYERCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_x91jIERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_x91jIERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_x91jIURCEeC2DrmWDHmN2w" sequenceID="8" userID="Tom10"/>
+ <deltas href="#_x9-GAURCEeC2DrmWDHmN2w"/>
+ <base href="#_x950kERCEeC2DrmWDHmN2w"/>
+ <target href="#_x97pwERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_x950kERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978411" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_x97pwERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978410" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_x9-GAURCEeC2DrmWDHmN2w">
+ <id xmi:id="_x9-GAkRCEeC2DrmWDHmN2w" sequenceID="9" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_x-BwYERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_x-JsMERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_x-BwYERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_x-GB0ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_x-GB0ERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_x-JsMERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_x-MvgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_x-MvgERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_x-QZ4URCEeC2DrmWDHmN2w" description="Tom10-Item to review 21" addedById="Tom10" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_x-QZ4kRCEeC2DrmWDHmN2w" sequenceID="10" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_x22xYERCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_x-V5cERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_x-V5cERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_x-V5cURCEeC2DrmWDHmN2w" sequenceID="11" userID="Tom10"/>
+ <deltas href="#_x-u7AURCEeC2DrmWDHmN2w"/>
+ <base href="#_x-Zj0ERCEeC2DrmWDHmN2w"/>
+ <target href="#_x-ecUERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_x-Zj0ERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978381" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_x-ecUERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978380" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_x-u7AURCEeC2DrmWDHmN2w">
+ <id xmi:id="_x-u7AkRCEeC2DrmWDHmN2w" sequenceID="12" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_x-0akERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_x_E5QERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_x-0akERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_x--yoERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_x--yoERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_x_E5QERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_x_H8kERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_x_H8kERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_x_RtkURCEeC2DrmWDHmN2w" description="Tom10-Item to review 22" addedById="Tom10" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_x_RtkkRCEeC2DrmWDHmN2w" sequenceID="13" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_x22xYERCEeC2DrmWDHmN2w"/>
+ <review href="ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_x_XNIERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_x_XNIERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_x_XNIURCEeC2DrmWDHmN2w" sequenceID="14" userID="Tom10"/>
+ <deltas href="#_x_kBcURCEeC2DrmWDHmN2w"/>
+ <base href="#_x_cssERCEeC2DrmWDHmN2w"/>
+ <target href="#_x_fwAERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_x_cssERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978380" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_x_fwAERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978379" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_x_kBcURCEeC2DrmWDHmN2w">
+ <id xmi:id="_x_kBckRCEeC2DrmWDHmN2w" sequenceID="15" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_x_mdsERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_x_5_sERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_x_mdsERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_x_uZgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_x_uZgERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_x_5_sERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yAOv0ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yAOv0ERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_comments.xrer
new file mode 100644
index 00000000..94316799
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_comments.xrer
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_yD1dckRCEeC2DrmWDHmN2w" id="Jerry20" sequenceIDCounter="15" focusArea="Feature" isPartOfDecision="true">
+ <addedComments href="#_yEoHoERCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_yFC-YERCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_yFGBsURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yH-9oURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yIod4URCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yI5joURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Jerry20_items.xrer#_yJW2oERCEeC2DrmWDHmN2w"/>
+ <reviewInstance href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_yEe9sERCEeC2DrmWDHmN2w" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_yEe9sURCEeC2DrmWDHmN2w" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_yEoHoERCEeC2DrmWDHmN2w" author="_yD1dckRCEeC2DrmWDHmN2w" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_yEp80ERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_yEoHoURCEeC2DrmWDHmN2w" sequenceID="1" userID="Jerry20"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_yEp80ERCEeC2DrmWDHmN2w" info="Write any information here">
+ <location href="#_yEuOQERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_yEuOQERCEeC2DrmWDHmN2w" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_yE0U4ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_yE0U4ERCEeC2DrmWDHmN2w" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_yFC-YERCEeC2DrmWDHmN2w" author="_yD1dckRCEeC2DrmWDHmN2w" description="This is test comment number 1" createdOn="2011-03-01T15:30:44.038-0500">
+ <id xmi:id="_yFC-YURCEeC2DrmWDHmN2w" sequenceID="2" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_yEe9skRCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_yFGBsURCEeC2DrmWDHmN2w" author="_yD1dckRCEeC2DrmWDHmN2w" description="This is test comment number 2" createdOn="2011-03-01T15:30:44.043-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_yFGBsERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_yFGBskRCEeC2DrmWDHmN2w" sequenceID="3" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_yEe9skRCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_items.xrer
new file mode 100644
index 00000000..abad5d78
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Jerry20_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_yH-9oURCEeC2DrmWDHmN2w" description="Jerry20-Item to review 11" addedById="Jerry20" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yH-9okRCEeC2DrmWDHmN2w" sequenceID="4" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_yD1dckRCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yIabcERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yIabcERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yIabcURCEeC2DrmWDHmN2w" sequenceID="5" userID="Jerry20"/>
+ <deltas href="#_yIes4URCEeC2DrmWDHmN2w"/>
+ <base href="#_yIbpkERCEeC2DrmWDHmN2w"/>
+ <target href="#_yIdewERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yIbpkERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019327" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_yIdewERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019328" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_yIes4URCEeC2DrmWDHmN2w">
+ <id xmi:id="_yIes4kRCEeC2DrmWDHmN2w" sequenceID="6" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yIhJIERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yIkzgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yIhJIERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yIi-UERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yIi-UERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yIkzgERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yImosERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yImosERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yIod4URCEeC2DrmWDHmN2w" description="Jerry20-Item to review 12" addedById="Jerry20" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yIod4kRCEeC2DrmWDHmN2w" sequenceID="7" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_yD1dckRCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yIsIQERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yIsIQERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yIsIQURCEeC2DrmWDHmN2w" sequenceID="8" userID="Jerry20"/>
+ <deltas href="#_yIxAwURCEeC2DrmWDHmN2w"/>
+ <base href="#_yIt9cERCEeC2DrmWDHmN2w"/>
+ <target href="#_yIvLkERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yIt9cERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019328" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_yIvLkERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019329" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_yIxAwURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yIxAwkRCEeC2DrmWDHmN2w" sequenceID="9" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yIy18ERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yI15QERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yIy18ERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yI0rIERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yI0rIERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yI15QERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yI4VgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yI4VgERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yI5joURCEeC2DrmWDHmN2w" description="Jerry20-Item to review 21" addedById="Jerry20" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yI5jokRCEeC2DrmWDHmN2w" sequenceID="10" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_yD1dckRCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yI9OAERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yI9OAERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yI9OAURCEeC2DrmWDHmN2w" sequenceID="11" userID="Jerry20"/>
+ <deltas href="#_yJEiwURCEeC2DrmWDHmN2w"/>
+ <base href="#_yI_qQERCEeC2DrmWDHmN2w"/>
+ <target href="#_yJCGgERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yI_qQERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019358" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_yJCGgERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019359" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_yJEiwURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yJEiwkRCEeC2DrmWDHmN2w" sequenceID="12" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yJG_AERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yJMekERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yJG_AERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yJKCUERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yJKCUERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yJMekERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yJR-IERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yJR-IERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yJW2oERCEeC2DrmWDHmN2w" description="Jerry20-Item to review 22" addedById="Jerry20" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yJW2oURCEeC2DrmWDHmN2w" sequenceID="13" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_yD1dckRCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yJcWMERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yJcWMERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yJc9QERCEeC2DrmWDHmN2w" sequenceID="14" userID="Jerry20"/>
+ <deltas href="#_yJqYoURCEeC2DrmWDHmN2w"/>
+ <base href="#_yJgnoERCEeC2DrmWDHmN2w"/>
+ <target href="#_yJjq8ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yJgnoERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019359" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_yJjq8ERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019360" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_yJqYoURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yJqYokRCEeC2DrmWDHmN2w" sequenceID="15" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yJuqEERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yJ1-0ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yJuqEERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yJyUcERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yJyUcERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yJ1-0ERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yJ5pMERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yJ5pMERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/ReviewTwo_review.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/ReviewTwo_review.xrer
new file mode 100644
index 00000000..91259f45
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/ReviewTwo_review.xrer
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_yC9Ts0RCEeC2DrmWDHmN2w" fragmentVersion="2.0.0" name="ReviewTwo" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="INFORMAL">
+ <reviewTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_yKAW4kRCEeC2DrmWDHmN2w" taskId="324328" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324328"/>
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_yKAW4URCEeC2DrmWDHmN2w" state="PREPARATION"/>
+ <components>Component1</components>
+ <decision xmi:id="_yKAW4ERCEeC2DrmWDHmN2w" spentTime="120" value="ACCEPTED"/>
+ <createdBy href="Tom10_comments.xrer#_yC96wURCEeC2DrmWDHmN2w"/>
+</r4ecore:R4EReview>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_comments.xrer
new file mode 100644
index 00000000..aaad1a81
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_comments.xrer
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_yC96wURCEeC2DrmWDHmN2w" id="Tom10" sequenceIDCounter="15" reviewCreatedByMe="true" focusArea="Performance" isPartOfDecision="true">
+ <addedComments href="#_yEe9skRCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_yE5NYERCEeC2DrmWDHmN2w"/>
+ <addedComments href="#_yE_UAURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_yFJFAURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_yF8WQURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_yGxcsURCEeC2DrmWDHmN2w"/>
+ <addedItems href="Tom10_items.xrer#_yHaV4URCEeC2DrmWDHmN2w"/>
+ <reviewInstance href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <roles>ORGANIZER</roles>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_yD02YERCEeC2DrmWDHmN2w" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_yD1dcERCEeC2DrmWDHmN2w" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_yEe9skRCEeC2DrmWDHmN2w" author="_yC96wURCEeC2DrmWDHmN2w" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_yEjPIERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_yEe9s0RCEeC2DrmWDHmN2w" sequenceID="1" userID="Tom10"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_yEjPIERCEeC2DrmWDHmN2w" info="Write any information here">
+ <location href="#_yElEUERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_yElEUERCEeC2DrmWDHmN2w" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_yEm5gERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_yEm5gERCEeC2DrmWDHmN2w" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_yE5NYERCEeC2DrmWDHmN2w" author="_yC96wURCEeC2DrmWDHmN2w" description="This is test comment number 1" createdOn="2011-03-01T15:30:44.022-0500">
+ <id xmi:id="_yE5NYURCEeC2DrmWDHmN2w" sequenceID="2" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_yEoHoERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_yE_UAURCEeC2DrmWDHmN2w" author="_yC96wURCEeC2DrmWDHmN2w" description="This is test comment number 2" createdOn="2011-03-01T15:30:44.032-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_yE_UAERCEeC2DrmWDHmN2w"/>
+ <id xmi:id="_yE_7EERCEeC2DrmWDHmN2w" sequenceID="3" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_yEoHoERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_items.xrer
new file mode 100644
index 00000000..942d8f74
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/ReviewTwo/Tom10_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_yFJFAURCEeC2DrmWDHmN2w" description="Tom10-Item to review 11" addedById="Tom10" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yFJFAkRCEeC2DrmWDHmN2w" sequenceID="4" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_yC96wURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yFhfgERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yFhfgERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yFhfgURCEeC2DrmWDHmN2w" sequenceID="5" userID="Tom10"/>
+ <deltas href="#_yFm_EURCEeC2DrmWDHmN2w"/>
+ <base href="#_yFjUsERCEeC2DrmWDHmN2w"/>
+ <target href="#_yFlJ4ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yFjUsERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978412" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_yFlJ4ERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978411" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_yFm_EURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yFnmIERCEeC2DrmWDHmN2w" sequenceID="6" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yFqCYERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yFwwEERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yFqCYERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yFu64ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yFu64ERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yFwwEERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yF2PoERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yF2PoERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yF8WQURCEeC2DrmWDHmN2w" description="Tom10-Item to review 12" addedById="Tom10" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yF8WQkRCEeC2DrmWDHmN2w" sequenceID="7" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_yC96wURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yGDrAERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yGDrAERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yGDrAURCEeC2DrmWDHmN2w" sequenceID="8" userID="Tom10"/>
+ <deltas href="#_yGPRMURCEeC2DrmWDHmN2w"/>
+ <base href="#_yGIjgERCEeC2DrmWDHmN2w"/>
+ <target href="#_yGLm0ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yGIjgERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978411" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_yGLm0ERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978410" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_yGPRMURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yGPRMkRCEeC2DrmWDHmN2w" sequenceID="9" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yGRGYERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yGrWEERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yGRGYERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yGl2gERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yGl2gERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yGrWEERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yGtLQERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yGtLQERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yGxcsURCEeC2DrmWDHmN2w" description="Tom10-Item to review 21" addedById="Tom10" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yGxcskRCEeC2DrmWDHmN2w" sequenceID="10" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_yC96wURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yG2VMERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yG2VMERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yG2VMURCEeC2DrmWDHmN2w" sequenceID="11" userID="Tom10"/>
+ <deltas href="#_yHMTcURCEeC2DrmWDHmN2w"/>
+ <base href="#_yG-RAERCEeC2DrmWDHmN2w"/>
+ <target href="#_yHGM0ERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yG-RAERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978381" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_yHGM0ERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978380" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_yHMTcURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yHMTckRCEeC2DrmWDHmN2w" sequenceID="12" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yHPWwERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yHWEcERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yHPWwERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yHRzAERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yHRzAERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yHWEcERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yHYgsERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yHYgsERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_yHaV4URCEeC2DrmWDHmN2w" description="Tom10-Item to review 22" addedById="Tom10" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_yHaV4kRCEeC2DrmWDHmN2w" sequenceID="13" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_yC96wURCEeC2DrmWDHmN2w"/>
+ <review href="ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ <fileContextList href="#_yHhDkERCEeC2DrmWDHmN2w"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_yHhDkERCEeC2DrmWDHmN2w" type="ADDED">
+ <id xmi:id="_yHhDkURCEeC2DrmWDHmN2w" sequenceID="14" userID="Tom10"/>
+ <deltas href="#_yHqNgURCEeC2DrmWDHmN2w"/>
+ <base href="#_yHlVAERCEeC2DrmWDHmN2w"/>
+ <target href="#_yHnxQERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_yHlVAERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978380" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_yHnxQERCEeC2DrmWDHmN2w" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978379" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_yHqNgURCEeC2DrmWDHmN2w">
+ <id xmi:id="_yHqNgkRCEeC2DrmWDHmN2w" sequenceID="15" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_yHue8ERCEeC2DrmWDHmN2w"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_yH6FIERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_yHue8ERCEeC2DrmWDHmN2w" info="information for base content" content="base content">
+ <location href="#_yHw7MERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yHw7MERCEeC2DrmWDHmN2w" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_yH6FIERCEeC2DrmWDHmN2w" info="information for target content" content="target content">
+ <location href="#_yH8hYERCEeC2DrmWDHmN2w"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_yH8hYERCEeC2DrmWDHmN2w" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Tom10_group_reviews.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Tom10_group_reviews.xrer
new file mode 100644
index 00000000..f59c3f4b
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/Tom10_group_reviews.xrer
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EUserReviews xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_x22xYURCEeC2DrmWDHmN2w" name="Tom10">
+ <invitedToMap xmi:id="_x22xY0RCEeC2DrmWDHmN2w" key="ReviewSampl">
+ <value href="ReviewSampl/ReviewSampl_review.xrer#_x22KUERCEeC2DrmWDHmN2w"/>
+ </invitedToMap>
+ <invitedToMap xmi:id="_yC96wkRCEeC2DrmWDHmN2w" key="ReviewTwo">
+ <value href="ReviewTwo/ReviewTwo_review.xrer#_yC9Ts0RCEeC2DrmWDHmN2w"/>
+ </invitedToMap>
+ <group href="Golden_Group_group_root.xrer#_xxzSQERCEeC2DrmWDHmN2w"/>
+ <createdReviews>ReviewSampl</createdReviews>
+ <createdReviews>ReviewTwo</createdReviews>
+</r4ecore:R4EUserReviews>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/lmcalvs_group_reviews.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/lmcalvs_group_reviews.xrer
new file mode 100644
index 00000000..2a6f3161
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupW/lmcalvs_group_reviews.xrer
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EUserReviews xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_x030YERCEeC2DrmWDHmN2w" name="lmcalvs">
+ <invitedToMap xmi:id="_x04bcURCEeC2DrmWDHmN2w" key="Review1">
+ <value href="Review1/Review1_review.xrer#_x0yU0ERCEeC2DrmWDHmN2w"/>
+ </invitedToMap>
+ <group href="Golden_Group_group_root.xrer#_xxzSQERCEeC2DrmWDHmN2w"/>
+ <createdReviews>Review1</createdReviews>
+</r4ecore:R4EUserReviews>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer
new file mode 100755
index 00000000..07333334
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReviewGroup xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_UQxKYERPEeC0spkCnDexvg" description="This is sample description - Group level" fragmentVersion="2.0.0" name="Golden Group" defaultEntryCriteria="-Entry Criteria">
+ <reviewGroupTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_ozavEERPEeC0spkCnDexvg" taskId="324327" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324327"/>
+ <availableProjects>P1</availableProjects>
+ <availableProjects>P2</availableProjects>
+ <availableProjects>P3</availableProjects>
+ <availableComponents>Component1</availableComponents>
+ <availableComponents>Component2</availableComponents>
+ <availableComponents>Component3</availableComponents>
+ <designRuleLocations xsi:nil="true"/>
+ <availableAnomalyTypes xmi:id="_ozj5AERPEeC0spkCnDexvg" type="Erroneous"/>
+ <availableAnomalyTypes xmi:id="_ozlHIURPEeC0spkCnDexvg" type="Superflous"/>
+ <availableAnomalyTypes xmi:id="_ozlHI0RPEeC0spkCnDexvg" type="Improvement"/>
+ <availableAnomalyTypes xmi:id="_ozlHJURPEeC0spkCnDexvg" type="Question"/>
+</r4ecore:R4EReviewGroup>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Jerry20_group_reviews.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Jerry20_group_reviews.xrer
new file mode 100755
index 00000000..03cc06bc
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Jerry20_group_reviews.xrer
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EUserReviews xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_o_mw8kRPEeC0spkCnDexvg" name="Jerry20">
+ <invitedToMap xmi:id="_o_mw9ERPEeC0spkCnDexvg" key="ReviewSampl">
+ <value href="ReviewSampl/ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ </invitedToMap>
+ <invitedToMap xmi:id="_pLWG5ERPEeC0spkCnDexvg" key="ReviewTwo">
+ <value href="ReviewTwo/ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ </invitedToMap>
+ <group href="Golden_Group_group_root.xrer#_UQxKYERPEeC0spkCnDexvg"/>
+</r4ecore:R4EUserReviews>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/Review1_review.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/Review1_review.xrer
new file mode 100755
index 00000000..c385fce9
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/Review1_review.xrer
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_ozvfMERPEeC0spkCnDexvg" fragmentVersion="2.0.0" name="Review1" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500">
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_o3kPQERPEeC0spkCnDexvg"/>
+ <createdBy href="lmcalvs_comments.xrer#_oz8TgURPEeC0spkCnDexvg"/>
+</r4ecore:R4EReview>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/lmcalvs_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/lmcalvs_comments.xrer
new file mode 100755
index 00000000..939a2231
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Review1/lmcalvs_comments.xrer
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EParticipant xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_oz8TgURPEeC0spkCnDexvg" id="lmcalvs" reviewCreatedByMe="true">
+ <reviewInstance href="Review1_review.xrer#_ozvfMERPEeC0spkCnDexvg"/>
+ <roles>ORGANIZER</roles>
+</r4ecore:R4EParticipant>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_comments.xrer
new file mode 100755
index 00000000..ee2abd87
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_comments.xrer
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_o_mw8URPEeC0spkCnDexvg" id="Jerry20" sequenceIDCounter="15" focusArea="Feature" isPartOfDecision="true">
+ <addedComments href="#_pDNekERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pDekUERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pDgZgURPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pF_s0URPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pH6YYURPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pIEJYURPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pIausERPEeC0spkCnDexvg"/>
+ <reviewInstance href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_pCTfoERPEeC0spkCnDexvg" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_pCTfoURPEeC0spkCnDexvg" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_pDNekERPEeC0spkCnDexvg" author="_o_mw8URPEeC0spkCnDexvg" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pDOssERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pDNekURPEeC0spkCnDexvg" sequenceID="1" userID="Jerry20"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_pDOssERPEeC0spkCnDexvg" info="Write any information here">
+ <location href="#_pDPTwERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_pDPTwERPEeC0spkCnDexvg" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_pDP60ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_pDP60ERPEeC0spkCnDexvg" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_pDekUERPEeC0spkCnDexvg" author="_o_mw8URPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:46.933-0500">
+ <id xmi:id="_pDekUURPEeC0spkCnDexvg" sequenceID="2" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_pCpd4ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_pDgZgURPEeC0spkCnDexvg" author="_o_mw8URPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:46.936-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_pDgZgERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pDgZgkRPEeC0spkCnDexvg" sequenceID="3" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_pCpd4ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_items.xrer
new file mode 100755
index 00000000..1d750ad6
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Jerry20_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_pF_s0URPEeC0spkCnDexvg" description="Jerry20-Item to review 11" addedById="Jerry20" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pF_s0kRPEeC0spkCnDexvg" sequenceID="4" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_o_mw8URPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pH0RwERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pH0RwERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pH0RwURPEeC0spkCnDexvg" sequenceID="5" userID="Jerry20"/>
+ <deltas href="#_pH3VEkRPEeC0spkCnDexvg"/>
+ <base href="#_pH040ERPEeC0spkCnDexvg"/>
+ <target href="#_pH3VEERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pH040ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019327" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_pH3VEERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019328" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_pH3VEkRPEeC0spkCnDexvg">
+ <id xmi:id="_pH3VE0RPEeC0spkCnDexvg" sequenceID="6" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pH4jMERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pH5xUERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pH4jMERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pH5KQERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pH5KQERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pH5xUERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pH5xUURPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pH5xUURPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pH6YYURPEeC0spkCnDexvg" description="Jerry20-Item to review 12" addedById="Jerry20" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pH6YYkRPEeC0spkCnDexvg" sequenceID="7" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_o_mw8URPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pH-CwERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pH-CwERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pH-CwURPEeC0spkCnDexvg" sequenceID="8" userID="Jerry20"/>
+ <deltas href="#_pH_38URPEeC0spkCnDexvg"/>
+ <base href="#_pH-p0ERPEeC0spkCnDexvg"/>
+ <target href="#_pH_Q4ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pH-p0ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019328" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_pH_Q4ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019329" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_pH_38URPEeC0spkCnDexvg">
+ <id xmi:id="_pH_38kRPEeC0spkCnDexvg" sequenceID="9" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pIBGEERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pIC7QERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pIBGEERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pIBtIERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pIBtIERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pIC7QERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pIDiUERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pIDiUERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pIEJYURPEeC0spkCnDexvg" description="Jerry20-Item to review 21" addedById="Jerry20" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pIEJYkRPEeC0spkCnDexvg" sequenceID="10" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_o_mw8URPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pIHzwERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pIHzwERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pIHzwURPEeC0spkCnDexvg" sequenceID="11" userID="Jerry20"/>
+ <deltas href="#_pIJo8URPEeC0spkCnDexvg"/>
+ <base href="#_pIIa0ERPEeC0spkCnDexvg"/>
+ <target href="#_pIJB4ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pIIa0ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019358" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_pIJB4ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019359" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_pIJo8URPEeC0spkCnDexvg">
+ <id xmi:id="_pIJo8kRPEeC0spkCnDexvg" sequenceID="12" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pIPvkERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pIV2MERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pIPvkERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pIQ9sERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pIQ9sERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pIV2MERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pIY5gERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pIY5gERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pIausERPEeC0spkCnDexvg" description="Jerry20-Item to review 22" addedById="Jerry20" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pIausURPEeC0spkCnDexvg" sequenceID="13" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_o_mw8URPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pIdK8ERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pIdK8ERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pIdK8URPEeC0spkCnDexvg" sequenceID="14" userID="Jerry20"/>
+ <deltas href="#_pIlt0URPEeC0spkCnDexvg"/>
+ <base href="#_pIiqgERPEeC0spkCnDexvg"/>
+ <target href="#_pIkfsERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pIiqgERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019359" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_pIkfsERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019360" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_pIlt0URPEeC0spkCnDexvg">
+ <id xmi:id="_pIlt0kRPEeC0spkCnDexvg" sequenceID="15" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pImU4ERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pI0-YERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pImU4ERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pIzJMERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pIzJMERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pI0-YERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pI0-YURPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pI0-YURPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/ReviewSampl_review.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/ReviewSampl_review.xrer
new file mode 100755
index 00000000..48dad052
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/ReviewSampl_review.xrer
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_o6x7UERPEeC0spkCnDexvg" fragmentVersion="2.0.0" name="ReviewSampl" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="INFORMAL">
+ <reviewTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_pI2zkkRPEeC0spkCnDexvg" taskId="324328" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324328"/>
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_pI2zkURPEeC0spkCnDexvg" state="PREPARATION"/>
+ <components>Component1</components>
+ <decision xmi:id="_pI2zkERPEeC0spkCnDexvg" spentTime="120" value="ACCEPTED"/>
+ <createdBy href="Tom10_comments.xrer#_o6yiYkRPEeC0spkCnDexvg"/>
+</r4ecore:R4EReview>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_comments.xrer
new file mode 100755
index 00000000..80d76bc9
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_comments.xrer
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_o6yiYkRPEeC0spkCnDexvg" id="Tom10" sequenceIDCounter="15" reviewCreatedByMe="true" focusArea="Performance" isPartOfDecision="true">
+ <addedComments href="#_pCpd4ERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pDbhAERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pDcvIURPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pDrYoERPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pFBccURPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pFZ28URPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pFsx4URPEeC0spkCnDexvg"/>
+ <reviewInstance href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <roles>ORGANIZER</roles>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_o_li0ERPEeC0spkCnDexvg" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_o_li0URPEeC0spkCnDexvg" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_pCpd4ERPEeC0spkCnDexvg" author="_o6yiYkRPEeC0spkCnDexvg" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pC4HYERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pCshMERPEeC0spkCnDexvg" sequenceID="1" userID="Tom10"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_pC4HYERPEeC0spkCnDexvg" info="Write any information here">
+ <location href="#_pDH_AERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_pDH_AERPEeC0spkCnDexvg" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_pDMQcERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_pDMQcERPEeC0spkCnDexvg" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_pDbhAERPEeC0spkCnDexvg" author="_o6yiYkRPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:46.928-0500">
+ <id xmi:id="_pDbhAURPEeC0spkCnDexvg" sequenceID="2" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_pDNekERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_pDcvIURPEeC0spkCnDexvg" author="_o6yiYkRPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:46.930-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_pDcvIERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pDcvIkRPEeC0spkCnDexvg" sequenceID="3" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_pDNekERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_items.xrer
new file mode 100755
index 00000000..343c28d3
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewSampl/Tom10_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_pDrYoERPEeC0spkCnDexvg" description="Tom10-Item to review 11" addedById="Tom10" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pDrYoURPEeC0spkCnDexvg" sequenceID="4" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_o6yiYkRPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pEt6cERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pEt6cERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pEt6cURPEeC0spkCnDexvg" sequenceID="5" userID="Tom10"/>
+ <deltas href="#_pE3EYURPEeC0spkCnDexvg"/>
+ <base href="#_pEuhgERPEeC0spkCnDexvg"/>
+ <target href="#_pEvIkERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pEuhgERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978412" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_pEvIkERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978411" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_pE3EYURPEeC0spkCnDexvg">
+ <id xmi:id="_pE3EYkRPEeC0spkCnDexvg" sequenceID="6" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pE4SgERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pE_nQERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pE4SgERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pE5goERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pE5goERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pE_nQERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pFAOUERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pFAOUERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pFBccURPEeC0spkCnDexvg" description="Tom10-Item to review 12" addedById="Tom10" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pFBcckRPEeC0spkCnDexvg" sequenceID="7" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_o6yiYkRPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pFIKIERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pFIKIERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pFIKIURPEeC0spkCnDexvg" sequenceID="8" userID="Tom10"/>
+ <deltas href="#_pFL0gURPEeC0spkCnDexvg"/>
+ <base href="#_pFJ_UERPEeC0spkCnDexvg"/>
+ <target href="#_pFKmYERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pFJ_UERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978411" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_pFKmYERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978410" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_pFL0gURPEeC0spkCnDexvg">
+ <id xmi:id="_pFL0gkRPEeC0spkCnDexvg" sequenceID="9" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pFMbkERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pFU-cERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pFMbkERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pFNCoERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pFNCoERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pFU-cERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pFWMkERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pFWMkERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pFZ28URPEeC0spkCnDexvg" description="Tom10-Item to review 21" addedById="Tom10" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pFZ28kRPEeC0spkCnDexvg" sequenceID="10" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_o6yiYkRPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pFbsIERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pFbsIERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pFbsIURPEeC0spkCnDexvg" sequenceID="11" userID="Tom10"/>
+ <deltas href="#_pFhLsURPEeC0spkCnDexvg"/>
+ <base href="#_pFfWgERPEeC0spkCnDexvg"/>
+ <target href="#_pFf9kERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pFfWgERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978381" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_pFf9kERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978380" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_pFhLsURPEeC0spkCnDexvg">
+ <id xmi:id="_pFhLskRPEeC0spkCnDexvg" sequenceID="12" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pFjA4ERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pFldIERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pFjA4ERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pFkPAERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pFkPAERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pFldIERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pFrjwERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pFrjwERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pFsx4URPEeC0spkCnDexvg" description="Tom10-Item to review 22" addedById="Tom10" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pFsx4kRPEeC0spkCnDexvg" sequenceID="13" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_o6yiYkRPEeC0spkCnDexvg"/>
+ <review href="ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pFv1MERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pFv1MERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pFv1MURPEeC0spkCnDexvg" sequenceID="14" userID="Tom10"/>
+ <deltas href="#_pF1UwURPEeC0spkCnDexvg"/>
+ <base href="#_pFxDUERPEeC0spkCnDexvg"/>
+ <target href="#_pFxqYERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pFxDUERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978380" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_pFxqYERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978379" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_pF1UwURPEeC0spkCnDexvg">
+ <id xmi:id="_pF1UwkRPEeC0spkCnDexvg" sequenceID="15" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pF2i4ERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pF4YEERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pF2i4ERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pF3xAERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pF3xAERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pF4YEERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pF5mMERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pF5mMERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_comments.xrer
new file mode 100755
index 00000000..523d079d
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_comments.xrer
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_pLWG40RPEeC0spkCnDexvg" id="Jerry20" sequenceIDCounter="15" focusArea="Feature" isPartOfDecision="true">
+ <addedComments href="#_pNATwERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pNDXEERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pNGaYERPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pOp5kERPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pQQcEURPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pQXw0URPEeC0spkCnDexvg"/>
+ <addedItems href="Jerry20_items.xrer#_pQhh0URPEeC0spkCnDexvg"/>
+ <reviewInstance href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_pM60MERPEeC0spkCnDexvg" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_pM60MURPEeC0spkCnDexvg" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_pNATwERPEeC0spkCnDexvg" author="_pLWG40RPEeC0spkCnDexvg" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pNA60ERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pNATwURPEeC0spkCnDexvg" sequenceID="1" userID="Jerry20"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_pNA60ERPEeC0spkCnDexvg" info="Write any information here">
+ <location href="#_pNBh4ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_pNBh4ERPEeC0spkCnDexvg" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_pNBh4URPEeC0spkCnDexvg"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_pNBh4URPEeC0spkCnDexvg" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_pNDXEERPEeC0spkCnDexvg" author="_pLWG40RPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:47.937-0500">
+ <id xmi:id="_pNDXEURPEeC0spkCnDexvg" sequenceID="2" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_pM7bQERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_pNGaYERPEeC0spkCnDexvg" author="_pLWG40RPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:47.942-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_pNElMERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pNGaYURPEeC0spkCnDexvg" sequenceID="3" userID="Jerry20"/>
+ <anomaly href="Tom10_comments.xrer#_pM7bQERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_items.xrer
new file mode 100755
index 00000000..d8c97a8c
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Jerry20_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_pOp5kERPEeC0spkCnDexvg" description="Jerry20-Item to review 11" addedById="Jerry20" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pOp5kURPEeC0spkCnDexvg" sequenceID="4" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_pLWG40RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pQNYwERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pQNYwERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pQNYwURPEeC0spkCnDexvg" sequenceID="5" userID="Jerry20"/>
+ <deltas href="#_pQOm4URPEeC0spkCnDexvg"/>
+ <base href="#_pQN_0ERPEeC0spkCnDexvg"/>
+ <target href="#_pQN_0URPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pQN_0ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019327" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_pQN_0URPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019328" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_pQOm4URPEeC0spkCnDexvg">
+ <id xmi:id="_pQOm4kRPEeC0spkCnDexvg" sequenceID="6" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pQPN8ERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pQP1AERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pQPN8ERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pQPN8URPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQPN8URPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pQP1AERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pQP1AURPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQP1AURPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pQQcEURPEeC0spkCnDexvg" description="Jerry20-Item to review 12" addedById="Jerry20" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pQQcEkRPEeC0spkCnDexvg" sequenceID="7" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_pLWG40RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pQS4UERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pQS4UERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pQS4UURPEeC0spkCnDexvg" sequenceID="8" userID="Jerry20"/>
+ <deltas href="#_pQUtgERPEeC0spkCnDexvg"/>
+ <base href="#_pQTfYERPEeC0spkCnDexvg"/>
+ <target href="#_pQUGcERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pQTfYERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019328" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_pQUGcERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019329" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_pQUtgERPEeC0spkCnDexvg">
+ <id xmi:id="_pQUtgURPEeC0spkCnDexvg" sequenceID="9" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pQUtgkRPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pQV7oERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pQUtgkRPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pQVUkERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQVUkERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pQV7oERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pQV7oURPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQV7oURPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pQXw0URPEeC0spkCnDexvg" description="Jerry20-Item to review 21" addedById="Jerry20" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pQXw0kRPEeC0spkCnDexvg" sequenceID="10" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_pLWG40RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pQY-8ERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pQY-8ERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pQY-8URPEeC0spkCnDexvg" sequenceID="11" userID="Jerry20"/>
+ <deltas href="#_pQaNEkRPEeC0spkCnDexvg"/>
+ <base href="#_pQZmAERPEeC0spkCnDexvg"/>
+ <target href="#_pQaNEERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pQZmAERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019358" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_pQaNEERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019359" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_pQaNEkRPEeC0spkCnDexvg">
+ <id xmi:id="_pQaNE0RPEeC0spkCnDexvg" sequenceID="12" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pQfFkERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pQgTsERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pQfFkERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pQfsoERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQfsoERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pQgTsERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pQg6wERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQg6wERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pQhh0URPEeC0spkCnDexvg" description="Jerry20-Item to review 22" addedById="Jerry20" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pQhh0kRPEeC0spkCnDexvg" sequenceID="13" userID="Jerry20"/>
+ <addedBy href="Jerry20_comments.xrer#_pLWG40RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pQiv8ERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pQiv8ERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pQiv8URPEeC0spkCnDexvg" sequenceID="14" userID="Jerry20"/>
+ <deltas href="#_pQklIERPEeC0spkCnDexvg"/>
+ <base href="#_pQjXAERPEeC0spkCnDexvg"/>
+ <target href="#_pQj-EERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pQjXAERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="1004019359" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_pQj-EERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="1004019360" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_pQklIERPEeC0spkCnDexvg">
+ <id xmi:id="_pQklIURPEeC0spkCnDexvg" sequenceID="15" userID="Jerry20"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pQklIkRPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pQnocERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pQklIkRPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pQnBYERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQnBYERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pQnocERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pQoPgERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pQoPgERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/ReviewTwo_review.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/ReviewTwo_review.xrer
new file mode 100755
index 00000000..5f53d52f
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/ReviewTwo_review.xrer
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_pI3aoERPEeC0spkCnDexvg" fragmentVersion="2.0.0" name="ReviewTwo" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="INFORMAL">
+ <reviewTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_pQo2kkRPEeC0spkCnDexvg" taskId="324328" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324328"/>
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_pQo2kURPEeC0spkCnDexvg" state="PREPARATION"/>
+ <components>Component1</components>
+ <decision xmi:id="_pQo2kERPEeC0spkCnDexvg" spentTime="120" value="ACCEPTED"/>
+ <createdBy href="Tom10_comments.xrer#_pI3ao0RPEeC0spkCnDexvg"/>
+</r4ecore:R4EReview>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_comments.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_comments.xrer
new file mode 100755
index 00000000..91278af4
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_comments.xrer
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EParticipant xmi:id="_pI3ao0RPEeC0spkCnDexvg" id="Tom10" sequenceIDCounter="15" reviewCreatedByMe="true" focusArea="Performance" isPartOfDecision="true">
+ <addedComments href="#_pM7bQERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pNCI8ERPEeC0spkCnDexvg"/>
+ <addedComments href="#_pNCwAURPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pNHogURPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pOObwURPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pOUiYURPEeC0spkCnDexvg"/>
+ <addedItems href="Tom10_items.xrer#_pObQEURPEeC0spkCnDexvg"/>
+ <reviewInstance href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <roles>ORGANIZER</roles>
+ <roles>LEAD</roles>
+ <timeLog xmi:id="_pLWG4ERPEeC0spkCnDexvg" key="1867-07-01T00:00:00.000-0500" value="30"/>
+ <timeLog xmi:id="_pLWG4URPEeC0spkCnDexvg" key="1867-07-03T00:00:00.000-0500" value="30"/>
+ </r4ecore:R4EParticipant>
+ <r4ecore:R4EAnomaly xmi:id="_pM7bQERPEeC0spkCnDexvg" author="_pI3ao0RPEeC0spkCnDexvg" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pM93gERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pM7bQURPEeC0spkCnDexvg" sequenceID="1" userID="Tom10"/>
+ </r4ecore:R4EAnomaly>
+ <r4ecore:R4ETextContent xmi:id="_pM93gERPEeC0spkCnDexvg" info="Write any information here">
+ <location href="#_pM-ekERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4EAnomalyTextPosition xmi:id="_pM-ekERPEeC0spkCnDexvg" startPosition="1230" length="40" startLine="50" endLine="100">
+ <file href="#_pM_ssERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EAnomalyTextPosition>
+ <r4ecore:R4EFileVersion xmi:id="_pM_ssERPEeC0spkCnDexvg" platformURI="platform:/resource/projName/src/dir1/dir2" versionID="8" repositoryPath="/Dir1/Dir2" name="R4ETestFile"/>
+ <r4ecore:R4EComment xmi:id="_pNCI8ERPEeC0spkCnDexvg" author="_pI3ao0RPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:47.935-0500">
+ <id xmi:id="_pNCI8URPEeC0spkCnDexvg" sequenceID="2" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_pNATwERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+ <r4ecore:R4EComment xmi:id="_pNCwAURPEeC0spkCnDexvg" author="_pI3ao0RPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:47.936-0500">
+ <type xsi:type="r4ecore:R4ECommentType" xmi:id="_pNCwAERPEeC0spkCnDexvg"/>
+ <id xmi:id="_pNCwAkRPEeC0spkCnDexvg" sequenceID="3" userID="Tom10"/>
+ <anomaly href="Jerry20_comments.xrer#_pNATwERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EComment>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_items.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_items.xrer
new file mode 100755
index 00000000..f106a480
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/ReviewTwo/Tom10_items.xrer
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/">
+ <r4ecore:R4EItem xmi:id="_pNHogURPEeC0spkCnDexvg" description="Tom10-Item to review 11" addedById="Tom10" repositoryRef="repository ref..0" authorRep="changeAuthor_0" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pNIPkERPEeC0spkCnDexvg" sequenceID="4" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_pI3ao0RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pOLYcERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX0</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pOLYcERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pOLYcURPEeC0spkCnDexvg" sequenceID="5" userID="Tom10"/>
+ <deltas href="#_pOMmkURPEeC0spkCnDexvg"/>
+ <base href="#_pOL_gERPEeC0spkCnDexvg"/>
+ <target href="#_pOL_gURPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pOL_gERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978412" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdB_1234_0"/>
+ <r4ecore:R4EFileVersion xmi:id="_pOL_gURPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978411" repositoryPath="root/folder_0" name="file_0" localVersionID="locIdT_1234_0"/>
+ <r4ecore:R4EDelta xmi:id="_pOMmkURPEeC0spkCnDexvg">
+ <id xmi:id="_pOMmkkRPEeC0spkCnDexvg" sequenceID="6" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pOMmk0RPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pON0sERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pOMmk0RPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pONNoERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pONNoERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pON0sERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pON0sURPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pON0sURPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pOObwURPEeC0spkCnDexvg" description="Tom10-Item to review 12" addedById="Tom10" repositoryRef="repository ref..1" authorRep="changeAuthor_1" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pOObwkRPEeC0spkCnDexvg" sequenceID="7" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_pI3ao0RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pOPC0ERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX1</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pOPC0ERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pOPC0URPEeC0spkCnDexvg" sequenceID="8" userID="Tom10"/>
+ <deltas href="#_pOQQ8kRPEeC0spkCnDexvg"/>
+ <base href="#_pOPp4ERPEeC0spkCnDexvg"/>
+ <target href="#_pOQQ8ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pOPp4ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978411" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdB_1234_1"/>
+ <r4ecore:R4EFileVersion xmi:id="_pOQQ8ERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978410" repositoryPath="root/folder_1" name="file_1" localVersionID="locIdT_1234_1"/>
+ <r4ecore:R4EDelta xmi:id="_pOQQ8kRPEeC0spkCnDexvg">
+ <id xmi:id="_pOQQ80RPEeC0spkCnDexvg" sequenceID="9" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pOQ4AERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pOTUQERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pOQ4AERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pOSGIERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pOSGIERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pOTUQERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pOT7UERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pOT7UERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pOUiYURPEeC0spkCnDexvg" description="Tom10-Item to review 21" addedById="Tom10" repositoryRef="repository ref..2" authorRep="changeAuthor_2" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pOUiYkRPEeC0spkCnDexvg" sequenceID="10" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_pI3ao0RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pOVwgERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX2</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pOVwgERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pOVwgURPEeC0spkCnDexvg" sequenceID="11" userID="Tom10"/>
+ <deltas href="#_pOXlsERPEeC0spkCnDexvg"/>
+ <base href="#_pOWXkERPEeC0spkCnDexvg"/>
+ <target href="#_pOW-oERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pOWXkERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978381" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdB_1234_2"/>
+ <r4ecore:R4EFileVersion xmi:id="_pOW-oERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978380" repositoryPath="root/folder_2" name="file_2" localVersionID="locIdT_1234_2"/>
+ <r4ecore:R4EDelta xmi:id="_pOXlsERPEeC0spkCnDexvg">
+ <id xmi:id="_pOXlsURPEeC0spkCnDexvg" sequenceID="12" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pOYz0ERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pOaB8ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pOYz0ERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pOZa4ERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pOZa4ERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pOaB8ERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pOapAERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pOapAERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+ <r4ecore:R4EItem xmi:id="_pObQEURPEeC0spkCnDexvg" description="Tom10-Item to review 22" addedById="Tom10" repositoryRef="repository ref..3" authorRep="changeAuthor_3" submitted="1867-07-01T00:00:00.000-0500">
+ <id xmi:id="_pObQEkRPEeC0spkCnDexvg" sequenceID="13" userID="Tom10"/>
+ <addedBy href="Tom10_comments.xrer#_pI3ao0RPEeC0spkCnDexvg"/>
+ <review href="ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ <fileContextList href="#_pOceMERPEeC0spkCnDexvg"/>
+ <ProjectURIs>platform:resource/projX3</ProjectURIs>
+ </r4ecore:R4EItem>
+ <r4ecore:R4EFileContext xmi:id="_pOceMERPEeC0spkCnDexvg" type="ADDED">
+ <id xmi:id="_pOceMURPEeC0spkCnDexvg" sequenceID="14" userID="Tom10"/>
+ <deltas href="#_pOlBEURPEeC0spkCnDexvg"/>
+ <base href="#_pOeTYERPEeC0spkCnDexvg"/>
+ <target href="#_pOh9wERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EFileContext>
+ <r4ecore:R4EFileVersion xmi:id="_pOeTYERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir3/dir4/file.xxx" versionID="-719978380" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdB_1234_3"/>
+ <r4ecore:R4EFileVersion xmi:id="_pOh9wERPEeC0spkCnDexvg" platformURI="platform:/resource/proj/src/dir6/dir7/file.yyy" versionID="-719978379" repositoryPath="root/folder_3" name="file_3" localVersionID="locIdT_1234_3"/>
+ <r4ecore:R4EDelta xmi:id="_pOlBEURPEeC0spkCnDexvg">
+ <id xmi:id="_pOlBEkRPEeC0spkCnDexvg" sequenceID="15" userID="Tom10"/>
+ <base xsi:type="r4ecore:R4ETextContent" href="#_pOmPMERPEeC0spkCnDexvg"/>
+ <target xsi:type="r4ecore:R4ETextContent" href="#_pOndUERPEeC0spkCnDexvg"/>
+ </r4ecore:R4EDelta>
+ <r4ecore:R4ETextContent xmi:id="_pOmPMERPEeC0spkCnDexvg" info="information for base content" content="base content">
+ <location href="#_pOm2QERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pOm2QERPEeC0spkCnDexvg" startPosition="200" length="50" startLine="10" endLine="20"/>
+ <r4ecore:R4ETextContent xmi:id="_pOndUERPEeC0spkCnDexvg" info="information for target content" content="target content">
+ <location href="#_pOorcERPEeC0spkCnDexvg"/>
+ </r4ecore:R4ETextContent>
+ <r4ecore:R4ETextPosition xmi:id="_pOorcERPEeC0spkCnDexvg" startPosition="300" length="100" startLine="30" endLine="40"/>
+</xmi:XMI>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Tom10_group_reviews.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Tom10_group_reviews.xrer
new file mode 100755
index 00000000..0e4eba4f
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/Tom10_group_reviews.xrer
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EUserReviews xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_o6yiY0RPEeC0spkCnDexvg" name="Tom10">
+ <invitedToMap xmi:id="_o6yiZURPEeC0spkCnDexvg" key="ReviewSampl">
+ <value href="ReviewSampl/ReviewSampl_review.xrer#_o6x7UERPEeC0spkCnDexvg"/>
+ </invitedToMap>
+ <invitedToMap xmi:id="_pI3apERPEeC0spkCnDexvg" key="ReviewTwo">
+ <value href="ReviewTwo/ReviewTwo_review.xrer#_pI3aoERPEeC0spkCnDexvg"/>
+ </invitedToMap>
+ <group href="Golden_Group_group_root.xrer#_UQxKYERPEeC0spkCnDexvg"/>
+ <createdReviews>ReviewSampl</createdReviews>
+ <createdReviews>ReviewTwo</createdReviews>
+</r4ecore:R4EUserReviews>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/conversion.log b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/conversion.log
new file mode 100644
index 00000000..740f9d8f
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/conversion.log
@@ -0,0 +1,110 @@
+R4E Common Model Conversion Log: /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/conversion.log
+
+
+Root Folder: /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/Golden_Group_group_root.xrer
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/Jerry20_group_reviews.xrer
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/lmcalvs_group_reviews.xrer
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/Review1/lmcalvs_comments.xrer
+ 3: <roles>R4E_ROLE_ORGANIZER</roles>
+ <roles>ORGANIZER</roles>
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/Review1/Review1_review.xrer
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewSampl/Jerry20_comments.xrer
+ 11: <roles>R4E_ROLE_LEAD</roles>
+ <roles>LEAD</roles>
+ 15: <r4ecore:R4EAnomaly xmi:id="_pDNekERPEeC0spkCnDexvg" user="_o_mw8URPEeC0spkCnDexvg" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <r4ecore:R4EAnomaly xmi:id="_pDNekERPEeC0spkCnDexvg" author="_o_mw8URPEeC0spkCnDexvg" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ 16: <location xsi:type="r4ecore:R4ETextContent" href="#_pDOssERPEeC0spkCnDexvg"/>
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pDOssERPEeC0spkCnDexvg"/>
+ 26: <r4ecore:R4EComment xmi:id="_pDekUERPEeC0spkCnDexvg" user="_o_mw8URPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:46.933-0500">
+ <r4ecore:R4EComment xmi:id="_pDekUERPEeC0spkCnDexvg" author="_o_mw8URPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:46.933-0500">
+ 30: <r4ecore:R4EComment xmi:id="_pDgZgURPEeC0spkCnDexvg" user="_o_mw8URPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:46.936-0500">
+ <r4ecore:R4EComment xmi:id="_pDgZgURPEeC0spkCnDexvg" author="_o_mw8URPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:46.936-0500">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewSampl/Jerry20_items.xrer
+ 9: <r4ecore:R4EFileContext xmi:id="_pH0RwERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pH0RwERPEeC0spkCnDexvg" type="ADDED">
+ 37: <r4ecore:R4EFileContext xmi:id="_pH-CwERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pH-CwERPEeC0spkCnDexvg" type="ADDED">
+ 65: <r4ecore:R4EFileContext xmi:id="_pIHzwERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pIHzwERPEeC0spkCnDexvg" type="ADDED">
+ 93: <r4ecore:R4EFileContext xmi:id="_pIdK8ERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pIdK8ERPEeC0spkCnDexvg" type="ADDED">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewSampl/ReviewSampl_review.xrer
+ 1: <r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_o6x7UERPEeC0spkCnDexvg" name="ReviewSampl" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="R4E_REVIEW_TYPE_INFORMAL">
+ <r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_o6x7UERPEeC0spkCnDexvg" name="ReviewSampl" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="INFORMAL">
+ 3: <state xsi:type="r4ecore:R4EReviewState" xmi:id="_pI2zkURPEeC0spkCnDexvg" state="R4E_REVIEW_PHASE_PREPARATION"/>
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_pI2zkURPEeC0spkCnDexvg" state="PREPARATION"/>
+ 5: <decision xmi:id="_pI2zkERPEeC0spkCnDexvg" spentTime="120" value="R4E_REVIEW_DECISION_ACCEPTED"/>
+ <decision xmi:id="_pI2zkERPEeC0spkCnDexvg" spentTime="120" value="ACCEPTED"/>
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewSampl/Tom10_comments.xrer
+ 11: <roles>R4E_ROLE_ORGANIZER</roles>
+ <roles>ORGANIZER</roles>
+ 12: <roles>R4E_ROLE_LEAD</roles>
+ <roles>LEAD</roles>
+ 16: <r4ecore:R4EAnomaly xmi:id="_pCpd4ERPEeC0spkCnDexvg" user="_o6yiYkRPEeC0spkCnDexvg" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <r4ecore:R4EAnomaly xmi:id="_pCpd4ERPEeC0spkCnDexvg" author="_o6yiYkRPEeC0spkCnDexvg" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ 17: <location xsi:type="r4ecore:R4ETextContent" href="#_pC4HYERPEeC0spkCnDexvg"/>
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pC4HYERPEeC0spkCnDexvg"/>
+ 27: <r4ecore:R4EComment xmi:id="_pDbhAERPEeC0spkCnDexvg" user="_o6yiYkRPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:46.928-0500">
+ <r4ecore:R4EComment xmi:id="_pDbhAERPEeC0spkCnDexvg" author="_o6yiYkRPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:46.928-0500">
+ 31: <r4ecore:R4EComment xmi:id="_pDcvIURPEeC0spkCnDexvg" user="_o6yiYkRPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:46.930-0500">
+ <r4ecore:R4EComment xmi:id="_pDcvIURPEeC0spkCnDexvg" author="_o6yiYkRPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:46.930-0500">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewSampl/Tom10_items.xrer
+ 9: <r4ecore:R4EFileContext xmi:id="_pEt6cERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pEt6cERPEeC0spkCnDexvg" type="ADDED">
+ 37: <r4ecore:R4EFileContext xmi:id="_pFIKIERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pFIKIERPEeC0spkCnDexvg" type="ADDED">
+ 65: <r4ecore:R4EFileContext xmi:id="_pFbsIERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pFbsIERPEeC0spkCnDexvg" type="ADDED">
+ 93: <r4ecore:R4EFileContext xmi:id="_pFv1MERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pFv1MERPEeC0spkCnDexvg" type="ADDED">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewTwo/Jerry20_comments.xrer
+ 11: <roles>R4E_ROLE_LEAD</roles>
+ <roles>LEAD</roles>
+ 15: <r4ecore:R4EAnomaly xmi:id="_pNATwERPEeC0spkCnDexvg" user="_pLWG40RPEeC0spkCnDexvg" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <r4ecore:R4EAnomaly xmi:id="_pNATwERPEeC0spkCnDexvg" author="_pLWG40RPEeC0spkCnDexvg" description="Jerry20- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ 16: <location xsi:type="r4ecore:R4ETextContent" href="#_pNA60ERPEeC0spkCnDexvg"/>
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pNA60ERPEeC0spkCnDexvg"/>
+ 26: <r4ecore:R4EComment xmi:id="_pNDXEERPEeC0spkCnDexvg" user="_pLWG40RPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:47.937-0500">
+ <r4ecore:R4EComment xmi:id="_pNDXEERPEeC0spkCnDexvg" author="_pLWG40RPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:47.937-0500">
+ 30: <r4ecore:R4EComment xmi:id="_pNGaYERPEeC0spkCnDexvg" user="_pLWG40RPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:47.942-0500">
+ <r4ecore:R4EComment xmi:id="_pNGaYERPEeC0spkCnDexvg" author="_pLWG40RPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:47.942-0500">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewTwo/Jerry20_items.xrer
+ 9: <r4ecore:R4EFileContext xmi:id="_pQNYwERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pQNYwERPEeC0spkCnDexvg" type="ADDED">
+ 37: <r4ecore:R4EFileContext xmi:id="_pQS4UERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pQS4UERPEeC0spkCnDexvg" type="ADDED">
+ 65: <r4ecore:R4EFileContext xmi:id="_pQY-8ERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pQY-8ERPEeC0spkCnDexvg" type="ADDED">
+ 93: <r4ecore:R4EFileContext xmi:id="_pQiv8ERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pQiv8ERPEeC0spkCnDexvg" type="ADDED">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewTwo/ReviewTwo_review.xrer
+ 1: <r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_pI3aoERPEeC0spkCnDexvg" name="ReviewTwo" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="R4E_REVIEW_TYPE_INFORMAL">
+ <r4ecore:R4EReview xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_pI3aoERPEeC0spkCnDexvg" name="ReviewTwo" project="P1" entryCriteria="Sample Entry Cryteria" extraNotes="Sample extra notes" objectives="Sample Objectives" referenceMaterial="sample reference material" startDate="1867-07-01T00:00:00.000-0500" endDate="1867-07-03T00:00:00.000-0500" type="INFORMAL">
+ 3: <state xsi:type="r4ecore:R4EReviewState" xmi:id="_pQo2kURPEeC0spkCnDexvg" state="R4E_REVIEW_PHASE_PREPARATION"/>
+ <state xsi:type="r4ecore:R4EReviewState" xmi:id="_pQo2kURPEeC0spkCnDexvg" state="PREPARATION"/>
+ 5: <decision xmi:id="_pQo2kERPEeC0spkCnDexvg" spentTime="120" value="R4E_REVIEW_DECISION_ACCEPTED"/>
+ <decision xmi:id="_pQo2kERPEeC0spkCnDexvg" spentTime="120" value="ACCEPTED"/>
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewTwo/Tom10_comments.xrer
+ 11: <roles>R4E_ROLE_ORGANIZER</roles>
+ <roles>ORGANIZER</roles>
+ 12: <roles>R4E_ROLE_LEAD</roles>
+ <roles>LEAD</roles>
+ 16: <r4ecore:R4EAnomaly xmi:id="_pM7bQERPEeC0spkCnDexvg" user="_pI3ao0RPEeC0spkCnDexvg" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ <r4ecore:R4EAnomaly xmi:id="_pM7bQERPEeC0spkCnDexvg" author="_pI3ao0RPEeC0spkCnDexvg" description="Tom10- Anomaly text here ....." title="This is sample Title - Anomaly" createdOn="1867-07-11T00:00:00.000-0500">
+ 17: <location xsi:type="r4ecore:R4ETextContent" href="#_pM93gERPEeC0spkCnDexvg"/>
+ <locations xsi:type="r4ecore:R4ETextContent" href="#_pM93gERPEeC0spkCnDexvg"/>
+ 27: <r4ecore:R4EComment xmi:id="_pNCI8ERPEeC0spkCnDexvg" user="_pI3ao0RPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:47.935-0500">
+ <r4ecore:R4EComment xmi:id="_pNCI8ERPEeC0spkCnDexvg" author="_pI3ao0RPEeC0spkCnDexvg" description="This is test comment number 1" createdOn="2011-03-01T17:02:47.935-0500">
+ 31: <r4ecore:R4EComment xmi:id="_pNCwAURPEeC0spkCnDexvg" user="_pI3ao0RPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:47.936-0500">
+ <r4ecore:R4EComment xmi:id="_pNCwAURPEeC0spkCnDexvg" author="_pI3ao0RPEeC0spkCnDexvg" description="This is test comment number 2" createdOn="2011-03-01T17:02:47.936-0500">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/ReviewTwo/Tom10_items.xrer
+ 9: <r4ecore:R4EFileContext xmi:id="_pOLYcERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pOLYcERPEeC0spkCnDexvg" type="ADDED">
+ 37: <r4ecore:R4EFileContext xmi:id="_pOPC0ERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pOPC0ERPEeC0spkCnDexvg" type="ADDED">
+ 65: <r4ecore:R4EFileContext xmi:id="_pOVwgERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pOVwgERPEeC0spkCnDexvg" type="ADDED">
+ 93: <r4ecore:R4EFileContext xmi:id="_pOceMERPEeC0spkCnDexvg" type="R4E_ADDED">
+ <r4ecore:R4EFileContext xmi:id="_pOceMERPEeC0spkCnDexvg" type="ADDED">
+ /var/folders/cg/sxbk4f855q13n6qn9q0r9w440000gn/T/r4eTst/1351808835022/OutL1/OutL2/outGroupX/Tom10_group_reviews.xrer
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/lmcalvs_group_reviews.xrer b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/lmcalvs_group_reviews.xrer
new file mode 100755
index 00000000..22580bae
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.tests/stubs_model/outGroupX/lmcalvs_group_reviews.xrer
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EUserReviews xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_o0CaIERPEeC0spkCnDexvg" name="lmcalvs">
+ <invitedToMap xmi:id="_o0DBMERPEeC0spkCnDexvg" key="Review1">
+ <value href="Review1/Review1_review.xrer#_ozvfMERPEeC0spkCnDexvg"/>
+ </invitedToMap>
+ <group href="Golden_Group_group_root.xrer#_UQxKYERPEeC0spkCnDexvg"/>
+ <createdReviews>Review1</createdReviews>
+</r4ecore:R4EUserReviews>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/.classpath b/org.eclipse.mylyn.reviews.r4e.connector.ui/.classpath
new file mode 100644
index 00000000..314132e2
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/.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/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
+ <accessrules>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/core/model/**"/>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage*"/>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage*"/>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/r4e/ui/internal/model/R4EUIModelController*"/>
+ </accessrules>
+ </classpathentry>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000..5a0ad22d
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..3b0b4b04
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 00000000..d92dfc1c
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/.settings/org.eclipse.ltk.core.refactoring.prefs b/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.ltk.core.refactoring.prefs
new file mode 100644
index 00000000..5e7f2bd4
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.mylyn.tasks.ui.prefs
new file mode 100644
index 00000000..d8c6d26a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.mylyn.team.ui.prefs
new file mode 100644
index 00000000..10d0afb9
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/.settings/org.eclipse.pde.prefs b/org.eclipse.mylyn.reviews.r4e.connector.ui/.settings/org.eclipse.pde.prefs
new file mode 100644
index 00000000..e8f2d562
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.r4e.connector.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..6a0a8823
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,36 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Mylyn R4E Connector UI
+Bundle-SymbolicName: org.eclipse.mylyn.reviews.r4e.connector.ui;singleton:=true
+Bundle-Version: 0.13.0.qualifier
+Bundle-Activator: org.eclipse.mylyn.internal.reviews.r4e.connector.ui.R4EUiPlugin
+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.reviews.core;bundle-version="1.1.0",
+ org.eclipse.mylyn.reviews.ui;bundle-version="1.1.0",
+ org.eclipse.mylyn.tasks.core;bundle-version="3.9.0",
+ org.eclipse.mylyn.tasks.ui;bundle-version="3.9.0",
+ 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;bundle-version="3.9.0",
+ org.eclipse.mylyn.tasks.ui;bundle-version="3.9.0",
+ org.eclipse.mylyn.reviews.r4e.core;bundle-version="0.13.0",
+ org.eclipse.mylyn.reviews.r4e.ui;bundle-version="0.13.0",
+ org.eclipse.mylyn.reviews.connector;bundle-version="0.13.0",
+ org.eclipse.mylyn.reviews.r4e.connector;bundle-version="0.13.0",
+ org.eclipse.mylyn.reviews.connector.ui;bundle-version="0.13.0"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-Vendor: Eclipse Mylyn
+Export-Package: org.eclipse.mylyn.internal.reviews.r4e.connector.ui;x-internal:=true,
+ org.eclipse.mylyn.internal.reviews.r4e.connector.ui.editor;x-internal:=true
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/about.html b/org.eclipse.mylyn.reviews.r4e.connector.ui/about.html
new file mode 100644
index 00000000..d774b07c
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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 (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). 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, &quot;Program&quot; 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 (&quot;Redistributor&quot;) 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.r4e.connector.ui/build.properties b/org.eclipse.mylyn.reviews.r4e.connector.ui/build.properties
new file mode 100644
index 00000000..461e5612
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.ui/icons/eview16/overlay-review.png b/org.eclipse.mylyn.reviews.r4e.connector.ui/icons/eview16/overlay-review.png
new file mode 100644
index 00000000..256ab67a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/icons/eview16/overlay-review.png
Binary files differ
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/icons/obj16/revgrp_obj.gif b/org.eclipse.mylyn.reviews.r4e.connector.ui/icons/obj16/revgrp_obj.gif
new file mode 100644
index 00000000..173661c5
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/icons/obj16/revgrp_obj.gif
Binary files differ
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/plugin.xml b/org.eclipse.mylyn.reviews.r4e.connector.ui/plugin.xml
new file mode 100644
index 00000000..5c207d60
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/plugin.xml
@@ -0,0 +1,29 @@
+<?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.r4e"
+ class="org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnector"
+ name="R4E Reviews"/>
+ <connectorUi
+ brandingIcon="icons/obj16/revgrp_obj.gif"
+ class="org.eclipse.mylyn.internal.reviews.r4e.connector.ui.R4EConnectorUi"
+ id="org.eclipse.mylyn.r4e"
+ name="R4E Reviews"
+ overlayIcon="icons/eview16/overlay-review.png"/>
+ </extension>
+
+
+ <extension
+ point="org.eclipse.mylyn.tasks.ui.editors">
+ <pageFactory
+ class="org.eclipse.mylyn.internal.reviews.r4e.connector.ui.editor.R4ETaskEditorPageFactory"
+ id="org.eclipse.mylyn.reviews.r4e.connector.ui.pageFactory">
+ </pageFactory>
+ </extension>
+
+
+
+</plugin>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/pom.xml b/org.eclipse.mylyn.reviews.r4e.connector.ui/pom.xml
new file mode 100644
index 00000000..72b35cd8
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.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.r4e.connector.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.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EConnectorUi.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EConnectorUi.java
new file mode 100644
index 00000000..17a33768
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EConnectorUi.java
@@ -0,0 +1,112 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.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.mylyn.internal.reviews.r4e.connector.R4EConnectorPlugin;
+import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector;
+import org.eclipse.mylyn.reviews.connector.ui.AbstractEmfConnectorUi;
+import org.eclipse.mylyn.reviews.connector.ui.wizards.EmfRepositoryQueryPage;
+import org.eclipse.mylyn.tasks.core.IRepositoryQuery;
+import org.eclipse.mylyn.tasks.core.ITask;
+import org.eclipse.mylyn.tasks.core.ITaskMapping;
+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.NewTaskWizard;
+import org.eclipse.mylyn.tasks.ui.wizards.RepositoryQueryWizard;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ * Connector specific UI for R4E.
+ *
+ * @author Miles Parker
+ */
+public class R4EConnectorUi extends AbstractEmfConnectorUi {
+
+ class InnerQueryPage extends EmfRepositoryQueryPage {
+
+ public InnerQueryPage(TaskRepository repository, IRepositoryQuery query) {
+ super(repository, "R4E Query", query);
+ }
+
+ @Override
+ public AbstractEmfConnector getConnector() {
+ return R4EConnectorUi.this.getConnector();
+ }
+
+ }
+
+ public R4EConnectorUi() {
+ if (R4EUiPlugin.getDefault() != null) {
+ R4EUiPlugin.getDefault().setConnectorUi(this);
+ }
+ }
+
+ @Override
+ public ITaskRepositoryPage getSettingsPage(TaskRepository taskRepository) {
+ return new R4ERepositorySettingsPage(taskRepository);
+ }
+
+ @Override
+ public IWizard getQueryWizard(TaskRepository repository, IRepositoryQuery query) {
+ RepositoryQueryWizard wizard = new RepositoryQueryWizard(repository);
+ wizard.addPage(new InnerQueryPage(repository, query));
+ return wizard;
+ }
+
+ @Override
+ public IWizard getNewTaskWizard(TaskRepository taskRepository, ITaskMapping taskSelection) {
+ return new NewTaskWizard(taskRepository, taskSelection);
+ }
+
+ @Override
+ public ITaskSearchPage getSearchPage(TaskRepository repository, IStructuredSelection selection) {
+ return new InnerQueryPage(repository, null);
+ }
+
+ @Override
+ public boolean hasSearchPage() {
+ return true;
+ }
+
+ @Override
+ public String getTaskKindLabel(ITask task) {
+ return "Review"; //$NON-NLS-1$
+ }
+
+ @Override
+ public ImageDescriptor getTaskKindOverlay(ITask task) {
+ return R4EImages.OVERLAY_REVIEW;
+ }
+
+ @Override
+ public AbstractEmfConnector getConnector() {
+ return R4EConnectorPlugin.getDefault().getConnector();
+ }
+
+ @Override
+ public String[] getFileNameExtensions() {
+ return new String[] { "*.xrer" }; //$NON-NLS-1$
+ }
+
+ @Override
+ public IPath createNewRepository(Shell parent) {
+ // ignore
+ return null;
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EImages.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EImages.java
new file mode 100644
index 00000000..daf614ab
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EImages.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.ui;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+
+/**
+ * @author Miles Parker
+ */
+public class R4EImages {
+
+ private static final URL baseURL = R4EUiPlugin.getDefault().getBundle().getEntry("/icons/"); //$NON-NLS-1$
+
+ public static final ImageDescriptor OVERLAY_REVIEW = create("eview16/overlay-review.png"); //$NON-NLS-1$
+
+ public static final ImageDescriptor R4E_REVIEW_GROUP = create("obj16/revgrp.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.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4ERepositorySettingsPage.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4ERepositorySettingsPage.java
new file mode 100644
index 00000000..26a091a8
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4ERepositorySettingsPage.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.ui;
+
+import org.eclipse.mylyn.reviews.connector.ui.AbstractEmfConnectorUi;
+import org.eclipse.mylyn.reviews.connector.ui.EmfRepositorySettingsPage;
+import org.eclipse.mylyn.tasks.core.TaskRepository;
+
+/**
+ * Wizard page to specify R4E connection details.
+ *
+ * @author Miles Parker
+ */
+public class R4ERepositorySettingsPage extends EmfRepositorySettingsPage {
+
+ public R4ERepositorySettingsPage(TaskRepository taskRepository) {
+ super("R4E Repository Settings", "Connect to a Mylyn Reviews R4E Review Group.", taskRepository);
+ }
+
+ @Override
+ public AbstractEmfConnectorUi getConnectorUi() {
+ return R4EUiPlugin.getDefault().getConnectorUi();
+ }
+
+ /**
+ * Supports R4E naming issue. Otherwise, not intended for extension.
+ *
+ * @param browseResult
+ * @return
+ */
+ @Override
+ protected String getQualifiedName(String browseResult) {
+ return browseResult + "_group_root";
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUiPlugin.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUiPlugin.java
new file mode 100644
index 00000000..bf7e6f83
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUiPlugin.java
@@ -0,0 +1,64 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.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 R4EUiPlugin extends AbstractUIPlugin {
+
+ public static final String PLUGIN_ID = "org.eclipse.mylyn.reviews.r4e.connector.ui"; //$NON-NLS-1$
+
+ private static R4EUiPlugin plugin;
+
+ private R4EConnectorUi ui;
+
+ public R4EUiPlugin() {
+ }
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ ui = new R4EConnectorUi();
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance.
+ *
+ * @return the shared instance
+ */
+ public static R4EUiPlugin getDefault() {
+ return plugin;
+ }
+
+ public R4EConnectorUi getConnectorUi() {
+ return ui;
+ }
+
+ public void setConnectorUi(R4EConnectorUi ui) {
+ this.ui = ui;
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUrlHandler.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUrlHandler.java
new file mode 100644
index 00000000..e282b412
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/R4EUrlHandler.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.ui;
+
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnectorPlugin;
+import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector;
+import org.eclipse.mylyn.reviews.connector.ui.EmfUrlHandler;
+
+/**
+ * @author Miles Parker
+ */
+public class R4EUrlHandler extends EmfUrlHandler {
+
+ @Override
+ protected AbstractEmfConnector getEmfConnector() {
+ return R4EConnectorPlugin.getDefault().getConnector();
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ArtifactsSection.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ArtifactsSection.java
new file mode 100644
index 00000000..a0a622dd
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ArtifactsSection.java
@@ -0,0 +1,196 @@
+/*******************************************************************************
+ * Copyright (c) 2013 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.internal.reviews.r4e.connector.ui.editor;
+
+import org.apache.commons.lang.StringUtils;
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.layout.GridLayoutFactory;
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.mylyn.internal.tasks.ui.editors.AbstractTaskEditorSection;
+import org.eclipse.mylyn.internal.tasks.ui.editors.EditorUtil;
+import org.eclipse.mylyn.reviews.core.model.IReview;
+import org.eclipse.mylyn.reviews.core.model.IReviewItem;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EItem;
+import org.eclipse.mylyn.tasks.core.ITask;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.forms.IFormColors;
+import org.eclipse.ui.forms.events.ExpansionAdapter;
+import org.eclipse.ui.forms.events.ExpansionEvent;
+import org.eclipse.ui.forms.widgets.ExpandableComposite;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.Section;
+
+/**
+ * Supports display of review items and files within them. To be merged eventually w/ the Gerrit patch set support.
+ *
+ * @author Miles Parker
+ * @author Steffen Pingel
+ * @author Sascha Scholz
+ */
+@SuppressWarnings("restriction")
+public class ArtifactsSection extends AbstractTaskEditorSection {
+
+ private FormToolkit toolkit;
+
+ private Composite composite;
+
+ public ArtifactsSection() {
+ setPartName("Artifacts");
+ }
+
+ public Label addTextClient(final FormToolkit toolkit, final Section section, String text) {
+ return addTextClient(toolkit, section, text, true);
+ }
+
+ public Label addTextClient(final FormToolkit toolkit, final Section section, String text, boolean hideOnExpand) {
+ final Label label = new Label(section, SWT.NONE);
+ label.setText(" " + text); //$NON-NLS-1$
+ label.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
+
+ section.setTextClient(label);
+
+ if (hideOnExpand) {
+ label.setVisible(!section.isExpanded());
+ section.addExpansionListener(new ExpansionAdapter() {
+ @Override
+ public void expansionStateChanged(ExpansionEvent e) {
+ label.setVisible(!section.isExpanded());
+ }
+ });
+ }
+
+ return label;
+ }
+
+ protected Shell getShell() {
+ return getTaskEditorPage().getSite().getShell();
+ }
+
+ protected ITask getTask() {
+ return getTaskEditorPage().getTask();
+ }
+
+ @Override
+ protected Control createContent(FormToolkit toolkit, Composite parent) {
+ this.toolkit = toolkit;
+
+ composite = toolkit.createComposite(parent);
+ GridLayoutFactory.fillDefaults().extendedMargins(0, 0, 0, 5).applyTo(composite);
+ final IReview review = ((R4ETaskEditorPage) getTaskEditorPage()).getReview();
+ for (IReviewItem item : review.getItems()) {
+ createSubSection((R4EItem) item, getSection());
+ }
+
+ return composite;
+ }
+
+ private void createSubSection(final R4EItem item, Section section) {
+ int style = ExpandableComposite.TWISTIE | ExpandableComposite.CLIENT_INDENT
+ | ExpandableComposite.LEFT_TEXT_CLIENT_ALIGNMENT;
+ final Section subSection = toolkit.createSection(composite, style);
+ GridDataFactory.fillDefaults().grab(true, false).applyTo(subSection);
+ String description = item.getDescription();
+ description = StringUtils.replace(description, "\n", "");
+ description = StringUtils.abbreviate(description, 100);
+ if (description == null) {
+ description = "Item";
+ }
+ subSection.setText(description);
+ subSection.setTitleBarForeground(toolkit.getColors().getColor(IFormColors.TITLE));
+ subSection.setToolTipText(item.getDescription());
+
+ addTextClient(toolkit, subSection, "", false); //$NON-NLS-1$
+
+ if (subSection.isExpanded()) {
+ createSubSectionContents(item, subSection);
+ }
+ subSection.addExpansionListener(new ExpansionAdapter() {
+ @Override
+ public void expansionStateChanged(ExpansionEvent e) {
+ if (subSection.getClient() == null) {
+ createSubSectionContents(item, subSection);
+ }
+ }
+ });
+ }
+
+ void createSubSectionContents(final R4EItem item, Section subSection) {
+ Composite composite = toolkit.createComposite(subSection);
+ GridLayoutFactory.fillDefaults().numColumns(2).applyTo(composite);
+ subSection.setClient(composite);
+
+ String addedBy = item.getAddedById();
+ if (addedBy != null) {
+ Label authorLabel = new Label(composite, SWT.NONE);
+ authorLabel.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
+ authorLabel.setText("Added By");
+
+ Text authorText = new Text(composite, SWT.READ_ONLY);
+ authorText.setText(addedBy);
+ }
+
+ String name = item.getAuthorRep();
+ if (name != null) {
+ Label commitLabel = new Label(composite, SWT.NONE);
+ commitLabel.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
+ commitLabel.setText("Author");
+
+ Text commitText = new Text(composite, SWT.READ_ONLY);
+ commitText.setText(name);
+ }
+
+ final TableViewer viewer = new TableViewer(composite, SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL | SWT.VIRTUAL);
+ GridDataFactory.fillDefaults().span(2, 1).grab(true, true).hint(500, SWT.DEFAULT).applyTo(viewer.getControl());
+ viewer.setContentProvider(new IStructuredContentProvider() {
+ public void dispose() {
+ // ignore
+ }
+
+ public Object[] getElements(Object inputElement) {
+ return item.getFileContextList().toArray();
+ }
+
+ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+ // ignore
+
+ }
+ });
+
+// Not currently supported
+// viewer.addOpenListener(new IOpenListener() {
+// public void open(OpenEvent event) {
+// EditorProxy.openSimpleEditor(R4EUIModelController.getNavigatorView().getSite().getPage(),
+// event.getSelection(), true);
+// }
+// });
+
+ viewer.setLabelProvider(new ReviewItemLabelProvider());
+
+ viewer.setInput(item);
+ EditorUtil.addScrollListener(viewer.getTable());
+
+ getTaskEditorPage().reflow();
+ }
+
+ @Override
+ protected boolean shouldExpandOnCreate() {
+ return ((R4ETaskEditorPage) getTaskEditorPage()).getReview() != null;
+ }
+
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4EEditorPeoplePart.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4EEditorPeoplePart.java
new file mode 100644
index 00000000..fa101115
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4EEditorPeoplePart.java
@@ -0,0 +1,80 @@
+/*******************************************************************************
+ * Copyright (c) 2013 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.internal.reviews.r4e.connector.ui.editor;
+
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnector;
+import org.eclipse.mylyn.internal.tasks.ui.editors.EditorUtil;
+import org.eclipse.mylyn.internal.tasks.ui.editors.MultiSelectionAttributeEditor;
+import org.eclipse.mylyn.tasks.core.data.DefaultTaskSchema;
+import org.eclipse.mylyn.tasks.core.data.TaskAttribute;
+import org.eclipse.mylyn.tasks.ui.editors.AbstractAttributeEditor;
+import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPart;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.Section;
+
+/**
+ * Supports custom display of review participants.
+ *
+ * @author Steffen Pingel
+ * @author Miles Parker
+ */
+@SuppressWarnings("restriction")
+public class R4EEditorPeoplePart extends AbstractTaskEditorPart {
+
+ private static final int COLUMN_MARGIN = 5;
+
+ public R4EEditorPeoplePart() {
+ setPartName("Reviewers");
+ }
+
+ private void addAttribute(Composite composite, FormToolkit toolkit, TaskAttribute attribute) {
+ AbstractAttributeEditor editor = createAttributeEditor(attribute);
+ if (editor != null) {
+ editor.createLabelControl(composite, toolkit);
+ GridDataFactory.defaultsFor(editor.getLabelControl())
+ .indent(COLUMN_MARGIN, 0)
+ .applyTo(editor.getLabelControl());
+ editor.createControl(composite, toolkit);
+ getTaskEditorPage().getAttributeEditorToolkit().adapt(editor);
+
+ GridDataFactory gridDataFactory = GridDataFactory.fillDefaults().grab(true, false).align(SWT.FILL, SWT.TOP);
+
+ if (editor instanceof MultiSelectionAttributeEditor) {
+ gridDataFactory.hint(SWT.DEFAULT, 95);
+ }
+
+ gridDataFactory.applyTo(editor.getControl());
+ }
+ }
+
+ @Override
+ public void createControl(Composite parent, FormToolkit toolkit) {
+ Section section = createSection(parent, toolkit, true);
+
+ Composite peopleComposite = toolkit.createComposite(section);
+ GridLayout layout = EditorUtil.createSectionClientLayout();
+ layout.numColumns = 2;
+ peopleComposite.setLayout(layout);
+
+ addAttribute(peopleComposite, toolkit,
+ getTaskData().getRoot().getMappedAttribute(DefaultTaskSchema.getInstance().USER_ASSIGNED.getKey()));
+ addAttribute(peopleComposite, toolkit, getTaskData().getRoot().getAttribute(R4EConnector.R4E_PARTICIPANTS_KEY));
+
+ toolkit.paintBordersFor(peopleComposite);
+ section.setClient(peopleComposite);
+ setSection(toolkit, section);
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPage.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPage.java
new file mode 100644
index 00000000..090465c7
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPage.java
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.ui.editor;
+
+import java.util.Set;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnector;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnectorPlugin;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.ui.R4EUiPlugin;
+import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector;
+import org.eclipse.mylyn.reviews.core.model.IReview;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EReview;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EReviewGroup;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.Persistence.RModelFactoryExt;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.CompatibilityException;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.ResourceHandlingException;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.SerializeFactory;
+import org.eclipse.mylyn.reviews.r4e.ui.internal.model.R4EUIModelController;
+import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPage;
+import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPart;
+import org.eclipse.mylyn.tasks.ui.editors.TaskEditor;
+import org.eclipse.mylyn.tasks.ui.editors.TaskEditorPartDescriptor;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.statushandlers.StatusManager;
+
+/**
+ * Customize the editor for R4E usage.
+ *
+ * @author Miles Parker
+ */
+public class R4ETaskEditorPage extends AbstractTaskEditorPage {
+
+ private IReview review;
+
+ public R4ETaskEditorPage(TaskEditor editor) {
+ super(editor, R4EConnector.CONNECTOR_KIND);
+ setNeedsPrivateSection(true);
+ R4EUIModelController.loadModel();
+ }
+
+ @Override
+ public void init(IEditorSite site, IEditorInput input) {
+ super.init(site, input);
+ forceModelUpdate();
+ if (review == null) {
+ StatusManager.getManager().handle(
+ new Status(IStatus.ERROR, R4EUiPlugin.PLUGIN_ID, "Couldn't locate review for task: "
+ + getTask().getTaskId()));
+ }
+ }
+
+ private void forceModelUpdate() {
+ try {
+ review = (IReview) ((AbstractEmfConnector) getConnector()).getTaskObject(getTaskRepository(),
+ getTask().getTaskId(), new NullProgressMonitor());
+ //TODO This is totally ugly hack, but we need to make sure the model loads here.
+ try {
+ RModelFactoryExt r4eFactory = SerializeFactory.getModelExtension();
+ r4eFactory.openR4EReview((R4EReviewGroup) review.eContainer(), ((R4EReview) review).getName());
+ } catch (ResourceHandlingException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID,
+ "Couldn't open review for task.", e));
+ } catch (CompatibilityException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID,
+ "Couldn't open review for task.", e));
+ }
+ } catch (CoreException e) {
+ StatusManager.getManager().handle(
+ new Status(IStatus.ERROR, R4EUiPlugin.PLUGIN_ID, "Couldn't open review for task: "
+ + getTask().getTaskId(), e));
+ }
+ }
+
+ @Override
+ protected Set<TaskEditorPartDescriptor> createPartDescriptors() {
+ Set<TaskEditorPartDescriptor> descriptors = super.createPartDescriptors();
+ for (TaskEditorPartDescriptor taskEditorPartDescriptor : descriptors) {
+ if (taskEditorPartDescriptor.getId().equals(ID_PART_PEOPLE)) {
+ descriptors.remove(taskEditorPartDescriptor);
+ break;
+ }
+ }
+ descriptors.add(new TaskEditorPartDescriptor(ID_PART_PEOPLE) {
+ @Override
+ public AbstractTaskEditorPart createPart() {
+ return new R4EEditorPeoplePart();
+ }
+ }.setPath(PATH_PEOPLE));
+ descriptors.add(new TaskEditorPartDescriptor(ArtifactsSection.class.getName()) {
+ @Override
+ public AbstractTaskEditorPart createPart() {
+ return new ArtifactsSection();
+ }
+ });
+ return descriptors;
+ }
+
+ @Override
+ public void refresh() {
+ forceModelUpdate();
+ super.refresh();
+ }
+
+ public synchronized IReview getReview() {
+ return review;
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPageFactory.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPageFactory.java
new file mode 100644
index 00000000..629cd035
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/R4ETaskEditorPageFactory.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.ui.editor;
+
+import org.eclipse.mylyn.commons.ui.CommonImages;
+import org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnector;
+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;
+
+/**
+ * Customize pages for R4E editor.
+ *
+ * @author Miles Parker
+ */
+public class R4ETaskEditorPageFactory extends AbstractTaskEditorPageFactory {
+
+ @Override
+ public boolean canCreatePageFor(TaskEditorInput input) {
+ return (input.getTask().getConnectorKind().equals(R4EConnector.CONNECTOR_KIND))
+ || (TasksUiUtil.isOutgoingNewTask(input.getTask(), R4EConnector.CONNECTOR_KIND));
+ }
+
+ @Override
+ public IFormPage createPage(TaskEditor parentEditor) {
+ return new R4ETaskEditorPage(parentEditor);
+ }
+
+ @Override
+ public Image getPageImage() {
+ return CommonImages.getImage(TasksUiImages.REPOSITORY_SMALL);
+ }
+
+ @Override
+ public String getPageText() {
+ return "R4E"; //$NON-NLS-1$
+ }
+
+ @Override
+ public int getPriority() {
+ return PRIORITY_TASK;
+ }
+
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ReviewItemLabelProvider.java b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ReviewItemLabelProvider.java
new file mode 100644
index 00000000..46088df4
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector.ui/src/org/eclipse/mylyn/internal/reviews/r4e/connector/ui/editor/ReviewItemLabelProvider.java
@@ -0,0 +1,93 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector.ui.editor;
+
+import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.StyledString;
+import org.eclipse.mylyn.commons.workbench.CommonImageManger;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EFileContext;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EFileVersion;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * A simple provider for review items. To be merged with Reviews item label support.
+ *
+ * @author Miles Parker
+ */
+public class ReviewItemLabelProvider extends LabelProvider implements IStyledLabelProvider {
+
+ private final CommonImageManger imageManager;
+
+ public ReviewItemLabelProvider() {
+ imageManager = new CommonImageManger();
+ }
+
+ @Override
+ public void dispose() {
+ super.dispose();
+ imageManager.dispose();
+ }
+
+ @Override
+ public Image getImage(Object element) {
+ if (element instanceof R4EFileContext) {
+ R4EFileContext item = (R4EFileContext) element;
+ if (item.getTarget() != null) {
+ return getImage(item.getTarget());
+ }
+ return getImage(item.getBase());
+ }
+ if (element instanceof R4EFileVersion) {
+ R4EFileVersion item = (R4EFileVersion) element;
+ return imageManager.getFileImage(item.getName());
+ }
+ return null;
+ }
+
+ @Override
+ public String getText(Object element) {
+ if (element instanceof R4EFileContext) {
+ R4EFileContext item = (R4EFileContext) element;
+ if (item.getTarget() != null) {
+ return getText(item.getTarget());
+ }
+ return getText(item.getBase());
+ }
+ if (element instanceof R4EFileVersion) {
+ R4EFileVersion item = (R4EFileVersion) element;
+ return item.getName();
+ }
+ return super.getText(element);
+ }
+
+ public StyledString getStyledText(Object element) {
+ if (element instanceof R4EFileContext) {
+ R4EFileContext item = (R4EFileContext) element;
+ if (item.getTarget() != null) {
+ return getStyledText(item.getTarget());
+ }
+ return getStyledText(item.getBase());
+ }
+
+ String text = getText(element);
+ if (text != null) {
+ StyledString styledString = new StyledString(text);
+ return styledString;
+ }
+ return new StyledString();
+ }
+
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/.classpath b/org.eclipse.mylyn.reviews.r4e.connector/.classpath
new file mode 100644
index 00000000..314132e2
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.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/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
+ <accessrules>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/core/model/**"/>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage*"/>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage*"/>
+ <accessrule kind="accessible" pattern="org/eclipse/mylyn/reviews/r4e/ui/internal/model/R4EUIModelController*"/>
+ </accessrules>
+ </classpathentry>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/.project b/org.eclipse.mylyn.reviews.r4e.connector/.project
new file mode 100644
index 00000000..af1af3c1
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.mylyn.reviews.r4e.connector</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.r4e.connector/.settings/org.eclipse.core.runtime.prefs b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000..5a0ad22d
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..be363990
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,352 @@
+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.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=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.5
+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.r4e.connector/.settings/org.eclipse.jdt.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 00000000..f6c0a161
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.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.r4e.connector/.settings/org.eclipse.ltk.core.refactoring.prefs b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.ltk.core.refactoring.prefs
new file mode 100644
index 00000000..5e7f2bd4
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.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.r4e.connector/.settings/org.eclipse.mylyn.tasks.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.mylyn.tasks.ui.prefs
new file mode 100644
index 00000000..d8c6d26a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.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.r4e.connector/.settings/org.eclipse.mylyn.team.ui.prefs b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.mylyn.team.ui.prefs
new file mode 100644
index 00000000..10d0afb9
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.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.r4e.connector/.settings/org.eclipse.pde.prefs b/org.eclipse.mylyn.reviews.r4e.connector/.settings/org.eclipse.pde.prefs
new file mode 100644
index 00000000..e8f2d562
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/.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.r4e.connector/META-INF/MANIFEST.MF b/org.eclipse.mylyn.reviews.r4e.connector/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..c37a79aa
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/META-INF/MANIFEST.MF
@@ -0,0 +1,22 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Mylyn R4E Connector
+Bundle-SymbolicName: org.eclipse.mylyn.reviews.r4e.connector;singleton:=true
+Bundle-Version: 0.13.0.qualifier
+Bundle-Activator: org.eclipse.mylyn.internal.reviews.r4e.connector.R4EConnectorPlugin
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.common;bundle-version="2.5.0",
+ org.eclipse.emf.ecore;bundle-version="2.5.0",
+ org.eclipse.emf.ecore.xmi;bundle-version="2.5.0",
+ org.eclipse.mylyn.commons.core,
+ org.eclipse.mylyn.commons.net,
+ org.eclipse.mylyn.reviews.core,
+ org.eclipse.mylyn.tasks.core,
+ org.eclipse.mylyn.commons.sdk.util,
+ org.eclipse.mylyn.reviews.r4e.core;bundle-version="0.13.0",
+ org.eclipse.mylyn.reviews.r4e.ui;bundle-version="0.13.0",
+ org.eclipse.mylyn.reviews.connector;bundle-version="0.13.0"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-Vendor: Eclipse Mylyn
+Export-Package: org.eclipse.mylyn.internal.reviews.r4e.connector;x-friends:="org.eclipse.mylyn.reviews.r4e.connector.ui,org.eclipse.mylyn.reviews.r4e.connector.tests"
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/about.html b/org.eclipse.mylyn.reviews.r4e.connector/about.html
new file mode 100644
index 00000000..d774b07c
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/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 (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). 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, &quot;Program&quot; 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 (&quot;Redistributor&quot;) 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.r4e.connector/build.properties b/org.eclipse.mylyn.reviews.r4e.connector/build.properties
new file mode 100644
index 00000000..9a937b1d
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/build.properties
@@ -0,0 +1,16 @@
+# 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
+
+bin.includes = .,\
+ META-INF/,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/pom.xml b/org.eclipse.mylyn.reviews.r4e.connector/pom.xml
new file mode 100644
index 00000000..39981cbc
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/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.r4e.connector</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.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EAttributeMapper.java b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EAttributeMapper.java
new file mode 100644
index 00000000..7be8b59a
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EAttributeMapper.java
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2013 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.internal.reviews.r4e.connector;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.mylyn.reviews.connector.EmfAttributeMapper;
+import org.eclipse.mylyn.reviews.connector.EmfTaskSchema;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.Persistence.ResourceUpdater;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.OutOfSyncException;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.ResourceHandlingException;
+import org.eclipse.mylyn.reviews.r4e.ui.internal.model.R4EUIModelController;
+import org.eclipse.mylyn.tasks.core.TaskRepository;
+import org.eclipse.mylyn.tasks.core.data.TaskAttribute;
+
+/**
+ * Extends attribute mapper to manage checking out of R4E objects.
+ *
+ * @author Miles Parker
+ */
+public class R4EAttributeMapper extends EmfAttributeMapper {
+
+ public R4EAttributeMapper(EmfTaskSchema emfTaskSchema, TaskRepository taskRepository) {
+ super(emfTaskSchema, taskRepository);
+ }
+
+ @Override
+ public boolean copyTaskToEmf(TaskAttribute attribute, EObject object) throws CoreException {
+ //Introduces apparently unavoidable dependency on r4e ui..
+ final String currentUser = R4EUIModelController.getReviewer();
+ Long bookNum;
+ try {
+ ResourceUpdater fResourceUpdater = R4EUIModelController.FResourceUpdater;
+ bookNum = fResourceUpdater.checkOut(object, currentUser);
+ boolean result = super.copyTaskToEmf(attribute, object);
+ fResourceUpdater.checkIn(bookNum);
+ return result;
+ } catch (ResourceHandlingException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID,
+ "Problem while updating value: " + e.getLocalizedMessage(), e));
+ } catch (OutOfSyncException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID,
+ "Problem while updating value: " + e.getLocalizedMessage(), e));
+ }
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EClient.java b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EClient.java
new file mode 100644
index 00000000..c949bf6e
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EClient.java
@@ -0,0 +1,88 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector;
+import org.eclipse.mylyn.reviews.connector.client.EmfClient;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EReviewGroup;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.Persistence.RModelFactoryExt;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.CompatibilityException;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.ResourceHandlingException;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.SerializeFactory;
+import org.eclipse.mylyn.tasks.core.TaskRepository;
+import org.eclipse.mylyn.tasks.core.data.TaskAttribute;
+import org.eclipse.mylyn.tasks.core.data.TaskData;
+
+/**
+ * Manages interaction with specific review file.
+ *
+ * @author Miles Parker
+ */
+public class R4EClient extends EmfClient {
+
+ public R4EClient(TaskRepository repository) {
+ super(repository);
+ setReloadOnOpen(true);
+ }
+
+ /**
+ * Opens the root EMF object at the underlying URI location. A resource must exist at the repository url.
+ *
+ * @throws CoreException
+ * If the resource at the repository URI doesn't exist or has problems
+ */
+ @Override
+ public EObject openContainer(URI uri) throws CoreException {
+ RModelFactoryExt r4eFactory = SerializeFactory.getModelExtension();
+ try {
+ return r4eFactory.openR4EReviewGroup(uri);
+ } catch (ResourceHandlingException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID, e.getLocalizedMessage(), e));
+ } catch (CompatibilityException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID, e.getLocalizedMessage(), e));
+ } catch (Exception e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID, "Couldn't open resource: " //$NON-NLS-1$
+ + e.getClass().getSimpleName() + " [" + uri + "]", e)); //$NON-NLS-1$//$NON-NLS-2$
+ }
+ }
+
+ @Override
+ public EObject create(EClass eClass, TaskData taskData) throws CoreException {
+ String reviewName = taskData.getRoot().getMappedAttribute(TaskAttribute.SUMMARY).getValue();
+ try {
+ return SerializeFactory.getModelExtension().createR4EReview((R4EReviewGroup) getRootContainer(),
+ reviewName, "unknown");
+ } catch (ResourceHandlingException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID, "Couldn't create task: " //$NON-NLS-1$
+ + e.getClass().getSimpleName() + " [" + eClass + "]", e)); //$NON-NLS-1$//$NON-NLS-2$
+ }
+ }
+
+ @Override
+ protected void saveObject(EObject object) throws CoreException {
+ super.saveObject(object);
+ }
+
+ @Override
+ public AbstractEmfConnector getConnector() {
+ return R4EConnectorPlugin.getDefault().getConnector();
+ }
+
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnector.java b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnector.java
new file mode 100644
index 00000000..6bc37528
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnector.java
@@ -0,0 +1,246 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.apache.commons.lang.StringUtils;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.mylyn.reviews.connector.AbstractEmfConnector;
+import org.eclipse.mylyn.reviews.connector.EmfConfiguration;
+import org.eclipse.mylyn.reviews.connector.EmfTaskSchema;
+import org.eclipse.mylyn.reviews.connector.EmfTaskSchema.FieldFeature;
+import org.eclipse.mylyn.reviews.connector.client.EmfClient;
+import org.eclipse.mylyn.reviews.core.model.IUser;
+import org.eclipse.mylyn.reviews.internal.core.model.ReviewsPackage;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EReview;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EReviewGroup;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EUser;
+import org.eclipse.mylyn.reviews.r4e.core.model.RModelPackage;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.Persistence.RModelFactoryExt;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.CompatibilityException;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.ResourceHandlingException;
+import org.eclipse.mylyn.reviews.r4e.core.model.serial.impl.SerializeFactory;
+import org.eclipse.mylyn.tasks.core.ITask;
+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.TaskAttributeMapper;
+import org.eclipse.mylyn.tasks.core.data.TaskData;
+import org.osgi.framework.Bundle;
+
+/**
+ * Core R4E connector support.
+ *
+ * @author Miles Parker
+ */
+public class R4EConnector extends AbstractEmfConnector {
+
+ public static final String R4E_PARTICIPANTS_KEY = "task.r4e.user.participants";
+
+ public static final String R4E_REVIEW_ITEM_COUNT_KEY = "task.r4e.review.item.count";
+
+ /**
+ * Connector kind
+ */
+ public static final String CONNECTOR_KIND = "org.eclipse.mylyn.r4e"; //$NON-NLS-1$
+
+ /**
+ * Label for the connector.
+ */
+ public static final String CONNECTOR_LABEL = "R4E Code Review"; //$NON-NLS-1$
+
+ private final EClass[] R4E_CLASSES = new EClass[] { RModelPackage.Literals.R4E_REVIEW };
+
+ private final DefaultTaskSchema parentSchema = DefaultTaskSchema.getInstance();
+
+ private final FieldFeature[] R4E_PAIRS = new FieldFeature[] {
+ new FieldFeature(parentSchema.DESCRIPTION, RModelPackage.Literals.R4E_REVIEW__EXTRA_NOTES),
+ new FieldFeature(parentSchema.SUMMARY, RModelPackage.Literals.R4E_REVIEW__NAME, false),
+ new FieldFeature(parentSchema.TASK_KIND, RModelPackage.Literals.R4E_REVIEW__TYPE, true),
+ new FieldFeature(parentSchema.DATE_CREATION, RModelPackage.Literals.R4E_REVIEW__START_DATE, true),
+ new FieldFeature(parentSchema.DATE_MODIFICATION, RModelPackage.Literals.R4E_REVIEW__MODIFIED_DATE, true),
+ new FieldFeature(parentSchema.DATE_COMPLETION, RModelPackage.Literals.R4E_REVIEW__END_DATE, false),
+ new FieldFeature(parentSchema.USER_REPORTER, RModelPackage.Literals.R4E_REVIEW__CREATED_BY) };
+
+ private final EAttribute[] R4E_SEARCH_FIELDS = new EAttribute[] { RModelPackage.Literals.R4E_REVIEW__NAME,
+ RModelPackage.Literals.R4E_REVIEW__PROJECT, RModelPackage.Literals.R4E_REVIEW__OBJECTIVES,
+ RModelPackage.Literals.R4E_REVIEW__DUE_DATE, RModelPackage.Literals.R4E_REVIEW__START_DATE,
+ RModelPackage.Literals.R4E_REVIEW__END_DATE, RModelPackage.Literals.R4E_REVIEW__MODIFIED_DATE,
+ RModelPackage.Literals.R4E_REVIEW__TYPE };
+
+ public R4EConnector() {
+ if (R4EConnectorPlugin.getDefault() != null) {
+ R4EConnectorPlugin.getDefault().setConnector(this);
+ }
+ }
+
+ @Override
+ protected KeyStrategy getKeyStrategy() {
+ return KeyStrategy.MEMBER_INDEX;
+ }
+
+ @Override
+ public EmfTaskSchema createTaskSchema() {
+ EmfTaskSchemaDelegator taskSchema = new EmfTaskSchemaDelegator() {
+ @Override
+ public TaskAttributeMapper getAttributeMapper(TaskRepository repository) {
+ return new R4EAttributeMapper(this, repository);
+ }
+
+ @Override
+ public boolean isSupported(EStructuralFeature feature) {
+ return (feature != ReviewsPackage.Literals.MODEL_VERSIONING__FRAGMENT_VERSION)
+ && (feature != ReviewsPackage.Literals.REVIEW__ID)
+ && (feature != ReviewsPackage.Literals.DATED__CREATION_DATE)
+ && (feature != ReviewsPackage.Literals.DATED__MODIFICATION_DATE)
+ && (feature != RModelPackage.Literals.R4E_REVIEW_COMPONENT__ASSIGNED_TO)
+ && (feature != ReviewsPackage.Literals.REVIEW_COMPONENT__ENABLED) && super.isSupported(feature);
+ }
+
+ @Override
+ public void initialize() {
+ super.initialize();
+ createField(RModelPackage.Literals.R4E_REVIEW__PROJECT, Flag.READ_ONLY);
+ createField(RModelPackage.Literals.R4E_REVIEW__COMPONENTS, Flag.READ_ONLY);
+ }
+
+ @Override
+ public void initialize(TaskData taskData) {
+ super.initialize(taskData);
+ inheritFrom(parentSchema.USER_ASSIGNED).addFlags(Flag.READ_ONLY)
+ .create()
+ .createAttribute(taskData.getRoot());
+ Field partipantsField = createField(R4E_PARTICIPANTS_KEY, "Participants", TaskAttribute.TYPE_PERSON,
+ Flag.READ_ONLY);
+ partipantsField.createAttribute(taskData.getRoot());
+ }
+ };
+ return taskSchema;
+ }
+
+ @Override
+ public TaskData getTaskData(TaskRepository repository, String taskId, IProgressMonitor monitor)
+ throws CoreException {
+ TaskData taskData = super.getTaskData(repository, taskId, monitor);
+
+ R4EReview review = (R4EReview) getTaskObjectChecked(repository, taskId, monitor);
+ RModelFactoryExt r4eFactory = SerializeFactory.getModelExtension();
+ try {
+ r4eFactory.openR4EReview((R4EReviewGroup) review.eContainer(), review.getName());
+ } catch (ResourceHandlingException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID,
+ "Couldn't open review for task: " + taskId, e));
+ } catch (CompatibilityException e) {
+ throw new CoreException(new Status(IStatus.ERROR, R4EConnectorPlugin.PLUGIN_ID,
+ "Couldn't open review for task: " + taskId, e));
+ }
+
+ IUser owner = review.getCreatedBy();
+ if (owner != null && owner.getEmail() != null) {
+ TaskAttribute attribute = taskData.getRoot().getAttribute(parentSchema.USER_ASSIGNED.getKey());
+ attribute.setValue(owner.getEmail());
+ }
+
+ Collection<R4EUser> participants = review.getUsersMap().values();
+ List<String> emails = new ArrayList<String>();
+ for (R4EUser participant : participants) {
+ emails.add(participant.getEmail());
+ }
+ String emailList = StringUtils.join(emails, ",");
+ taskData.getRoot().getAttribute(R4E_PARTICIPANTS_KEY).setValue(emailList);
+
+ TaskAttribute attribute = taskData.getRoot().getAttribute(R4E_REVIEW_ITEM_COUNT_KEY);
+ if (attribute == null) {
+ attribute = taskData.getRoot().createAttribute(R4E_REVIEW_ITEM_COUNT_KEY);
+ } else {
+ String newSize = Integer.toString(review.getItems().size());
+ if (attribute.getValue().equals(newSize)) {
+ attribute.setValue(newSize);
+ }
+ }
+ return taskData;
+ }
+
+ @Override
+ public boolean hasRepositoryDueDate(TaskRepository taskRepository, ITask task, TaskData taskData) {
+ return true;
+ }
+
+ @Override
+ protected EmfClient createClient(final TaskRepository repository, EmfConfiguration configuration) {
+ return new R4EClient(repository);
+ }
+
+ @Override
+ public String getConnectorKind() {
+ return CONNECTOR_KIND;
+ }
+
+ @Override
+ public String getLabel() {
+ return CONNECTOR_LABEL;
+ }
+
+ @Override
+ public EReference getContainmentReference() {
+ return ReviewsPackage.Literals.REVIEW_GROUP__REVIEWS;
+ }
+
+ @Override
+ public EAttribute getContentsNameAttribute() {
+ return RModelPackage.Literals.R4E_REVIEW_GROUP__NAME;
+ }
+
+ @Override
+ public EClass getContainerClass() {
+ return RModelPackage.Literals.R4E_REVIEW_GROUP;
+ }
+
+ @Override
+ public Bundle getConnectorBundle() {
+ return R4EConnectorPlugin.getDefault().getBundle();
+ }
+
+ @Override
+ public EClass[] getTaskClasses() {
+ return R4E_CLASSES;
+ }
+
+ @Override
+ public FieldFeature[] getTaskFeatures() {
+ return R4E_PAIRS;
+ }
+
+ @Override
+ public EAttribute[] getSearchAttributes() {
+ return R4E_SEARCH_FIELDS;
+ }
+
+ @Override
+ public String getNextTaskId(EObject taskContainer) {
+ return null;
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnectorPlugin.java b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnectorPlugin.java
new file mode 100644
index 00000000..44bcc12b
--- /dev/null
+++ b/org.eclipse.mylyn.reviews.r4e.connector/src/org/eclipse/mylyn/internal/reviews/r4e/connector/R4EConnectorPlugin.java
@@ -0,0 +1,72 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Ericsson
+ *
+ * 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.r4e.connector;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+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 R4EConnectorPlugin extends Plugin {
+
+ public static final String PLUGIN_ID = "org.eclipse.mylyn.reviews.r4e.connector"; //$NON-NLS-1$
+
+ private static R4EConnectorPlugin plugin;
+
+ private R4EConnector connector;
+
+ public R4EConnectorPlugin() {
+ }
+
+ @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 R4EConnectorPlugin getDefault() {
+ return plugin;
+ }
+
+ void setConnector(R4EConnector connector) {
+ this.connector = connector;
+ }
+
+ public R4EConnector getConnector() {
+ return connector;
+ }
+
+ 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, R4EConnectorPlugin.PLUGIN_ID, message, e));
+ }
+}
diff --git a/org.eclipse.mylyn.reviews.r4e.core.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer b/org.eclipse.mylyn.reviews.r4e.core.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer
index 9c7c69f9..844ea028 100644
--- a/org.eclipse.mylyn.reviews.r4e.core.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer
+++ b/org.eclipse.mylyn.reviews.r4e.core.tests/stubs_model/outGroupX/Golden_Group_group_root.xrer
@@ -1,15 +1,15 @@
-<?xml version="1.0" encoding="ASCII"?>
-<r4ecore:R4EReviewGroup xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_UQxKYERPEeC0spkCnDexvg" description="This is sample description - Group level" name="Golden Group" fragmentVersion="0.13.0" defaultEntryCriteria="-Entry Criteria">
- <reviewGroupTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_ozavEERPEeC0spkCnDexvg" taskId="324327" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324327"/>
- <availableProjects>P1</availableProjects>
- <availableProjects>P2</availableProjects>
- <availableProjects>P3</availableProjects>
- <availableComponents>Component1</availableComponents>
- <availableComponents>Component2</availableComponents>
- <availableComponents>Component3</availableComponents>
- <designRuleLocations xsi:nil="true"/>
- <availableAnomalyTypes xmi:id="_ozj5AERPEeC0spkCnDexvg" type="Erroneous"/>
- <availableAnomalyTypes xmi:id="_ozlHIURPEeC0spkCnDexvg" type="Superflous"/>
- <availableAnomalyTypes xmi:id="_ozlHI0RPEeC0spkCnDexvg" type="Improvement"/>
- <availableAnomalyTypes xmi:id="_ozlHJURPEeC0spkCnDexvg" type="Question"/>
-</r4ecore:R4EReviewGroup>
+<?xml version="1.0" encoding="ASCII"?>
+<r4ecore:R4EReviewGroup xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:r4ecore="http://org.eclipse.mylyn.reviews.r4e.core.model/" xmi:id="_UQxKYERPEeC0spkCnDexvg" description="This is sample description - Group level" name="Golden Group" defaultEntryCriteria="-Entry Criteria">
+ <reviewGroupTask xsi:type="r4ecore:R4ETaskReference" xmi:id="_ozavEERPEeC0spkCnDexvg" taskId="324327" repositoryURL="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324327"/>
+ <availableProjects>P1</availableProjects>
+ <availableProjects>P2</availableProjects>
+ <availableProjects>P3</availableProjects>
+ <availableComponents>Component1</availableComponents>
+ <availableComponents>Component2</availableComponents>
+ <availableComponents>Component3</availableComponents>
+ <designRuleLocations xsi:nil="true"/>
+ <availableAnomalyTypes xmi:id="_ozj5AERPEeC0spkCnDexvg" type="Erroneous"/>
+ <availableAnomalyTypes xmi:id="_ozlHIURPEeC0spkCnDexvg" type="Superflous"/>
+ <availableAnomalyTypes xmi:id="_ozlHI0RPEeC0spkCnDexvg" type="Improvement"/>
+ <availableAnomalyTypes xmi:id="_ozlHJURPEeC0spkCnDexvg" type="Question"/>
+</r4ecore:R4EReviewGroup>
diff --git a/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/editors/EditorProxy.java b/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/editors/EditorProxy.java
index 0b22b044..aa55614a 100644
--- a/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/editors/EditorProxy.java
+++ b/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/editors/EditorProxy.java
@@ -24,6 +24,7 @@ import java.util.Iterator;
import org.eclipse.compare.CompareEditorInput;
import org.eclipse.compare.ITypedElement;
+import org.eclipse.core.resources.IStorage;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Platform;
@@ -35,6 +36,7 @@ import org.eclipse.jface.text.source.SourceViewer;
import org.eclipse.jface.util.OpenStrategy;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.mylyn.reviews.r4e.core.model.R4EFileContext;
import org.eclipse.mylyn.reviews.r4e.core.model.R4EFileVersion;
import org.eclipse.mylyn.reviews.r4e.ui.R4EUIPlugin;
import org.eclipse.mylyn.reviews.r4e.ui.internal.model.IR4EUIModelElement;
@@ -146,7 +148,7 @@ public class EditorProxy {
//Check if the base file is set, if so, we will use the compare editor. Otherwise we use the normal editor of the appropriate type
if (context.isFileVersionsComparable() && !aForceSingleEditor) {
- editor = openCompareEditor(aPage, context, baseFileVersion, targetFileVersion);
+ editor = openCompareEditor(aPage, baseFileVersion, targetFileVersion);
} else {
if (null != targetFileVersion) {
editor = openSingleEditor(aPage, context, targetFileVersion, position);
@@ -169,6 +171,71 @@ public class EditorProxy {
}
/**
+ * Method openEditor. Open the editor
+ *
+ * @param aPage
+ * IWorkbenchPage - the current workbench page
+ * @param aSelection
+ * ISelection - the currently selected model element
+ * @param aForceSingleEditor
+ * boolean - flag to force single editor
+ * @throws CoreException
+ */
+ public static IEditorPart openSimpleEditor(IWorkbenchPage aPage, ISelection aSelection, boolean aForceSingleEditor) {
+
+ IEditorPart editor = null;
+
+ if (aSelection.isEmpty() || !(aSelection instanceof IStructuredSelection)) {
+ return editor;
+ }
+
+ Object element = null;
+ IR4EUIPosition position = null;
+
+ for (final Iterator<?> iterator = ((IStructuredSelection) aSelection).iterator(); iterator.hasNext();) {
+
+ element = iterator.next();
+ if (!(element instanceof R4EFileContext)) {
+ continue;
+ }
+
+ R4EFileContext context = (R4EFileContext) element;
+
+ //Get files from FileContext
+ R4EFileVersion baseFileVersion = context.getBase();
+ R4EFileVersion targetFileVersion = context.getTarget();
+
+ //If the files are the same (or do not exist), open the single editor
+ if (null == baseFileVersion || null == targetFileVersion
+ || baseFileVersion.getVersionID().equals(targetFileVersion.getVersionID())) {
+ aForceSingleEditor = true;
+ }
+
+ //Check if the base file is set, if so, we will use the compare editor. Otherwise we use the normal editor of the appropriate type
+ if (!aForceSingleEditor) {
+ editor = openCompareEditor(aPage, baseFileVersion, targetFileVersion);
+ } else {
+ if (null != targetFileVersion) {
+ editor = openSingleEditor(aPage, null, targetFileVersion, position);
+ } else if (null != baseFileVersion) {
+ //File was removed, open the base then
+ editor = openSingleEditor(aPage, null, baseFileVersion, position);
+ } else {
+ //Show the error, the file was in another project and was not
+ //found when creating the commit review item
+ String error = "Base and target file version not found for this review item";
+ R4EUIPlugin.Ftracer.traceError("Exception: " + error);
+ CoreException exception = new CoreException(new Status(IStatus.ERROR, R4EUIPlugin.PLUGIN_ID, error));
+ //Display the error, but do not log in the error log
+ UIUtils.displayCoreErrorDialog(exception, false);
+
+ }
+ }
+ }
+ return editor;
+ }
+
+ /**
* Method openSingleEditor. Open the single-mode default editor for the file type
*
* @param aPage
@@ -195,11 +262,15 @@ public class EditorProxy {
} else {
editorInput = new R4EFileRevisionEditorInput(aFileVersion);
}
- final String id = getEditorId(editorInput.getName(),
- getContentType(editorInput.getName(), editorInput.getStorage().getContents()));
+ InputStream contents = null;
+ IStorage storage = editorInput.getStorage();
+ if (storage != null) {
+ contents = storage.getContents();
+ }
+ final String id = getEditorId(editorInput.getName(), getContentType(editorInput.getName(), contents));
editor = aPage.openEditor(editorInput, id, OpenStrategy.activateOnOpen());
final ITextOperationTarget target = (ITextOperationTarget) editor.getAdapter(ITextOperationTarget.class);
- if (target instanceof SourceViewer) {
+ if (target instanceof SourceViewer && aContext != null) {
final SourceViewer sourceViewer = (SourceViewer) target;
UIUtils.getSingleAnnotationSupport(sourceViewer, aContext);
}
@@ -229,8 +300,8 @@ public class EditorProxy {
* R4EFileVersion - the target (or current) file version
* @return IEditorPart
*/
- private static IEditorPart openCompareEditor(IWorkbenchPage aPage, R4EUIFileContext aContext,
- R4EFileVersion aBaseFileVersion, R4EFileVersion aTargetFileVersion) {
+ private static IEditorPart openCompareEditor(IWorkbenchPage aPage, R4EFileVersion aBaseFileVersion,
+ R4EFileVersion aTargetFileVersion) {
//Reuse editor if it is already open on the same input
CompareEditorInput input = null;
diff --git a/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/properties/tabbed/ReviewGroupTabPropertySection.java b/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/properties/tabbed/ReviewGroupTabPropertySection.java
index dffbd9a6..710460fc 100644
--- a/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/properties/tabbed/ReviewGroupTabPropertySection.java
+++ b/org.eclipse.mylyn.reviews.r4e.ui/src/org/eclipse/mylyn/reviews/r4e/ui/internal/properties/tabbed/ReviewGroupTabPropertySection.java
@@ -460,7 +460,9 @@ public class ReviewGroupTabPropertySection extends ModelElementTabPropertySectio
}
fAvailableComponents.updateButtons();
+ if (null != modelGroup.getDefaultEntryCriteria()) {
fDefaultEntryCriteriaText.setText(modelGroup.getDefaultEntryCriteria());
+ }
final List<R4EUIRuleSet> uiRuleSets = ((R4EUIRootElement) ((R4EUIReviewGroup) fProperties.getElement()).getParent()).getRuleSets();
final List<String> tmpRuleSetLocations = new ArrayList<String>();
diff --git a/pom.xml b/pom.xml
index fdeb0825..ee87bdda 100644
--- a/pom.xml
+++ b/pom.xml
@@ -196,5 +196,8 @@
<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>
+ <module>org.eclipse.mylyn.reviews.r4e.connector</module>
+ <module>org.eclipse.mylyn.reviews.r4e.connector.ui</module>
+ <module>org.eclipse.mylyn.reviews.r4e.connector.tests</module>
</modules>
</project>

Back to the top