Author: [email protected]
Date: Tue Mar 29 17:44:09 2011
New Revision: 921
Log:
AMDATU-283 cleanup old resource/context code
Modified:
branches/AMDATU-283-dev/amdatu-example/course-service/pom.xml
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/osgi/Activator.java
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/service/CourseResource.java
Modified: branches/AMDATU-283-dev/amdatu-example/course-service/pom.xml
==============================================================================
--- branches/AMDATU-283-dev/amdatu-example/course-service/pom.xml
(original)
+++ branches/AMDATU-283-dev/amdatu-example/course-service/pom.xml Tue Mar
29 17:44:09 2011
@@ -14,6 +14,13 @@
<dependencies>
<dependency>
+ <groupId>org.amdatu.web</groupId>
+ <artifactId>dispatcher</artifactId>
+ <version>${project.version}</version>
+ <scope>provided</scope>
+ <type>bundle</type>
+ </dependency>
+ <dependency>
<groupId>org.amdatu.web.rest</groupId>
<artifactId>jaxrs</artifactId>
<version>${project.version}</version>
Modified:
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/osgi/Activator.java
==============================================================================
---
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/osgi/Activator.java
(original)
+++
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/osgi/Activator.java
Tue Mar 29 17:44:09 2011
@@ -16,6 +16,9 @@
*/
package org.amdatu.example.course.service.osgi;
+import java.util.Dictionary;
+import java.util.Hashtable;
+
import org.amdatu.cassandra.application.CassandraConfigurationService;
import org.amdatu.core.config.templates.ConfigTemplateManager;
import org.amdatu.example.course.service.CourseService;
@@ -25,6 +28,7 @@
import org.amdatu.example.course.service.service.ProfileDataProvider;
import org.amdatu.libraries.utilities.osgi.ServiceDependentActivator;
import org.amdatu.opensocial.profile.PersonService;
+import org.amdatu.web.dispatcher.DispatcherService;
import org.amdatu.web.httpcontext.ResourceProvider;
import org.amdatu.web.rest.jaxrs.JaxRsSpi;
import org.apache.felix.dm.DependencyManager;
@@ -40,9 +44,10 @@
* @author ivol
*/
public class Activator extends ServiceDependentActivator {
- // The resource identifier for this bundle. Resources are only considered
to be 'ours' when
- // it is prefixed with this id
- public final static String RESOURCE_ID = "examples/course";
+
+ public final static String CONTEXTID = "amdatu-examples";
+ public final static String ALIAS = "/examples/course";
+
@Override
protected Class<?>[] getRequiredServices() {
@@ -61,9 +66,12 @@
.add(createServiceDependency().setService(ModelSet.class).setRequired(true)));
// Create and register the REST interface for the course service
+ Dictionary<String, Object> properties = new Hashtable<String,
Object>();
+ properties.put(DispatcherService.CONTEXT_ID_KEY, CONTEXTID);
+ properties.put(DispatcherService.ALIAS_KEY, ALIAS);
manager.add(
createComponent()
- .setInterface(ResourceProvider.class.getName(), null)
+ .setInterface(ResourceProvider.class.getName(), properties)
.setImplementation(CourseResource.class)
.add(createServiceDependency().setService(LogService.class).setRequired(true))
.add(createServiceDependency().setService(UserAdmin.class).setRequired(true))
Modified:
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/service/CourseResource.java
==============================================================================
---
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/service/CourseResource.java
(original)
+++
branches/AMDATU-283-dev/amdatu-example/course-service/src/main/java/org/amdatu/example/course/service/service/CourseResource.java
Tue Mar 29 17:44:09 2011
@@ -16,8 +16,6 @@
*/
package org.amdatu.example.course.service.service;
-import static org.amdatu.example.course.service.osgi.Activator.RESOURCE_ID;
-
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
@@ -38,6 +36,7 @@
import org.amdatu.example.course.service.Course;
import org.amdatu.example.course.service.CourseList;
import org.amdatu.example.course.service.CourseService;
+import org.amdatu.example.course.service.osgi.Activator;
import org.amdatu.opensocial.profile.PersonService;
import org.amdatu.web.httpcontext.ResourceProvider;
import org.apache.felix.dm.Component;
@@ -51,6 +50,7 @@
/**
* REST resource that handles REST calls to retrieve information about
particular courses. Courses can be requested
* using REST call: http://localhost:3737/rest/course?getCourses
+ *
* @author ivol
*/
@Path("course")
@@ -93,10 +93,11 @@
/**
* Returns available courses for the current user.
+ *
* @return Available courses for the current user.
*/
@GET
- @Produces({MediaType.APPLICATION_JSON})
+ @Produces({ MediaType.APPLICATION_JSON })
public Response getCourses(@Context HttpHeaders headers, @Context
HttpServletRequest request) {
String viewer = null;
List<String> authHeader =
headers.getRequestHeaders().get("Authorization");
@@ -117,7 +118,8 @@
if (viewer == null || "anonymous".equals(viewer)) {
Response.ok(courseList).cacheControl(m_cacheControl).build();
- } else {
+ }
+ else {
// Get the profile
User user =
m_userAdmin.getUser(LoginService.USER_NAME_CREDENTIAL_KEY, viewer);
if (user != null) {
@@ -131,7 +133,8 @@
}
}
}
- } catch (IOException e) {
+ }
+ catch (IOException e) {
m_logService.log(LogService.LOG_ERROR, "An error occurred while
retrieving available courses for viewer '"
+ viewer + "'", e);
}
@@ -140,9 +143,10 @@
}
public URL getResource(String name) {
- if (!name.startsWith(RESOURCE_ID)) {
+ if (!name.startsWith(Activator.ALIAS)) {
return null;
- } else if (CourseOntologyDataProvider.ONTOLOGIES.containsKey(name)) {
+ }
+ else if (CourseOntologyDataProvider.ONTOLOGIES.containsKey(name)) {
// This is an ontology
name = CourseOntologyDataProvider.ONTOLOGIES.get(name);
Bundle bundle = m_bundleContext.getBundle();
@@ -162,15 +166,12 @@
}
try {
return m_configTemplateManager.getConfigurationAsURL(url);
- } catch (IOException e) {
+ }
+ catch (IOException e) {
m_logService.log(LogService.LOG_ERROR, "Could not replace
configuration entries in url '" + url + "'");
}
}
Bundle bundle = m_bundleContext.getBundle();
return bundle.getResource(name);
}
-
- public String getResourceId() {
- return RESOURCE_ID;
- }
}
_______________________________________________
Amdatu-commits mailing list
[email protected]
http://lists.amdatu.org/mailman/listinfo/amdatu-commits