Optimierung Collections
git-svn-id: https://svn.libreccm.org/ccm/trunk@1122 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
e6f87f951e
commit
e21b192ba1
|
|
@ -19,6 +19,7 @@
|
||||||
package com.arsdigita.cms.contenttypes;
|
package com.arsdigita.cms.contenttypes;
|
||||||
|
|
||||||
import com.arsdigita.domain.DomainCollection;
|
import com.arsdigita.domain.DomainCollection;
|
||||||
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.persistence.DataCollection;
|
import com.arsdigita.persistence.DataCollection;
|
||||||
import com.arsdigita.persistence.DataObject;
|
import com.arsdigita.persistence.DataObject;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
|
|
@ -187,4 +188,39 @@ public class GenericOrganizationalUnitContactCollection extends DomainCollection
|
||||||
public GenericContact getContact() {
|
public GenericContact getContact() {
|
||||||
return new GenericContact(m_dataCollection.getDataObject());
|
return new GenericContact(m_dataCollection.getDataObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public GenericPerson getPerson() {
|
||||||
|
DataCollection collection;
|
||||||
|
|
||||||
|
collection = (DataCollection) m_dataCollection.getDataObject().get(
|
||||||
|
GenericContact.PERSON);
|
||||||
|
|
||||||
|
if (collection.size() == 0) {
|
||||||
|
return null;
|
||||||
|
} else {
|
||||||
|
DataObject dobj;
|
||||||
|
|
||||||
|
collection.next();
|
||||||
|
dobj = collection.getDataObject();
|
||||||
|
|
||||||
|
// Close Collection to prevent an open ResultSet
|
||||||
|
collection.close();
|
||||||
|
|
||||||
|
return (GenericPerson) DomainObjectFactory.newInstance(dobj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public GenericAddress getAddress() {
|
||||||
|
return (GenericAddress) DomainObjectFactory.newInstance((DataObject) m_dataCollection.
|
||||||
|
getDataObject().get(
|
||||||
|
GenericContact.ADDRESS));
|
||||||
|
}
|
||||||
|
|
||||||
|
public GenericContactEntryCollection getContactEntries() {
|
||||||
|
return new GenericContactEntryCollection((DataCollection) m_dataCollection.
|
||||||
|
getDataObject().get(
|
||||||
|
GenericContact.CONTACT_ENTRIES));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ import com.arsdigita.domain.DomainCollection;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.persistence.DataCollection;
|
import com.arsdigita.persistence.DataCollection;
|
||||||
import com.arsdigita.persistence.DataObject;
|
import com.arsdigita.persistence.DataObject;
|
||||||
|
import com.arsdigita.persistence.OID;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -72,6 +73,10 @@ public class GenericOrganizationalUnitPersonCollection extends DomainCollection
|
||||||
getDataObject());
|
getDataObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public OID getOID() {
|
||||||
|
return m_dataCollection.getDataObject().getOID();
|
||||||
|
}
|
||||||
|
|
||||||
public String getSurname() {
|
public String getSurname() {
|
||||||
return (String) m_dataCollection.getDataObject().get(
|
return (String) m_dataCollection.getDataObject().get(
|
||||||
GenericPerson.SURNAME);
|
GenericPerson.SURNAME);
|
||||||
|
|
@ -102,8 +107,13 @@ public class GenericOrganizationalUnitPersonCollection extends DomainCollection
|
||||||
GenericPerson.GENDER);
|
GenericPerson.GENDER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DataCollection getContacts() {
|
||||||
|
return (DataCollection) m_dataCollection.getDataObject().get(
|
||||||
|
GenericPerson.CONTACTS);
|
||||||
|
}
|
||||||
|
|
||||||
public DataObject getAlias() {
|
public DataObject getAlias() {
|
||||||
return (DataObject) m_dataCollection.getDataObject().get(
|
return (DataObject) m_dataCollection.getDataObject().get(
|
||||||
GenericPerson.ALIAS);
|
GenericPerson.ALIAS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.arsdigita.cms.contenttypes;
|
package com.arsdigita.cms.contenttypes;
|
||||||
|
|
||||||
import com.arsdigita.domain.DomainCollection;
|
import com.arsdigita.domain.DomainCollection;
|
||||||
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.persistence.DataCollection;
|
import com.arsdigita.persistence.DataCollection;
|
||||||
import com.arsdigita.persistence.DataObject;
|
import com.arsdigita.persistence.DataObject;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
|
@ -140,4 +141,37 @@ public class GenericPersonContactCollection extends DomainCollection {
|
||||||
public GenericContact getContact() {
|
public GenericContact getContact() {
|
||||||
return new GenericContact(m_dataCollection.getDataObject());
|
return new GenericContact(m_dataCollection.getDataObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public GenericPerson getPerson() {
|
||||||
|
DataCollection collection;
|
||||||
|
|
||||||
|
collection = (DataCollection) m_dataCollection.getDataObject().get(
|
||||||
|
GenericContact.PERSON);
|
||||||
|
|
||||||
|
if (collection.size() == 0) {
|
||||||
|
return null;
|
||||||
|
} else {
|
||||||
|
DataObject dobj;
|
||||||
|
|
||||||
|
collection.next();
|
||||||
|
dobj = collection.getDataObject();
|
||||||
|
|
||||||
|
// Close Collection to prevent an open ResultSet
|
||||||
|
collection.close();
|
||||||
|
|
||||||
|
return (GenericPerson) DomainObjectFactory.newInstance(dobj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public GenericAddress getAddress() {
|
||||||
|
return (GenericAddress) DomainObjectFactory.newInstance((DataObject) m_dataCollection.
|
||||||
|
getDataObject().get(
|
||||||
|
GenericContact.ADDRESS));
|
||||||
|
}
|
||||||
|
|
||||||
|
public GenericContactEntryCollection getContactEntries() {
|
||||||
|
return new GenericContactEntryCollection((DataCollection) m_dataCollection.
|
||||||
|
getDataObject().get(
|
||||||
|
GenericContact.CONTACT_ENTRIES));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -108,7 +108,8 @@ public class GenericOrganizationalUnitPanel extends CompoundContentItemPanel {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void generateMembersXML(GenericOrganizationalUnit orga,
|
protected void generateMembersXML(GenericOrganizationalUnit orga,
|
||||||
Element parent, PageState state) {
|
Element parent,
|
||||||
|
PageState state) {
|
||||||
GenericOrganizationalUnitPersonCollection persons;
|
GenericOrganizationalUnitPersonCollection persons;
|
||||||
persons = orga.getPersons();
|
persons = orga.getPersons();
|
||||||
long pageNumber = getPageNumber(state);
|
long pageNumber = getPageNumber(state);
|
||||||
|
|
@ -126,61 +127,68 @@ public class GenericOrganizationalUnitPanel extends CompoundContentItemPanel {
|
||||||
persons.setRange((int) begin + 1, (int) end + 1);
|
persons.setRange((int) begin + 1, (int) end + 1);
|
||||||
|
|
||||||
while (persons.next()) {
|
while (persons.next()) {
|
||||||
GenericPerson person;
|
|
||||||
person = persons.getPerson();
|
|
||||||
|
|
||||||
Element personElem = personsElem.newChildElement("member");
|
Element personElem = personsElem.newChildElement("member");
|
||||||
Element title = personElem.newChildElement("title");
|
//Element title = personElem.newChildElement("title");
|
||||||
title.setText(person.getTitle());
|
//title.setText(person.getTitle());
|
||||||
|
|
||||||
if ((person.getTitlePre() != null)
|
if ((persons.getTitlePre() != null)
|
||||||
&& !person.getTitlePre().isEmpty()) {
|
&& !persons.getTitlePre().isEmpty()) {
|
||||||
Element titlePre = personElem.newChildElement("titlePre");
|
Element titlePre = personElem.newChildElement("titlePre");
|
||||||
titlePre.setText(person.getTitlePre());
|
titlePre.setText(persons.getTitlePre());
|
||||||
}
|
}
|
||||||
|
|
||||||
Element surname = personElem.newChildElement("surname");
|
Element surname = personElem.newChildElement("surname");
|
||||||
surname.setText(person.getSurname());
|
surname.setText(persons.getSurname());
|
||||||
|
|
||||||
Element givenName = personElem.newChildElement("givenname");
|
Element givenName = personElem.newChildElement("givenname");
|
||||||
givenName.setText(person.getGivenName());
|
givenName.setText(persons.getGivenName());
|
||||||
|
|
||||||
if ((person.getTitlePost() != null)
|
if ((persons.getTitlePost() != null)
|
||||||
&& !person.getTitlePost().isEmpty()) {
|
&& !persons.getTitlePost().isEmpty()) {
|
||||||
Element titlePost = personElem.newChildElement("titlePost");
|
Element titlePost = personElem.newChildElement("titlePost");
|
||||||
titlePost.setText(person.getTitlePost());
|
titlePost.setText(persons.getTitlePost());
|
||||||
}
|
}
|
||||||
|
|
||||||
GenericPersonContactCollection contacts = person.getContacts();
|
GenericPersonContactCollection contacts =
|
||||||
|
new GenericPersonContactCollection(
|
||||||
|
persons.getContacts());
|
||||||
if ((contacts != null) && (contacts.size() > 0)) {
|
if ((contacts != null) && (contacts.size() > 0)) {
|
||||||
Element contactsElem =
|
Element contactsElem =
|
||||||
personElem.newChildElement("contacts");
|
personElem.newChildElement("contacts");
|
||||||
while (contacts.next()) {
|
while (contacts.next()) {
|
||||||
GenericContact contact = contacts.getContact();
|
|
||||||
|
|
||||||
generateContactXML(contact, contactsElem, state, contacts.
|
generateContactXML(contacts.getContactType(),
|
||||||
getContactOrder(), false);
|
contacts.getPerson(),
|
||||||
|
contacts.getContactEntries(),
|
||||||
|
contacts.getAddress(),
|
||||||
|
contactsElem,
|
||||||
|
state,
|
||||||
|
contacts.getContactOrder(),
|
||||||
|
false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void generateContactXML(final GenericContact contact,
|
protected void generateContactXML(
|
||||||
final Element parent,
|
final String contactType,
|
||||||
final PageState state,
|
final GenericPerson person,
|
||||||
final String order,
|
final GenericContactEntryCollection contactEntries,
|
||||||
final boolean withPerson) {
|
final GenericAddress address,
|
||||||
|
final Element parent,
|
||||||
|
final PageState state,
|
||||||
|
final String order,
|
||||||
|
final boolean withPerson) {
|
||||||
Element contactElem = parent.newChildElement("contact");
|
Element contactElem = parent.newChildElement("contact");
|
||||||
contactElem.addAttribute("order", order);
|
contactElem.addAttribute("order", order);
|
||||||
|
|
||||||
Element title = contactElem.newChildElement("title");
|
//Element title = contactElem.newChildElement("title");
|
||||||
title.setText(contact.getTitle());
|
//title.setText(contact.getTitle());
|
||||||
|
|
||||||
Element typeElem = contactElem.newChildElement("type");
|
Element typeElem = contactElem.newChildElement("type");
|
||||||
typeElem.setText(contact.getContactType());
|
typeElem.setText(contactType);
|
||||||
|
|
||||||
if (withPerson) {
|
if (withPerson) {
|
||||||
GenericPerson person = contact.getPerson();
|
|
||||||
if (person != null) {
|
if (person != null) {
|
||||||
Element personElem = contactElem.newChildElement("person");
|
Element personElem = contactElem.newChildElement("person");
|
||||||
if ((person.getTitlePre() != null) && !person.getTitlePre().
|
if ((person.getTitlePre() != null) && !person.getTitlePre().
|
||||||
|
|
@ -205,8 +213,6 @@ public class GenericOrganizationalUnitPanel extends CompoundContentItemPanel {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GenericContactEntryCollection contactEntries =
|
|
||||||
contact.getContactEntries();
|
|
||||||
if ((contactEntries != null)
|
if ((contactEntries != null)
|
||||||
&& (contactEntries.size() > 0)) {
|
&& (contactEntries.size() > 0)) {
|
||||||
Element contactEntriesElem =
|
Element contactEntriesElem =
|
||||||
|
|
@ -232,7 +238,6 @@ public class GenericOrganizationalUnitPanel extends CompoundContentItemPanel {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GenericAddress address = contact.getAddress();
|
|
||||||
if (address != null) {
|
if (address != null) {
|
||||||
Element addressElem = contactElem.newChildElement(
|
Element addressElem = contactElem.newChildElement(
|
||||||
"address");
|
"address");
|
||||||
|
|
|
||||||
|
|
@ -64,10 +64,10 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
private String show;
|
private String show;
|
||||||
private boolean displayDescription = true;
|
private boolean displayDescription = true;
|
||||||
private boolean displaySubDepartments = true;
|
private boolean displaySubDepartments = true;
|
||||||
private boolean displayProjects = true;
|
private boolean displayProjects = true;
|
||||||
private Map<String, Filter> projectFilters =
|
private Map<String, Filter> projectFilters =
|
||||||
new LinkedHashMap<String, Filter>();
|
new LinkedHashMap<String, Filter>();
|
||||||
|
|
||||||
public SciDepartmentPanel() {
|
public SciDepartmentPanel() {
|
||||||
projectFilters.put(TITLE, new TextFilter(TITLE, TITLE));
|
projectFilters.put(TITLE, new TextFilter(TITLE, TITLE));
|
||||||
}
|
}
|
||||||
|
|
@ -76,7 +76,7 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
protected String getDefaultShowParam() {
|
protected String getDefaultShowParam() {
|
||||||
return SHOW_DESCRIPTION;
|
return SHOW_DESCRIPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Class<? extends ContentItem> getAllowedClass() {
|
protected Class<? extends ContentItem> getAllowedClass() {
|
||||||
return SciDepartment.class;
|
return SciDepartment.class;
|
||||||
|
|
@ -207,16 +207,15 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
Element headsElem = subDepartmentElem.newChildElement("heads");
|
Element headsElem = subDepartmentElem.newChildElement("heads");
|
||||||
|
|
||||||
while (heads.next()) {
|
while (heads.next()) {
|
||||||
GenericPerson head = heads.getPerson();
|
|
||||||
Element headElem = headsElem.newChildElement("head");
|
Element headElem = headsElem.newChildElement("head");
|
||||||
Element titlePre = headElem.newChildElement("titlePre");
|
Element titlePre = headElem.newChildElement("titlePre");
|
||||||
titlePre.setText(head.getTitlePre());
|
titlePre.setText(heads.getTitlePre());
|
||||||
Element givenName = headElem.newChildElement("givenname");
|
Element givenName = headElem.newChildElement("givenname");
|
||||||
givenName.setText(head.getGivenName());
|
givenName.setText(heads.getGivenName());
|
||||||
Element surname = headElem.newChildElement("surname");
|
Element surname = headElem.newChildElement("surname");
|
||||||
surname.setText(head.getSurname());
|
surname.setText(heads.getSurname());
|
||||||
Element titlePost = headElem.newChildElement("titlePost");
|
Element titlePost = headElem.newChildElement("titlePost");
|
||||||
titlePost.setText(head.getTitlePost());
|
titlePost.setText(heads.getTitlePost());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -227,7 +226,10 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
"contacts");
|
"contacts");
|
||||||
|
|
||||||
while (contacts.next()) {
|
while (contacts.next()) {
|
||||||
generateContactXML(contacts.getContact(),
|
generateContactXML(contacts.getContactType(),
|
||||||
|
contacts.getPerson(),
|
||||||
|
contacts.getContactEntries(),
|
||||||
|
contacts.getAddress(),
|
||||||
contactsElem,
|
contactsElem,
|
||||||
state,
|
state,
|
||||||
Integer.toString(
|
Integer.toString(
|
||||||
|
|
@ -255,9 +257,7 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
subDepartments = department.getSubDepartments();
|
subDepartments = department.getSubDepartments();
|
||||||
|
|
||||||
while (departmentMembers.next()) {
|
while (departmentMembers.next()) {
|
||||||
addMember(departmentMembers.getPerson(),
|
addMember(departmentMembers,
|
||||||
departmentMembers.getRoleName(),
|
|
||||||
departmentMembers.getStatus(),
|
|
||||||
members);
|
members);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -297,9 +297,7 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
List<MemberListItem> members = new LinkedList<MemberListItem>();
|
List<MemberListItem> members = new LinkedList<MemberListItem>();
|
||||||
|
|
||||||
while (departmentMembers.next()) {
|
while (departmentMembers.next()) {
|
||||||
addMember(departmentMembers.getPerson(),
|
addMember(departmentMembers,
|
||||||
departmentMembers.getRoleName(),
|
|
||||||
departmentMembers.getStatus(),
|
|
||||||
members);
|
members);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -340,7 +338,7 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
filterEntry.getValue().generateXml(filterElement);
|
filterEntry.getValue().generateXml(filterElement);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void applyProjectFilters(
|
protected void applyProjectFilters(
|
||||||
final List<String> filters,
|
final List<String> filters,
|
||||||
final HttpServletRequest request) {
|
final HttpServletRequest request) {
|
||||||
|
|
@ -354,15 +352,15 @@ public class SciDepartmentPanel extends SciOrganizationBasePanel {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void generateProjectsXML(final SciDepartment department,
|
protected void generateProjectsXML(final SciDepartment department,
|
||||||
final Element parent,
|
final Element parent,
|
||||||
final PageState state,
|
final PageState state,
|
||||||
final List<String> filters) {
|
final List<String> filters) {
|
||||||
Element controls = parent.newChildElement("filterControls");
|
Element controls = parent.newChildElement("filterControls");
|
||||||
controls.addAttribute("customName", "sciDepartmentProjects");
|
controls.addAttribute("customName", "sciDepartmentProjects");
|
||||||
controls.addAttribute("show", show);
|
controls.addAttribute("show", show);
|
||||||
|
|
||||||
if (SciDepartment.getConfig().getOrganizationProjectsMerge()) {
|
if (SciDepartment.getConfig().getOrganizationProjectsMerge()) {
|
||||||
List<SciProject> projects;
|
List<SciProject> projects;
|
||||||
projects = new LinkedList<SciProject>();
|
projects = new LinkedList<SciProject>();
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@ import com.arsdigita.cms.contenttypes.SciDepartmentProjectsCollection;
|
||||||
import com.arsdigita.cms.contenttypes.SciDepartmentSubDepartmentsCollection;
|
import com.arsdigita.cms.contenttypes.SciDepartmentSubDepartmentsCollection;
|
||||||
import com.arsdigita.cms.contenttypes.SciProject;
|
import com.arsdigita.cms.contenttypes.SciProject;
|
||||||
import com.arsdigita.persistence.DataCollection;
|
import com.arsdigita.persistence.DataCollection;
|
||||||
|
import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.xml.Element;
|
import com.arsdigita.xml.Element;
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
|
@ -64,6 +65,7 @@ public abstract class SciOrganizationBasePanel
|
||||||
|
|
||||||
protected class MemberListItem {
|
protected class MemberListItem {
|
||||||
|
|
||||||
|
private OID oid;
|
||||||
private String surname;
|
private String surname;
|
||||||
private String givenName;
|
private String givenName;
|
||||||
private String titlePre;
|
private String titlePre;
|
||||||
|
|
@ -81,7 +83,8 @@ public abstract class SciOrganizationBasePanel
|
||||||
/*this.member = member;
|
/*this.member = member;
|
||||||
this.role = role;
|
this.role = role;
|
||||||
this.status = status;*/
|
this.status = status;*/
|
||||||
this(member.getSurname(),
|
this(member.getOID(),
|
||||||
|
member.getSurname(),
|
||||||
member.getGivenName(),
|
member.getGivenName(),
|
||||||
member.getTitlePre(),
|
member.getTitlePre(),
|
||||||
member.getTitlePost(),
|
member.getTitlePost(),
|
||||||
|
|
@ -93,7 +96,8 @@ public abstract class SciOrganizationBasePanel
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public MemberListItem(final String surname,
|
public MemberListItem(final OID oid,
|
||||||
|
final String surname,
|
||||||
final String givenName,
|
final String givenName,
|
||||||
final String titlePre,
|
final String titlePre,
|
||||||
final String titlePost,
|
final String titlePost,
|
||||||
|
|
@ -102,6 +106,7 @@ public abstract class SciOrganizationBasePanel
|
||||||
final DataCollection contacts,
|
final DataCollection contacts,
|
||||||
final String role,
|
final String role,
|
||||||
final String status) {
|
final String status) {
|
||||||
|
this.oid = oid;
|
||||||
this.surname = surname;
|
this.surname = surname;
|
||||||
this.givenName = givenName;
|
this.givenName = givenName;
|
||||||
this.titlePre = titlePre;
|
this.titlePre = titlePre;
|
||||||
|
|
@ -116,6 +121,10 @@ public abstract class SciOrganizationBasePanel
|
||||||
/*public GenericPerson getMember() {
|
/*public GenericPerson getMember() {
|
||||||
return member;
|
return member;
|
||||||
}*/
|
}*/
|
||||||
|
public OID getOID() {
|
||||||
|
return oid;
|
||||||
|
}
|
||||||
|
|
||||||
public Date getBirthdate() {
|
public Date getBirthdate() {
|
||||||
return birthdate;
|
return birthdate;
|
||||||
}
|
}
|
||||||
|
|
@ -368,7 +377,7 @@ public abstract class SciOrganizationBasePanel
|
||||||
|
|
||||||
memberElem.addAttribute("role", roleName);
|
memberElem.addAttribute("role", roleName);
|
||||||
memberElem.addAttribute("status", status);
|
memberElem.addAttribute("status", status);
|
||||||
//memberElem.addAttribute("oid", person.getOID().toString());
|
memberElem.addAttribute("oid", person.getOID().toString());
|
||||||
|
|
||||||
//Element title = memberElem.newChildElement("title");
|
//Element title = memberElem.newChildElement("title");
|
||||||
//title.setText(person.getTitle());
|
//title.setText(person.getTitle());
|
||||||
|
|
@ -401,7 +410,10 @@ public abstract class SciOrganizationBasePanel
|
||||||
|
|
||||||
while (contacts.next()) {
|
while (contacts.next()) {
|
||||||
generateContactXML(
|
generateContactXML(
|
||||||
contacts.getContact(),
|
contacts.getContactType(),
|
||||||
|
contacts.getPerson(),
|
||||||
|
contacts.getContactEntries(),
|
||||||
|
contacts.getAddress(),
|
||||||
contactsElem,
|
contactsElem,
|
||||||
state,
|
state,
|
||||||
contacts.getContactOrder(),
|
contacts.getContactOrder(),
|
||||||
|
|
@ -453,7 +465,10 @@ public abstract class SciOrganizationBasePanel
|
||||||
|
|
||||||
while (contacts.next()) {
|
while (contacts.next()) {
|
||||||
generateContactXML(
|
generateContactXML(
|
||||||
contacts.getContact(),
|
contacts.getContactType(),
|
||||||
|
contacts.getPerson(),
|
||||||
|
contacts.getContactEntries(),
|
||||||
|
contacts.getAddress(),
|
||||||
contactsElem,
|
contactsElem,
|
||||||
state,
|
state,
|
||||||
contacts.getContactOrder(),
|
contacts.getContactOrder(),
|
||||||
|
|
@ -462,6 +477,50 @@ public abstract class SciOrganizationBasePanel
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void addMember(
|
||||||
|
final GenericOrganizationalUnitPersonCollection persons,
|
||||||
|
final List<MemberListItem> members) {
|
||||||
|
addMember(persons.getOID(),
|
||||||
|
persons.getSurname(),
|
||||||
|
persons.getGivenName(),
|
||||||
|
persons.getTitlePre(),
|
||||||
|
persons.getTitlePost(),
|
||||||
|
persons.getBirthdate(),
|
||||||
|
persons.getGender(),
|
||||||
|
persons.getContacts(),
|
||||||
|
persons.getRoleName(),
|
||||||
|
persons.getStatus(),
|
||||||
|
members);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addMember(final OID oid,
|
||||||
|
final String surname,
|
||||||
|
final String givenName,
|
||||||
|
final String titlePre,
|
||||||
|
final String titlePost,
|
||||||
|
final Date birthdate,
|
||||||
|
final String gender,
|
||||||
|
final DataCollection contacts,
|
||||||
|
final String role,
|
||||||
|
final String status,
|
||||||
|
final List<MemberListItem> members) {
|
||||||
|
MemberListItem listItem = new MemberListItem(oid,
|
||||||
|
surname,
|
||||||
|
givenName,
|
||||||
|
titlePre,
|
||||||
|
titlePost,
|
||||||
|
birthdate,
|
||||||
|
gender,
|
||||||
|
contacts,
|
||||||
|
role,
|
||||||
|
status);
|
||||||
|
|
||||||
|
if (!members.contains(listItem)) {
|
||||||
|
members.add(listItem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
protected void addMember(final GenericPerson person,
|
protected void addMember(final GenericPerson person,
|
||||||
final String roleName,
|
final String roleName,
|
||||||
final String status,
|
final String status,
|
||||||
|
|
@ -486,7 +545,14 @@ public abstract class SciOrganizationBasePanel
|
||||||
}
|
}
|
||||||
|
|
||||||
while (departmentMembers.next()) {
|
while (departmentMembers.next()) {
|
||||||
addMember(departmentMembers.getPerson(),
|
addMember(departmentMembers.getOID(),
|
||||||
|
departmentMembers.getSurname(),
|
||||||
|
departmentMembers.getGivenName(),
|
||||||
|
departmentMembers.getTitlePre(),
|
||||||
|
departmentMembers.getTitlePost(),
|
||||||
|
departmentMembers.getBirthdate(),
|
||||||
|
departmentMembers.getGender(),
|
||||||
|
null,
|
||||||
departmentMembers.getRoleName(),
|
departmentMembers.getRoleName(),
|
||||||
departmentMembers.getStatus(),
|
departmentMembers.getStatus(),
|
||||||
members);
|
members);
|
||||||
|
|
@ -569,7 +635,15 @@ public abstract class SciOrganizationBasePanel
|
||||||
Element membersElem = projectElem.newChildElement("members");
|
Element membersElem = projectElem.newChildElement("members");
|
||||||
|
|
||||||
while (members.next()) {
|
while (members.next()) {
|
||||||
generateMemberXML(members.getPerson(),
|
generateMemberXML(new MemberListItem(members.getOID(),
|
||||||
|
members.getSurname(),
|
||||||
|
members.getGivenName(),
|
||||||
|
members.getTitlePre(),
|
||||||
|
members.getTitlePost(),
|
||||||
|
members.getBirthdate(),
|
||||||
|
members.getGender(),
|
||||||
|
null, members.getRoleName(),
|
||||||
|
members.getStatus()),
|
||||||
membersElem,
|
membersElem,
|
||||||
members.getRoleName(),
|
members.getRoleName(),
|
||||||
members.getStatus(),
|
members.getStatus(),
|
||||||
|
|
@ -584,7 +658,10 @@ public abstract class SciOrganizationBasePanel
|
||||||
Element contactsElem = projectElem.newChildElement("contacts");
|
Element contactsElem = projectElem.newChildElement("contacts");
|
||||||
|
|
||||||
while (contacts.next()) {
|
while (contacts.next()) {
|
||||||
generateContactXML(contacts.getContact(),
|
generateContactXML(contacts.getContactType(),
|
||||||
|
contacts.getPerson(),
|
||||||
|
contacts.getContactEntries(),
|
||||||
|
contacts.getAddress(),
|
||||||
contactsElem,
|
contactsElem,
|
||||||
state,
|
state,
|
||||||
Integer.toString(contacts.getContactOrder()),
|
Integer.toString(contacts.getContactOrder()),
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,6 @@ import com.arsdigita.cms.ContentItem;
|
||||||
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
|
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
|
||||||
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitContactCollection;
|
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitContactCollection;
|
||||||
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitPersonCollection;
|
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitPersonCollection;
|
||||||
import com.arsdigita.cms.contenttypes.GenericPerson;
|
|
||||||
import com.arsdigita.cms.contenttypes.SciDepartment;
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
import com.arsdigita.cms.contenttypes.SciDepartmentProjectsCollection;
|
import com.arsdigita.cms.contenttypes.SciDepartmentProjectsCollection;
|
||||||
import com.arsdigita.cms.contenttypes.SciDepartmentSubDepartmentsCollection;
|
import com.arsdigita.cms.contenttypes.SciDepartmentSubDepartmentsCollection;
|
||||||
|
|
@ -200,17 +199,16 @@ public class SciOrganizationPanel extends SciOrganizationBasePanel {
|
||||||
if (heads.size() > 0) {
|
if (heads.size() > 0) {
|
||||||
Element headsElem = departmentElem.newChildElement("heads");
|
Element headsElem = departmentElem.newChildElement("heads");
|
||||||
|
|
||||||
while (heads.next()) {
|
while (heads.next()) {
|
||||||
GenericPerson head = heads.getPerson();
|
|
||||||
Element headElem = headsElem.newChildElement("head");
|
Element headElem = headsElem.newChildElement("head");
|
||||||
Element titlePre = headElem.newChildElement("titlePre");
|
Element titlePre = headElem.newChildElement("titlePre");
|
||||||
titlePre.setText(head.getTitlePre());
|
titlePre.setText(heads.getTitlePre());
|
||||||
Element givenName = headElem.newChildElement("givenname");
|
Element givenName = headElem.newChildElement("givenname");
|
||||||
givenName.setText(head.getGivenName());
|
givenName.setText(heads.getGivenName());
|
||||||
Element surname = headElem.newChildElement("surname");
|
Element surname = headElem.newChildElement("surname");
|
||||||
surname.setText(head.getSurname());
|
surname.setText(heads.getSurname());
|
||||||
Element titlePost = headElem.newChildElement("titlePost");
|
Element titlePost = headElem.newChildElement("titlePost");
|
||||||
titlePost.setText(head.getTitlePost());
|
titlePost.setText(heads.getTitlePost());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -221,7 +219,10 @@ public class SciOrganizationPanel extends SciOrganizationBasePanel {
|
||||||
departmentElem.newChildElement("contacts");
|
departmentElem.newChildElement("contacts");
|
||||||
|
|
||||||
while (contacts.next()) {
|
while (contacts.next()) {
|
||||||
generateContactXML(contacts.getContact(),
|
generateContactXML(contacts.getContactType(),
|
||||||
|
contacts.getPerson(),
|
||||||
|
contacts.getContactEntries(),
|
||||||
|
contacts.getAddress(),
|
||||||
contactsElem,
|
contactsElem,
|
||||||
state,
|
state,
|
||||||
Integer.toString(
|
Integer.toString(
|
||||||
|
|
@ -246,9 +247,7 @@ public class SciOrganizationPanel extends SciOrganizationBasePanel {
|
||||||
}
|
}
|
||||||
|
|
||||||
while (departmentsMembers.next()) {
|
while (departmentsMembers.next()) {
|
||||||
addMember(departmentsMembers.getPerson(),
|
addMember(departmentsMembers,
|
||||||
departmentsMembers.getRoleName(),
|
|
||||||
departmentsMembers.getStatus(),
|
|
||||||
members);
|
members);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -281,9 +280,7 @@ public class SciOrganizationPanel extends SciOrganizationBasePanel {
|
||||||
departments = orga.getDepartments();
|
departments = orga.getDepartments();
|
||||||
|
|
||||||
while (orgaMembers.next()) {
|
while (orgaMembers.next()) {
|
||||||
addMember(orgaMembers.getPerson(),
|
addMember(orgaMembers,
|
||||||
orgaMembers.getRoleName(),
|
|
||||||
orgaMembers.getStatus(),
|
|
||||||
members);
|
members);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -300,9 +297,7 @@ public class SciOrganizationPanel extends SciOrganizationBasePanel {
|
||||||
List<MemberListItem> members = new LinkedList<MemberListItem>();
|
List<MemberListItem> members = new LinkedList<MemberListItem>();
|
||||||
|
|
||||||
while (orgaMembers.next()) {
|
while (orgaMembers.next()) {
|
||||||
addMember(orgaMembers.getPerson(),
|
addMember(orgaMembers,
|
||||||
orgaMembers.getRoleName(),
|
|
||||||
orgaMembers.getStatus(),
|
|
||||||
members);
|
members);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -146,9 +146,7 @@ public class SciProjectPanel extends SciOrganizationBasePanel {
|
||||||
projectMembers = subProject.getPersons();
|
projectMembers = subProject.getPersons();
|
||||||
|
|
||||||
while (projectMembers.next()) {
|
while (projectMembers.next()) {
|
||||||
addMember(projectMembers.getPerson(),
|
addMember(projectMembers,
|
||||||
projectMembers.getRoleName(),
|
|
||||||
projectMembers.getStatus(),
|
|
||||||
members);
|
members);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -173,9 +171,7 @@ public class SciProjectPanel extends SciOrganizationBasePanel {
|
||||||
members = new LinkedList<MemberListItem>();
|
members = new LinkedList<MemberListItem>();
|
||||||
|
|
||||||
while (projectMembers.next()) {
|
while (projectMembers.next()) {
|
||||||
addMember(projectMembers.getPerson(),
|
addMember(projectMembers,
|
||||||
projectMembers.getRoleName(),
|
|
||||||
projectMembers.getStatus(),
|
|
||||||
members);
|
members);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue