summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjesus m. rodriguez <jesusr@redhat.com>2009-11-09 14:38:16 -0500
committerjesus m. rodriguez <jesusr@redhat.com>2009-11-09 14:38:16 -0500
commit307dc2e443fe3a1e8f40f973ad9fa2baf2ba518e (patch)
tree14185bfa77386ddbc1e35c17aec3f5527172a62c
parentc2f3678cb4b39412cf2a1357efda3835c3d4fd12 (diff)
downloadcandlepin-307dc2e443fe3a1e8f40f973ad9fa2baf2ba518e.tar.gz
candlepin-307dc2e443fe3a1e8f40f973ad9fa2baf2ba518e.tar.xz
candlepin-307dc2e443fe3a1e8f40f973ad9fa2baf2ba518e.zip
javadoc the entities
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java9
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/model/ConsumerInfo.java6
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/model/ConsumerType.java2
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/model/Entitlement.java15
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/model/Product.java5
5 files changed, 29 insertions, 8 deletions
diff --git a/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java b/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java
index 9af8f4e..242a6a0 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java
@@ -23,10 +23,13 @@ import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
-import javax.persistence.*;
-
/**
- * Represents Consumer entity
+ * A Consumer is the entity that uses a given Entitlement. It can be a user,
+ * system, or anything else we want to track as using the Entitlement.
+ *
+ * Every Consumer has an Owner which may or may not own the Entitlment. The
+ * Consumer's attributes or metadata is stored in a ConsumerInfo object which
+ * boils down to a series of name/value pairs.
*/
@XmlRootElement
@XmlAccessorType(XmlAccessType.PROPERTY)
diff --git a/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerInfo.java b/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerInfo.java
index 8d18894..cfc7d16 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerInfo.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerInfo.java
@@ -23,7 +23,11 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
/**
- * Consumer metadata stored as ConsumerInfo
+ * ConsumerInfo contains the metadata about a given Consumer (parent). It is
+ * a series of (name,value) pairs which allows for a more flexible model of
+ * defining attributes about a Consumer.
+ *
+ * For example, for a system we might capture CPU type and architecture.
*/
@XmlRootElement
@XmlAccessorType(XmlAccessType.PROPERTY)
diff --git a/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerType.java b/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerType.java
index a745661..c9ad2f4 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerType.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/model/ConsumerType.java
@@ -17,8 +17,6 @@ package org.fedoraproject.candlepin.model;
import java.io.Serializable;
import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.xml.bind.annotation.XmlAccessType;
diff --git a/proxy/code/src/org/fedoraproject/candlepin/model/Entitlement.java b/proxy/code/src/org/fedoraproject/candlepin/model/Entitlement.java
index 1089e91..edc77d1 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/model/Entitlement.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/model/Entitlement.java
@@ -23,7 +23,20 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
/**
- * Represents the actual Entitlement record.
+ * Entitlements are documents either signed XML or other certificate which
+ * control what a particular Consumer can use. There are a number of types
+ * of Entitlements:
+ *
+ * 1. Quantity Limited (physical & virtual)
+ * 2. Version Limited
+ * 3. Hardware Limited (i.e # of sockets, # of cores, etc)
+ * 4. Functional Limited (i.e. Update, Management, Provisioning, etc)
+ * 5. Site License
+ * 6. Floating License
+ * 7. Value-Based or "Metered" (i.e. per unit of time, per hardware
+ * consumption, etc)
+ * 8. Draw-Down (i.e. 100 hours or training classes to be consumed over
+ * some period of time or limited number of support calls)
*/
@XmlRootElement
@XmlAccessorType(XmlAccessType.PROPERTY)
diff --git a/proxy/code/src/org/fedoraproject/candlepin/model/Product.java b/proxy/code/src/org/fedoraproject/candlepin/model/Product.java
index b588091..b72de88 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/model/Product.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/model/Product.java
@@ -28,7 +28,10 @@ import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
/**
- * Represents a Product that can be consumed and entitled.
+ * Represents a Product that can be consumed and entitled. Products define
+ * the software or entity they want to entitle i.e. RHEL Server. They also
+ * contain descriptive meta data that might limit the Product i.e. 4 cores
+ * per server with 4 guests.
*/
@XmlRootElement
@XmlAccessorType(XmlAccessType.PROPERTY)