summaryrefslogtreecommitdiffstats
path: root/proxy/code/src/org/fedoraproject/candlepin/resource
diff options
context:
space:
mode:
Diffstat (limited to 'proxy/code/src/org/fedoraproject/candlepin/resource')
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/resource/ConsumerResource.java20
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/resource/EntitlementResource.java22
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/resource/test/ConsumerResourceTest.java52
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementMatcherTest.java2
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementResourceTest.java29
5 files changed, 74 insertions, 51 deletions
diff --git a/proxy/code/src/org/fedoraproject/candlepin/resource/ConsumerResource.java b/proxy/code/src/org/fedoraproject/candlepin/resource/ConsumerResource.java
index 5e0f939..cce0294 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/resource/ConsumerResource.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/resource/ConsumerResource.java
@@ -77,7 +77,7 @@ public class ConsumerResource extends BaseResource {
System.out.println("metadata: " + ci.getMetadata());
System.out.println("ci: " + ci);
//Owner owner = (Owner) ObjectFactory.get().lookupByUUID(Owner.class, owneruuid);
- Consumer c = new Consumer(BaseModel.generateUUID());
+ Consumer c = new Consumer();
c.setName(ci.getMetadataField("name"));
//c.setOwner(owner);
c.setInfo(ci);
@@ -110,15 +110,15 @@ public class ConsumerResource extends BaseResource {
* @param cid Consumer ID to affect
* @param pid Product ID to remove from Consumer.
*/
- @DELETE @Path("{cid}/products/{pid}")
- public void delete(@PathParam("cid") String cid,
- @PathParam("pid") String pid) {
- System.out.println("cid " + cid + " pid = " + pid);
- Consumer c = (Consumer) ObjectFactory.get().lookupByUUID(Consumer.class, cid);
- if (!c.getConsumedProducts().remove(pid)) {
- log.error("no product " + pid + " found.");
- }
- }
+// @DELETE @Path("{cid}/products/{pid}")
+// public void delete(@PathParam("cid") String cid,
+// @PathParam("pid") String pid) {
+// System.out.println("cid " + cid + " pid = " + pid);
+// Consumer c = (Consumer) ObjectFactory.get().lookupByUUID(Consumer.class, cid);
+// if (!c.getConsumedProducts().remove(pid)) {
+// log.error("no product " + pid + " found.");
+// }
+// }
@GET @Path("{cid}/products/{pid}")
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
diff --git a/proxy/code/src/org/fedoraproject/candlepin/resource/EntitlementResource.java b/proxy/code/src/org/fedoraproject/candlepin/resource/EntitlementResource.java
index 0e32188..81c46e1 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/resource/EntitlementResource.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/resource/EntitlementResource.java
@@ -21,6 +21,7 @@ import org.fedoraproject.candlepin.model.EntitlementPool;
import org.fedoraproject.candlepin.model.ObjectFactory;
import org.fedoraproject.candlepin.model.Product;
import org.fedoraproject.candlepin.resource.cert.CertGenerator;
+import org.fedoraproject.candlepin.util.EntityManagerUtil;
import com.sun.jersey.api.representation.Form;
@@ -30,6 +31,8 @@ import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import javax.persistence.EntityManager;
+import javax.persistence.Query;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
@@ -55,7 +58,6 @@ public class EntitlementResource extends BaseResource {
private Object validateObjectInput(Form form, String fieldName, Class clazz) {
String uuid = form.getFirst(fieldName);
- log.debug("UUID: " + uuid);
Object o = ObjectFactory.get().lookupByUUID(clazz, uuid);
if (o == null) {
throw new RuntimeException(clazz.getName() + " with UUID: [" +
@@ -65,7 +67,6 @@ public class EntitlementResource extends BaseResource {
}
private Object validateObjectInput(String uuid, Class clazz) {
- log.debug("UUID: " + uuid);
Object o = ObjectFactory.get().lookupByUUID(clazz, uuid);
if (o == null) {
throw new RuntimeException(clazz.getName() + " with UUID: [" +
@@ -74,6 +75,17 @@ public class EntitlementResource extends BaseResource {
return o;
}
+ private Object newValidateObjectInput(EntityManager em, Long id, Class clazz) {
+ Query q = em.createQuery("from " + clazz.getName() + " o where o.id = :id");
+ q.setParameter("id", id);
+// if (o == null) {
+// throw new RuntimeException(clazz.getName() + " with UUID: [" +
+// uuid + "] not found");
+// }
+ Object result = q.getSingleResult();
+ return result;
+ }
+
/**
* Test method
* @param c consumer test
@@ -84,7 +96,6 @@ public class EntitlementResource extends BaseResource {
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
@Path("/foo")
public Object foo(Consumer c) {
- System.out.println("Consumer uuid: " + c.getUuid());
return "return value";
}
@@ -167,9 +178,10 @@ public class EntitlementResource extends BaseResource {
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
@Path("/listavailable")
public List<EntitlementPool> listAvailableEntitlements(
- @PathParam("uuid") String uuid) {
+ @PathParam("consumerId") Long consumerId) {
+ EntityManager em = EntityManagerUtil.createEntityManager();
- Consumer c = (Consumer) validateObjectInput(uuid, Consumer.class);
+ Consumer c = (Consumer) newValidateObjectInput(em, consumerId, Consumer.class);
List<EntitlementPool> entitlementPools = new EntitlementPoolResource().list();
List<EntitlementPool> retval = new ArrayList<EntitlementPool>();
EntitlementMatcher matcher = new EntitlementMatcher();
diff --git a/proxy/code/src/org/fedoraproject/candlepin/resource/test/ConsumerResourceTest.java b/proxy/code/src/org/fedoraproject/candlepin/resource/test/ConsumerResourceTest.java
index 3c78078..10a2c15 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/resource/test/ConsumerResourceTest.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/resource/test/ConsumerResourceTest.java
@@ -18,8 +18,8 @@ import org.fedoraproject.candlepin.model.Consumer;
import org.fedoraproject.candlepin.model.ConsumerInfo;
import org.fedoraproject.candlepin.model.ConsumerType;
import org.fedoraproject.candlepin.model.ObjectFactory;
-import org.fedoraproject.candlepin.model.test.TestUtil;
import org.fedoraproject.candlepin.resource.ConsumerResource;
+import org.fedoraproject.candlepin.test.TestUtil;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;
@@ -48,36 +48,36 @@ public class ConsumerResourceTest {
"name", newname));
}
- @Test
- public void testDelete() {
- Consumer c = TestUtil.createConsumer();
- String uuid = c.getUuid();
- ConsumerResource capi = new ConsumerResource();
- assertNotNull(ObjectFactory.get().lookupByUUID(c.getClass(), uuid));
- capi.delete(uuid);
- assertNull(ObjectFactory.get().lookupByUUID(c.getClass(), uuid));
- }
-
- @Test
- public void testJSON() {
- ClientConfig cc = new DefaultClientConfig();
- Client c = Client.create(cc);
+// @Test
+// public void testDelete() {
+// Consumer c = TestUtil.createConsumer();
+// String uuid = c.getUuid();
+// ConsumerResource capi = new ConsumerResource();
+// assertNotNull(ObjectFactory.get().lookupByUUID(c.getClass(), uuid));
+// capi.delete(uuid);
+// assertNull(ObjectFactory.get().lookupByUUID(c.getClass(), uuid));
+// }
- ConsumerInfo ci = new ConsumerInfo();
- ci.setMetadataField("name", "jsontestname");
- ci.setType(new ConsumerType("standard-system"));
-
- WebResource res =
- c.resource("http://localhost:8080/candlepin/consumer/");
- Consumer rc = res.type("application/json").post(Consumer.class, ci);
- assertNotNull(rc);
- assertNotNull(rc.getUuid());
- System.out.println(rc.getUuid());
+// @Test
+// public void testJSON() {
+// ClientConfig cc = new DefaultClientConfig();
+// Client c = Client.create(cc);
+//
+// ConsumerInfo ci = new ConsumerInfo();
+// ci.setMetadataField("name", "jsontestname");
+// ci.setType(new ConsumerType("standard-system"));
+//
+// WebResource res =
+// c.resource("http://localhost:8080/candlepin/consumer/");
+// Consumer rc = res.type("application/json").post(Consumer.class, ci);
+// assertNotNull(rc);
+// assertNotNull(rc.getUuid());
+// System.out.println(rc.getUuid());
// WebResource delres =
// c.resource("http://localhost:8080/candlepin/consumer/");
// delres.accept("application/json").delete(rc.getUuid());
//
// assertNull(ObjectFactory.get().lookupByUUID(c.getClass(), rc.getUuid()));
- }
+// }
}
diff --git a/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementMatcherTest.java b/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementMatcherTest.java
index 910eee0..b5bac0e 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementMatcherTest.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementMatcherTest.java
@@ -19,8 +19,8 @@ import org.fedoraproject.candlepin.model.ConsumerType;
import org.fedoraproject.candlepin.model.ObjectFactory;
import org.fedoraproject.candlepin.model.Product;
import org.fedoraproject.candlepin.model.ProductFactory;
-import org.fedoraproject.candlepin.model.test.TestUtil;
import org.fedoraproject.candlepin.resource.EntitlementMatcher;
+import org.fedoraproject.candlepin.test.TestUtil;
import java.util.List;
diff --git a/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementResourceTest.java b/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementResourceTest.java
index c6f4eab..38d264a 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementResourceTest.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/resource/test/EntitlementResourceTest.java
@@ -18,9 +18,11 @@ import org.fedoraproject.candlepin.model.Consumer;
import org.fedoraproject.candlepin.model.ConsumerType;
import org.fedoraproject.candlepin.model.EntitlementPool;
import org.fedoraproject.candlepin.model.ObjectFactory;
+import org.fedoraproject.candlepin.model.Owner;
import org.fedoraproject.candlepin.model.Product;
-import org.fedoraproject.candlepin.model.test.TestUtil;
import org.fedoraproject.candlepin.resource.EntitlementResource;
+import org.fedoraproject.candlepin.test.DatabaseTestFixture;
+import org.fedoraproject.candlepin.test.TestUtil;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;
@@ -39,18 +41,27 @@ import static org.junit.Assert.*;
/**
* ConsumerResourceTest
- * @version $Rev$
*/
-public class EntitlementResourceTest {
+public class EntitlementResourceTest extends DatabaseTestFixture {
private Consumer consumer;
private Product product;
private EntitlementPool ep;
@Before
- public void setUp() throws Exception {
- consumer = TestUtil.createConsumer();
+ public void createTestObjects() {
+
+ em.getTransaction().begin();
+
+ Owner o = TestUtil.createOwner();
+ consumer = TestUtil.createConsumer(o);
product = TestUtil.createProduct();
+
+ em.persist(o);
+ em.persist(consumer);
+ em.persist(product);
+ em.getTransaction().commit();
+
ep = new EntitlementPool();
ep.setProduct(product);
ep.setOwner(consumer.getOwner());
@@ -69,7 +80,7 @@ public class EntitlementResourceTest {
EntitlementResource eapi = new EntitlementResource();
Form f = new Form();
- f.add("consumer_uuid", consumer.getUuid());
+ f.add("consumer_id", consumer.getId());
f.add("product_id", product.getId());
String cert = (String) eapi.entitle(consumer, product);
@@ -81,7 +92,7 @@ public class EntitlementResourceTest {
boolean failed = false;
for (int i = 0; i < ep.getMaxMembers() + 10; i++) {
Consumer ci = TestUtil.createConsumer(consumer.getOwner());
- f.add("consumer_uuid", ci.getUuid());
+ f.add("consumer_id", ci.getId());
try {
eapi.entitle(consumer, product);
}
@@ -124,9 +135,9 @@ public class EntitlementResourceTest {
EntitlementResource eapi = new EntitlementResource();
consumer.setType(new ConsumerType("standard-system"));
Form f = new Form();
- f.add("consumer_uuid", consumer.getUuid());
+ f.add("consumer_id", consumer.getId());
- List<EntitlementPool> avail = eapi.listAvailableEntitlements(consumer.getUuid());
+ List<EntitlementPool> avail = eapi.listAvailableEntitlements(consumer.getId());
assertNotNull(avail);
assertTrue(avail.size() > 0);
}