summaryrefslogtreecommitdiff
path: root/src/main/java/com/p4square/ccbapi
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2018-08-19 15:57:06 -0700
committerJesse Morgan <jesse@jesterpm.net>2018-08-19 15:57:06 -0700
commit54a7a3184dc565fe513aa520e1344b2303ea6834 (patch)
tree5f66d23cdbec36b4e9e9935688780f216caf4da7 /src/main/java/com/p4square/ccbapi
parent9cbf7a7a27977e32c8e275d2bc660787b20ce345 (diff)
Add campus_list APIHEADmaster
Diffstat (limited to 'src/main/java/com/p4square/ccbapi')
-rw-r--r--src/main/java/com/p4square/ccbapi/CCBAPI.java8
-rw-r--r--src/main/java/com/p4square/ccbapi/CCBAPIClient.java5
-rw-r--r--src/main/java/com/p4square/ccbapi/model/Campus.java78
-rw-r--r--src/main/java/com/p4square/ccbapi/model/GetCampusListResponse.java37
4 files changed, 128 insertions, 0 deletions
diff --git a/src/main/java/com/p4square/ccbapi/CCBAPI.java b/src/main/java/com/p4square/ccbapi/CCBAPI.java
index 6b9ba2e..86bc8ea 100644
--- a/src/main/java/com/p4square/ccbapi/CCBAPI.java
+++ b/src/main/java/com/p4square/ccbapi/CCBAPI.java
@@ -29,6 +29,14 @@ public interface CCBAPI extends Closeable {
GetLookupTableResponse getLookupTable(GetLookupTableRequest request) throws IOException;
/**
+ * Retrieve the list of campuses.
+ *
+ * @return A {@link GetCampusListResponse} containing the campus ids and names.
+ * @throws IOException on failure.
+ */
+ GetCampusListResponse getCampusList() throws IOException;
+
+ /**
* Retrieve one or more {@link IndividualProfile}s.
*
* If any of the following properties are set on the request,
diff --git a/src/main/java/com/p4square/ccbapi/CCBAPIClient.java b/src/main/java/com/p4square/ccbapi/CCBAPIClient.java
index a0335ba..2c75d62 100644
--- a/src/main/java/com/p4square/ccbapi/CCBAPIClient.java
+++ b/src/main/java/com/p4square/ccbapi/CCBAPIClient.java
@@ -151,6 +151,11 @@ public class CCBAPIClient implements CCBAPI {
}
@Override
+ public GetCampusListResponse getCampusList() throws IOException {
+ return makeRequest("campus_list", EMPTY_MAP, null, GetCampusListResponse.class);
+ }
+
+ @Override
public UpdateIndividualProfileResponse updateIndividualProfile(UpdateIndividualProfileRequest request)
throws IOException {
diff --git a/src/main/java/com/p4square/ccbapi/model/Campus.java b/src/main/java/com/p4square/ccbapi/model/Campus.java
new file mode 100644
index 0000000..9d3288f
--- /dev/null
+++ b/src/main/java/com/p4square/ccbapi/model/Campus.java
@@ -0,0 +1,78 @@
+package com.p4square.ccbapi.model;
+
+import javax.xml.bind.annotation.*;
+import java.time.LocalDateTime;
+
+/**
+ * Representation of a Campus.
+ */
+@XmlRootElement(name="campus")
+@XmlAccessorType(XmlAccessType.NONE)
+public class Campus {
+
+ @XmlAttribute(name="id")
+ private int id;
+
+ @XmlElement(name="name")
+ private String name;
+
+ @XmlElement(name="active")
+ private boolean active;
+
+ @XmlElement(name="creator")
+ private IndividualReference createdBy;
+
+ @XmlElement(name="created")
+ private LocalDateTime createdTime;
+
+ @XmlElement(name="modifier")
+ private IndividualReference modifiedBy;
+
+ public int getId() {
+ return id;
+ }
+
+ public void setId(int id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public boolean isActive() {
+ return active;
+ }
+
+ public void setActive(boolean active) {
+ this.active = active;
+ }
+
+ public IndividualReference getCreatedBy() {
+ return createdBy;
+ }
+
+ public void setCreatedBy(IndividualReference createdBy) {
+ this.createdBy = createdBy;
+ }
+
+ public LocalDateTime getCreatedTime() {
+ return createdTime;
+ }
+
+ public void setCreatedTime(LocalDateTime createdTime) {
+ this.createdTime = createdTime;
+ }
+
+ public IndividualReference getModifiedBy() {
+ return modifiedBy;
+ }
+
+ public void setModifiedBy(IndividualReference modifiedBy) {
+ this.modifiedBy = modifiedBy;
+ }
+}
diff --git a/src/main/java/com/p4square/ccbapi/model/GetCampusListResponse.java b/src/main/java/com/p4square/ccbapi/model/GetCampusListResponse.java
new file mode 100644
index 0000000..e5cbcaa
--- /dev/null
+++ b/src/main/java/com/p4square/ccbapi/model/GetCampusListResponse.java
@@ -0,0 +1,37 @@
+package com.p4square.ccbapi.model;
+
+import javax.xml.bind.annotation.*;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * A GetCampusListResponse contains a list of campuses.
+ */
+@XmlRootElement(name="response")
+@XmlAccessorType(XmlAccessType.NONE)
+public class GetCampusListResponse extends CCBAPIResponse {
+
+ @XmlElementWrapper(name = "campuses")
+ @XmlElement(name="campus")
+ private List<Campus> campuses;
+
+ public GetCampusListResponse() {
+ campuses = new ArrayList<>();
+ }
+
+ /**
+ * @return The list of campuses.
+ */
+ public List<Campus> getCampuses() {
+ return campuses;
+ }
+
+ /**
+ * Set the list of campuses.
+ *
+ * @param campuses The list of campuses.
+ */
+ public void setCampuses(final List<Campus> campuses) {
+ this.campuses = campuses;
+ }
+} \ No newline at end of file