Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--org.eclipse.mylyn.oslc.core/src/org/eclipse/mylyn/internal/oslc/core/client/AbstractOslcClient.java12
-rw-r--r--org.eclipse.mylyn.oslc.tests/src/org/eclipse/mylyn/oslc/cm/tests/RtcOlscTest.java11
2 files changed, 13 insertions, 10 deletions
diff --git a/org.eclipse.mylyn.oslc.core/src/org/eclipse/mylyn/internal/oslc/core/client/AbstractOslcClient.java b/org.eclipse.mylyn.oslc.core/src/org/eclipse/mylyn/internal/oslc/core/client/AbstractOslcClient.java
index 2c1081cf9..a85005218 100644
--- a/org.eclipse.mylyn.oslc.core/src/org/eclipse/mylyn/internal/oslc/core/client/AbstractOslcClient.java
+++ b/org.eclipse.mylyn.oslc.core/src/org/eclipse/mylyn/internal/oslc/core/client/AbstractOslcClient.java
@@ -14,6 +14,7 @@ package org.eclipse.mylyn.internal.oslc.core.client;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
@@ -378,8 +379,13 @@ public abstract class AbstractOslcClient {
return configuration;
}
- public Collection<AbstractChangeRequest> performQuery(String queryUrl, IProgressMonitor monitor)
- throws CoreException {
+ public Collection<AbstractChangeRequest> performQuery(String query, IProgressMonitor monitor) throws CoreException {
+ try {
+ query = URLEncoder.encode(query, "UTF-8"); //$NON-NLS-1$
+ } catch (UnsupportedEncodingException e) {
+ query = URLEncoder.encode(query);
+ }
+ final String requestUrl = getConfiguration(monitor).getSimpleQueryUrl() + "?oslc_cm.query=" + query; //$NON-NLS-1$
RequestHandler<Collection<AbstractChangeRequest>> handler = new RequestHandler<Collection<AbstractChangeRequest>>(
"Performing Query") { //$NON-NLS-1$
@@ -393,7 +399,7 @@ public abstract class AbstractOslcClient {
}
};
- return executeMethod(createGetMethod(queryUrl), handler, monitor);
+ return executeMethod(createGetMethod(requestUrl), handler, monitor);
}
diff --git a/org.eclipse.mylyn.oslc.tests/src/org/eclipse/mylyn/oslc/cm/tests/RtcOlscTest.java b/org.eclipse.mylyn.oslc.tests/src/org/eclipse/mylyn/oslc/cm/tests/RtcOlscTest.java
index 1cb8f0c65..afcb0695c 100644
--- a/org.eclipse.mylyn.oslc.tests/src/org/eclipse/mylyn/oslc/cm/tests/RtcOlscTest.java
+++ b/org.eclipse.mylyn.oslc.tests/src/org/eclipse/mylyn/oslc/cm/tests/RtcOlscTest.java
@@ -11,7 +11,6 @@
package org.eclipse.mylyn.oslc.cm.tests;
-import java.net.URLEncoder;
import java.util.Collection;
import java.util.List;
import java.util.Set;
@@ -52,16 +51,16 @@ public class RtcOlscTest extends TestCase {
private static final String BASE_URL = "https://192.168.0.3:9443/jazz/oslc/workitems/catalog";
-// private static final String BASE_URL = "https://192.168.0.3:9443/jazz/oslc/contexts/_9Dyg4DLzEd-G-8cuiS4gvg/workitems/services.xml";
+ private static final String SERVICE_URL = "https://192.168.0.3:9443/jazz/oslc/contexts/_9Dyg4DLzEd-G-8cuiS4gvg/workitems/services.xml";
@Override
protected void setUp() throws Exception {
super.setUp();
- this.repository = new TaskRepository("rtc", BASE_URL);
+ this.repository = new TaskRepository("rtc", SERVICE_URL);
this.repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("ADMIN", "ADMIN"),
false);
this.location = new TaskRepositoryLocationFactory().createWebLocation(repository);
- this.client = new AbstractOslcClient(location, new OslcServiceDescriptor(BASE_URL)) {
+ this.client = new AbstractOslcClient(location, new OslcServiceDescriptor(SERVICE_URL)) {
@Override
public RepositoryResponse putTaskData(TaskData taskData, Set<TaskAttribute> oldValues,
@@ -126,9 +125,7 @@ public class RtcOlscTest extends TestCase {
public void testSimpleQuery() throws Exception {
List<OslcServiceProvider> services = client.getAvailableServices(BASE_URL, null);
OslcServiceProvider desc = services.get(0);
- OslcServiceDescriptor serviceDescriptor = client.getServiceDescriptor(desc, null);
- Collection<AbstractChangeRequest> result = client.performQuery(serviceDescriptor.getSimpleQueryUrl()
- + "?oslc_cm.query=" + URLEncoder.encode("dc:title=\"my first work item\"", "UTF-8"), null);
+ Collection<AbstractChangeRequest> result = client.performQuery("dc:title=\"my first work item\"", null);
assertEquals(1, result.size());
AbstractChangeRequest request = result.iterator().next();
request.getTitle().equals("my first work item");

Back to the top