SciDepartmentMemberTab funktioniert wieder
git-svn-id: https://svn.libreccm.org/ccm/trunk@1614 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
bace46dc05
commit
ab1a6416ff
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package com.arsdigita.cms.contenttypes;
|
package com.arsdigita.cms.contenttypes;
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
|
|
@ -27,6 +26,21 @@ public class ContactInitializer extends ContentTypeInitializer {
|
||||||
Contact.BASE_DATA_OBJECT_TYPE);
|
Contact.BASE_DATA_OBJECT_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Override
|
||||||
|
// public void init(final DomainInitEvent event) {
|
||||||
|
// super.init(event);
|
||||||
|
//
|
||||||
|
// DomainObjectFactory.registerInstantiator(Contact.BASE_DATA_OBJECT_TYPE, new ACSObjectInstantiator() {
|
||||||
|
//
|
||||||
|
// @Override
|
||||||
|
// public DomainObject doNewInstance(DataObject dataObject) {
|
||||||
|
// s_log.error("Using ContactInitalizer...");
|
||||||
|
// return new Contact(dataObject);
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retrieves fully qualified traversal adapter file name.
|
* Retrieves fully qualified traversal adapter file name.
|
||||||
* @return
|
* @return
|
||||||
|
|
@ -51,7 +65,7 @@ public class ContactInitializer extends ContentTypeInitializer {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String[] getStylesheets() {
|
public String[] getStylesheets() {
|
||||||
return new String[] {
|
return new String[]{
|
||||||
INTERNAL_THEME_TYPES_DIR + "Contact.xsl"
|
INTERNAL_THEME_TYPES_DIR + "Contact.xsl"
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,13 +20,6 @@
|
||||||
|
|
||||||
package com.arsdigita.cms.contenttypes;
|
package com.arsdigita.cms.contenttypes;
|
||||||
|
|
||||||
import com.arsdigita.cms.contenttypes.ContentTypeInitializer;
|
|
||||||
import com.arsdigita.domain.DomainObject;
|
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
|
||||||
import com.arsdigita.domain.DomainObjectInstantiator;
|
|
||||||
import com.arsdigita.persistence.DataObject;
|
|
||||||
import com.arsdigita.runtime.DomainInitEvent;
|
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -52,6 +45,21 @@ public class PersonInitializer extends ContentTypeInitializer {
|
||||||
super("ccm-cms-types-person.pdl.mf", Person.BASE_DATA_OBJECT_TYPE);
|
super("ccm-cms-types-person.pdl.mf", Person.BASE_DATA_OBJECT_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Override
|
||||||
|
// public void init(final DomainInitEvent event) {
|
||||||
|
// super.init(event);
|
||||||
|
//
|
||||||
|
// DomainObjectFactory.registerInstantiator(Person.BASE_DATA_OBJECT_TYPE, new ACSObjectInstantiator() {
|
||||||
|
//
|
||||||
|
// @Override
|
||||||
|
// public DomainObject doNewInstance(DataObject dataObject) {
|
||||||
|
// s_log.error("Using PersonInitalizer...");
|
||||||
|
// return new Person(dataObject);
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
//
|
||||||
/**
|
/**
|
||||||
* Retrieve location of this content type's internal default theme
|
* Retrieve location of this content type's internal default theme
|
||||||
* stylesheet(s) which concomitantly serve as a fallback if a custom theme
|
* stylesheet(s) which concomitantly serve as a fallback if a custom theme
|
||||||
|
|
|
||||||
|
|
@ -102,18 +102,18 @@ query getIdsOfSubordinateOrgaUnitsRecursivly{
|
||||||
|
|
||||||
do {
|
do {
|
||||||
with recursive subordinate_orgaunits(orgaunit_id, orgaunit_name) AS (
|
with recursive subordinate_orgaunits(orgaunit_id, orgaunit_name) AS (
|
||||||
select cms_organizationalunits.organizationalunit_id as orgaunit_id,
|
select cms_orgaunit_bundles.bundle_id as orgaunit_id,
|
||||||
cms_items.name as orgaunit_name
|
cms_items.name as orgaunit_name
|
||||||
from cms_organizationalunits
|
from cms_orgaunit_bundles
|
||||||
join cms_items on cms_organizationalunits.organizationalunit_id = cms_items.item_id
|
join cms_items on cms_orgaunit_bundles.bundle_id = cms_items.item_id
|
||||||
where cms_organizationalunits.organizationalunit_id = :orgaunitId
|
where cms_orgaunit_bundles.bundle_id = :orgaunitId
|
||||||
union all
|
union all
|
||||||
select ou.organizationalunit_id as orgaunit_id,
|
select ou.bundle_id as orgaunit_id,
|
||||||
cms_items.name as orgaunit_name
|
cms_items.name as orgaunit_name
|
||||||
from subordinate_orgaunits sou,
|
from subordinate_orgaunits sou,
|
||||||
cms_organizationalunits ou
|
cms_orgaunit_bundles ou
|
||||||
join cms_items on ou.organizationalunit_id = cms_items.item_id
|
join cms_items on ou.bundle_id = cms_items.item_id
|
||||||
join cms_organizationalunits_hierarchy_map on ou.organizationalunit_id = cms_organizationalunits_hierarchy_map.subordinate_orgaunit_id
|
join cms_organizationalunits_hierarchy_map on ou.bundle_id = cms_organizationalunits_hierarchy_map.subordinate_orgaunit_id
|
||||||
where cms_organizationalunits_hierarchy_map.superior_orgaunit_id = sou.orgaunit_id
|
where cms_organizationalunits_hierarchy_map.superior_orgaunit_id = sou.orgaunit_id
|
||||||
)
|
)
|
||||||
select orgaunit_id, orgaunit_name from subordinate_orgaunits
|
select orgaunit_id, orgaunit_name from subordinate_orgaunits
|
||||||
|
|
@ -123,7 +123,7 @@ query getIdsOfSubordinateOrgaUnitsRecursivly{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//Same as above but with an addional parameter
|
//Same as above but with an additional parameter
|
||||||
//@param orgaunitId The id of the organizational unit to start with
|
//@param orgaunitId The id of the organizational unit to start with
|
||||||
//@param assocType Include only subordinate orga units with the specified assoc
|
//@param assocType Include only subordinate orga units with the specified assoc
|
||||||
//type
|
//type
|
||||||
|
|
@ -133,18 +133,18 @@ query getIdsOfSubordinateOrgaUnitsRecursivlyWithAssocType{
|
||||||
|
|
||||||
do {
|
do {
|
||||||
with recursive subordinate_orgaunits(orgaunit_id, orgaunit_name) AS (
|
with recursive subordinate_orgaunits(orgaunit_id, orgaunit_name) AS (
|
||||||
select cms_organizationalunits.organizationalunit_id as orgaunit_id,
|
select cms_orgaunit_bundles.bundle_id as orgaunit_id,
|
||||||
cms_items.name as orgaunit_name
|
cms_items.name as orgaunit_name
|
||||||
from cms_organizationalunits
|
from cms_orgaunit_bundles
|
||||||
join cms_items on cms_organizationalunits.organizationalunit_id = cms_items.item_id
|
join cms_items on cms_orgaunit_bundles.bundle_id = cms_items.item_id
|
||||||
where cms_organizationalunits.organizationalunit_id = :orgaunitId
|
where cms_orgaunit_bundles.bundle_id = 17003
|
||||||
union all
|
union all
|
||||||
select ou.organizationalunit_id as orgaunit_id,
|
select ou.bundle_id as orgaunit_id,
|
||||||
cms_items.name as orgaunit_name
|
cms_items.name as orgaunit_name
|
||||||
from subordinate_orgaunits sou,
|
from subordinate_orgaunits sou,
|
||||||
cms_organizationalunits ou
|
cms_orgaunit_bundles ou
|
||||||
join cms_items on ou.organizationalunit_id = cms_items.item_id
|
join cms_items on ou.bundle_id = cms_items.item_id
|
||||||
join cms_organizationalunits_hierarchy_map on ou.organizationalunit_id = cms_organizationalunits_hierarchy_map.subordinate_orgaunit_id
|
join cms_organizationalunits_hierarchy_map on ou.bundle_id = cms_organizationalunits_hierarchy_map.subordinate_orgaunit_id
|
||||||
where cms_organizationalunits_hierarchy_map.superior_orgaunit_id = sou.orgaunit_id and cms_organizationalunits_hierarchy_map.assoc_type = :assocType
|
where cms_organizationalunits_hierarchy_map.superior_orgaunit_id = sou.orgaunit_id and cms_organizationalunits_hierarchy_map.assoc_type = :assocType
|
||||||
)
|
)
|
||||||
select orgaunit_id, orgaunit_name from subordinate_orgaunits
|
select orgaunit_id, orgaunit_name from subordinate_orgaunits
|
||||||
|
|
@ -160,8 +160,7 @@ query getIdsOfSubordinateOrgaUnitsRecursivlyWithAssocType{
|
||||||
query getIdsOfMembersOfOrgaUnits {
|
query getIdsOfMembersOfOrgaUnits {
|
||||||
BigDecimal memberId;
|
BigDecimal memberId;
|
||||||
BigDecimal orgaunitId;
|
BigDecimal orgaunitId;
|
||||||
String surname;
|
String name;
|
||||||
String givenname;
|
|
||||||
String roleName;
|
String roleName;
|
||||||
String status;
|
String status;
|
||||||
|
|
||||||
|
|
@ -170,24 +169,21 @@ query getIdsOfMembersOfOrgaUnits {
|
||||||
}
|
}
|
||||||
|
|
||||||
do {
|
do {
|
||||||
select distinct on (cms_persons.person_id)
|
select distinct on (cms_person_bundles.bundle_id)
|
||||||
cms_persons.person_id,
|
cms_person_bundles.bundle_id,
|
||||||
cms_persons.surname,
|
cms_items.name,
|
||||||
cms_persons.givenname,
|
|
||||||
cms_organizationalunits_person_map.organizationalunit_id,
|
cms_organizationalunits_person_map.organizationalunit_id,
|
||||||
cms_organizationalunits_person_map.role_name,
|
cms_organizationalunits_person_map.role_name,
|
||||||
cms_organizationalunits_person_map.status
|
cms_organizationalunits_person_map.status
|
||||||
from cms_persons
|
from cms_person_bundles
|
||||||
join cms_organizationalunits_person_map on cms_persons.person_id = cms_organizationalunits_person_map.person_id
|
join cms_organizationalunits_person_map on cms_person_bundles.bundle_id = cms_organizationalunits_person_map.person_id
|
||||||
|
join cms_items on cms_person_bundles.bundle_id = cms_items.item_id
|
||||||
where cms_organizationalunits_person_map.organizationalunit_id in :orgaunitIds
|
where cms_organizationalunits_person_map.organizationalunit_id in :orgaunitIds
|
||||||
|
|
||||||
} map {
|
} map {
|
||||||
memberId = cms_persons.person_id;
|
memberId = cms_person_bundles.bundle_id;
|
||||||
orgaunitId = cms_organizationalunits_person_map.organizationalunit_id;
|
orgaunitId = cms_organizationalunits_person_map.organizationalunit_id;
|
||||||
surname = cms_persons.surname;
|
name = cms_items.name;
|
||||||
givenname = cms_persons.givenname;
|
|
||||||
roleName = cms_organizationalunits_person_map.role_name;
|
roleName = cms_organizationalunits_person_map.role_name;
|
||||||
status = cms_organizationalunits_person_map.status;
|
status = cms_organizationalunits_person_map.status;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//select distinct on (cms_persons.person_id)
|
|
||||||
|
|
|
||||||
|
|
@ -153,6 +153,12 @@ public class GenericOrganizationalUnitSuperiorCollection extends DomainCollectio
|
||||||
return (GenericOrganizationalUnit) bundle.getPrimaryInstance();
|
return (GenericOrganizationalUnit) bundle.getPrimaryInstance();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public GenericOrganizationalUnit getGenericOrganizationalUnit(final String language) {
|
||||||
|
final ContentBundle bundle = (ContentBundle) DomainObjectFactory.
|
||||||
|
newInstance(m_dataCollection.getDataObject());
|
||||||
|
return (GenericOrganizationalUnit) bundle.getInstance(language);
|
||||||
|
}
|
||||||
|
|
||||||
public OID getOID() {
|
public OID getOID() {
|
||||||
return m_dataCollection.getDataObject().getOID();
|
return m_dataCollection.getDataObject().getOID();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,8 @@ import com.arsdigita.xml.Element;
|
||||||
public class GenericOrgaUnitContactsTab implements GenericOrgaUnitTab {
|
public class GenericOrgaUnitContactsTab implements GenericOrgaUnitTab {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
return !getData(orgaunit).isEmpty();
|
return !getData(orgaunit).isEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -75,5 +76,6 @@ public class GenericOrgaUnitContactsTab implements GenericOrgaUnitTab {
|
||||||
protected ContentItem getContentItem(PageState state) {
|
protected ContentItem getContentItem(PageState state) {
|
||||||
return contact;
|
return contact;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@ public abstract class GenericOrgaUnitExtraXmlGenerator
|
||||||
if ((showOnly == null) || showOnly.isEmpty()) {
|
if ((showOnly == null) || showOnly.isEmpty()) {
|
||||||
for (Map.Entry<String, GenericOrgaUnitTab> entry :
|
for (Map.Entry<String, GenericOrgaUnitTab> entry :
|
||||||
tabs.entrySet()) {
|
tabs.entrySet()) {
|
||||||
if (entry.getValue().hasData(orgaunit)) {
|
if (entry.getValue().hasData(orgaunit, state)) {
|
||||||
createAvailableTabElem(availableTabsElem,
|
createAvailableTabElem(availableTabsElem,
|
||||||
entry.getKey(),
|
entry.getKey(),
|
||||||
selected);
|
selected);
|
||||||
|
|
@ -92,8 +92,8 @@ public abstract class GenericOrgaUnitExtraXmlGenerator
|
||||||
System.currentTimeMillis()
|
System.currentTimeMillis()
|
||||||
- availableStart));
|
- availableStart));
|
||||||
|
|
||||||
if (tabs.containsKey(selected) && tabs.get(selected).hasData(
|
if (tabs.containsKey(selected)
|
||||||
orgaunit)) {
|
&& tabs.get(selected).hasData(orgaunit, state)) {
|
||||||
final GenericOrgaUnitTab selectedTab = tabs.get(selected);
|
final GenericOrgaUnitTab selectedTab = tabs.get(selected);
|
||||||
final Element selectedTabElem =
|
final Element selectedTabElem =
|
||||||
orgaUnitTabsElem.newChildElement(
|
orgaUnitTabsElem.newChildElement(
|
||||||
|
|
@ -217,4 +217,5 @@ public abstract class GenericOrgaUnitExtraXmlGenerator
|
||||||
public void setListMode(final boolean listMode) {
|
public void setListMode(final boolean listMode) {
|
||||||
this.listMode = listMode;
|
this.listMode = listMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,9 @@ public abstract class GenericOrgaUnitMembersTab implements GenericOrgaUnitTab {
|
||||||
private final static Logger logger =
|
private final static Logger logger =
|
||||||
Logger.getLogger(GenericOrgaUnitMembersTab.class);
|
Logger.getLogger(GenericOrgaUnitMembersTab.class);
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
@Override
|
||||||
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
/*final long start = System.currentTimeMillis();
|
/*final long start = System.currentTimeMillis();
|
||||||
final boolean result = !getData(orgaunit).isEmpty();
|
final boolean result = !getData(orgaunit).isEmpty();
|
||||||
logger.debug(String.format(
|
logger.debug(String.format(
|
||||||
|
|
@ -55,7 +57,7 @@ public abstract class GenericOrgaUnitMembersTab implements GenericOrgaUnitTab {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for(GenericPerson person : persons) {
|
for (GenericPerson person : persons) {
|
||||||
generatePersonXml(person, personsElem, state);
|
generatePersonXml(person, personsElem, state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -101,8 +103,7 @@ public abstract class GenericOrgaUnitMembersTab implements GenericOrgaUnitTab {
|
||||||
|
|
||||||
final List<GenericPerson> persons = new LinkedList<GenericPerson>();
|
final List<GenericPerson> persons = new LinkedList<GenericPerson>();
|
||||||
|
|
||||||
final GenericOrganizationalUnitPersonCollection personColl = orgaunit.
|
final GenericOrganizationalUnitPersonCollection personColl = orgaunit.getPersons();
|
||||||
getPersons();
|
|
||||||
|
|
||||||
if ((getRolesToInclude() != null) && !getRolesToInclude().isEmpty()) {
|
if ((getRolesToInclude() != null) && !getRolesToInclude().isEmpty()) {
|
||||||
final StringBuffer roleFilter = new StringBuffer();
|
final StringBuffer roleFilter = new StringBuffer();
|
||||||
|
|
@ -150,8 +151,7 @@ public abstract class GenericOrgaUnitMembersTab implements GenericOrgaUnitTab {
|
||||||
final List<GenericPerson> persons,
|
final List<GenericPerson> persons,
|
||||||
final PageState state) {
|
final PageState state) {
|
||||||
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
||||||
orgaunit.
|
orgaunit.getSubordinateOrgaUnits();
|
||||||
getSubordinateOrgaUnits();
|
|
||||||
final StringBuffer assocTypeFilter = new StringBuffer();
|
final StringBuffer assocTypeFilter = new StringBuffer();
|
||||||
for (String assocType : getAssocTypesToMerge()) {
|
for (String assocType : getAssocTypesToMerge()) {
|
||||||
if (assocTypeFilter.length() > 0) {
|
if (assocTypeFilter.length() > 0) {
|
||||||
|
|
@ -217,5 +217,6 @@ public abstract class GenericOrgaUnitMembersTab implements GenericOrgaUnitTab {
|
||||||
protected ContentItem getContentItem(final PageState state) {
|
protected ContentItem getContentItem(final PageState state) {
|
||||||
return person;
|
return person;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,8 @@ public abstract class GenericOrgaUnitSubordinateTab
|
||||||
GenericOrgaUnitSubordinateTab.class);
|
GenericOrgaUnitSubordinateTab.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
return !getData(orgaunit).isEmpty();
|
return !getData(orgaunit).isEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -78,8 +79,7 @@ public abstract class GenericOrgaUnitSubordinateTab
|
||||||
protected GenericOrganizationalUnitSubordinateCollection getData(
|
protected GenericOrganizationalUnitSubordinateCollection getData(
|
||||||
final GenericOrganizationalUnit orgaunit) {
|
final GenericOrganizationalUnit orgaunit) {
|
||||||
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
||||||
orgaunit.
|
orgaunit.getSubordinateOrgaUnits();
|
||||||
getSubordinateOrgaUnits();
|
|
||||||
subOrgaUnits.addFilter(
|
subOrgaUnits.addFilter(
|
||||||
String.format("%s = '%s'",
|
String.format("%s = '%s'",
|
||||||
GenericOrganizationalUnitSubordinateCollection.LINK_ASSOCTYPE,
|
GenericOrganizationalUnitSubordinateCollection.LINK_ASSOCTYPE,
|
||||||
|
|
@ -149,5 +149,6 @@ public abstract class GenericOrgaUnitSubordinateTab
|
||||||
protected ContentItem getContentItem(final PageState state) {
|
protected ContentItem getContentItem(final PageState state) {
|
||||||
return orgaunit;
|
return orgaunit;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,10 +15,12 @@ public interface GenericOrgaUnitTab {
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param orgaunit
|
* @param orgaunit
|
||||||
|
* @param state
|
||||||
* @return Returns true if the provided orgaunit has data to show in this
|
* @return Returns true if the provided orgaunit has data to show in this
|
||||||
* tab, false otherwise.
|
* tab, false otherwise.
|
||||||
*/
|
*/
|
||||||
boolean hasData(GenericOrganizationalUnit orgaunit);
|
boolean hasData(GenericOrganizationalUnit orgaunit,
|
||||||
|
PageState state);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The implementation of this method creates the XML output for the tab.
|
* The implementation of this method creates the XML output for the tab.
|
||||||
|
|
|
||||||
|
|
@ -97,10 +97,10 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
public TableModel makeModel(final Table table, final PageState state) {
|
public TableModel makeModel(final Table table, final PageState state) {
|
||||||
table.getRowSelectionModel().clearSelection(state);
|
table.getRowSelectionModel().clearSelection(state);
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(state);
|
||||||
getSelectedObject(state);
|
|
||||||
return new Model(table, state, orgaunit, customizer);
|
return new Model(table, state, orgaunit, customizer);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class Model implements TableModel {
|
private class Model implements TableModel {
|
||||||
|
|
@ -124,8 +124,7 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
if ((customizer.getContentType() != null)
|
if ((customizer.getContentType() != null)
|
||||||
&& !(customizer.getContentType().isEmpty())) {
|
&& !(customizer.getContentType().isEmpty())) {
|
||||||
subordinateOrgaUnits.addFilter(String.format("objectType = '%s'",
|
subordinateOrgaUnits.addFilter(String.format("objectType = '%s'",
|
||||||
customizer.
|
customizer.getContentType()));
|
||||||
getContentType()));
|
|
||||||
}
|
}
|
||||||
this.customizer = customizer;
|
this.customizer = customizer;
|
||||||
}
|
}
|
||||||
|
|
@ -172,6 +171,7 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
GlobalizationHelper.getNegotiatedLocale().getLanguage()).
|
GlobalizationHelper.getNegotiatedLocale().getLanguage()).
|
||||||
getID();
|
getID();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class EditCellRenderer
|
private class EditCellRenderer
|
||||||
|
|
@ -186,11 +186,8 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
final Object key,
|
final Object key,
|
||||||
final int row,
|
final int row,
|
||||||
final int column) {
|
final int column) {
|
||||||
final com.arsdigita.cms.SecurityManager securityManager = CMS.
|
final com.arsdigita.cms.SecurityManager securityManager = CMS.getSecurityManager(state);
|
||||||
getSecurityManager(state);
|
final GenericOrganizationalUnit subordinateOrgaUnit = new GenericOrganizationalUnit((BigDecimal) key);
|
||||||
final GenericOrganizationalUnit subordinateOrgaUnit =
|
|
||||||
new GenericOrganizationalUnit(
|
|
||||||
(BigDecimal) key);
|
|
||||||
|
|
||||||
final boolean canEdit = securityManager.canAccess(
|
final boolean canEdit = securityManager.canAccess(
|
||||||
state.getRequest(),
|
state.getRequest(),
|
||||||
|
|
@ -202,24 +199,18 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
getContentSection();
|
getContentSection();
|
||||||
final ItemResolver resolver = section.getItemResolver();
|
final ItemResolver resolver = section.getItemResolver();
|
||||||
final Link link =
|
final Link link =
|
||||||
new Link(
|
new Link(value.toString(),
|
||||||
String.format("%s (%s)",
|
|
||||||
value.toString(),
|
|
||||||
subordinateOrgaUnit.getLanguage()),
|
|
||||||
resolver.generateItemURL(state,
|
resolver.generateItemURL(state,
|
||||||
subordinateOrgaUnit,
|
subordinateOrgaUnit,
|
||||||
section,
|
section,
|
||||||
subordinateOrgaUnit.getVersion()));
|
subordinateOrgaUnit.getVersion()));
|
||||||
|
|
||||||
return link;
|
return link;
|
||||||
} else {
|
} else {
|
||||||
final Label label = new Label(String.format(
|
final Label label = new Label(value.toString());
|
||||||
"%s (%s)",
|
|
||||||
value.toString(),
|
|
||||||
subordinateOrgaUnit.getLanguage()));
|
|
||||||
return label;
|
return label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class DeleteCellRenderer
|
private class DeleteCellRenderer
|
||||||
|
|
@ -234,11 +225,9 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
final Object key,
|
final Object key,
|
||||||
final int row,
|
final int row,
|
||||||
final int column) {
|
final int column) {
|
||||||
final com.arsdigita.cms.SecurityManager securityManager = CMS.
|
final com.arsdigita.cms.SecurityManager securityManager = CMS.getSecurityManager(state);
|
||||||
getSecurityManager(state);
|
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(state);
|
||||||
getSelectedObject(state);
|
|
||||||
|
|
||||||
|
|
||||||
boolean canEdit = securityManager.canAccess(
|
boolean canEdit = securityManager.canAccess(
|
||||||
|
|
@ -255,6 +244,7 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
return label;
|
return label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class UpCellRenderer
|
private class UpCellRenderer
|
||||||
|
|
@ -278,6 +268,7 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
return link;
|
return link;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class DownCellRenderer
|
private class DownCellRenderer
|
||||||
|
|
@ -294,11 +285,9 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
final int column) {
|
final int column) {
|
||||||
|
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(state);
|
||||||
getSelectedObject(state);
|
|
||||||
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
||||||
orgaunit.
|
orgaunit.getSubordinateOrgaUnits();
|
||||||
getSubordinateOrgaUnits();
|
|
||||||
if ((customizer.getAssocType() != null)
|
if ((customizer.getAssocType() != null)
|
||||||
&& !(customizer.getAssocType().isEmpty())) {
|
&& !(customizer.getAssocType().isEmpty())) {
|
||||||
subOrgaUnits.addFilter(String.format(
|
subOrgaUnits.addFilter(String.format(
|
||||||
|
|
@ -321,6 +310,7 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
return link;
|
return link;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class ActionListener implements TableActionListener {
|
private class ActionListener implements TableActionListener {
|
||||||
|
|
@ -330,15 +320,13 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
final PageState state = event.getPageState();
|
final PageState state = event.getPageState();
|
||||||
|
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(
|
||||||
getSelectedObject(
|
|
||||||
state);
|
state);
|
||||||
final GenericOrganizationalUnit subOrgaUnit =
|
final GenericOrganizationalUnit subOrgaUnit =
|
||||||
new GenericOrganizationalUnit(
|
new GenericOrganizationalUnit(
|
||||||
new BigDecimal((String) event.getRowKey()));
|
new BigDecimal((String) event.getRowKey()));
|
||||||
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
|
||||||
orgaunit.
|
orgaunit.getSubordinateOrgaUnits();
|
||||||
getSubordinateOrgaUnits();
|
|
||||||
|
|
||||||
final TableColumn column = getColumnModel().get(event.getColumn().
|
final TableColumn column = getColumnModel().get(event.getColumn().
|
||||||
intValue());
|
intValue());
|
||||||
|
|
@ -357,5 +345,6 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitsTable
|
||||||
public void headSelected(TableActionEvent e) {
|
public void headSelected(TableActionEvent e) {
|
||||||
//Nothing now
|
//Nothing now
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,8 +22,10 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitSuperiorCollectio
|
||||||
import com.arsdigita.cms.dispatcher.ItemResolver;
|
import com.arsdigita.cms.dispatcher.ItemResolver;
|
||||||
import com.arsdigita.cms.dispatcher.Utilities;
|
import com.arsdigita.cms.dispatcher.Utilities;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
|
import com.arsdigita.globalization.GlobalizationHelper;
|
||||||
import com.arsdigita.persistence.OID;
|
import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.util.LockableImpl;
|
import com.arsdigita.util.LockableImpl;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -88,10 +90,10 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
public TableModel makeModel(final Table table, final PageState state) {
|
public TableModel makeModel(final Table table, final PageState state) {
|
||||||
table.getRowSelectionModel().clearSelection(state);
|
table.getRowSelectionModel().clearSelection(state);
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(state);
|
||||||
getSelectedObject(state);
|
|
||||||
return new Model(table, state, orgaunit, customizer);
|
return new Model(table, state, orgaunit, customizer);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class Model implements TableModel {
|
private class Model implements TableModel {
|
||||||
|
|
@ -110,14 +112,12 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
&& !(customizer.getAssocType().isEmpty())) {
|
&& !(customizer.getAssocType().isEmpty())) {
|
||||||
superiorOrgaUnits.addFilter(String.format(
|
superiorOrgaUnits.addFilter(String.format(
|
||||||
"link.assocType = '%s'",
|
"link.assocType = '%s'",
|
||||||
customizer.
|
customizer.getAssocType()));
|
||||||
getAssocType()));
|
|
||||||
}
|
}
|
||||||
if ((customizer.getContentType() != null)
|
if ((customizer.getContentType() != null)
|
||||||
&& !(customizer.getContentType().isEmpty())) {
|
&& !(customizer.getContentType().isEmpty())) {
|
||||||
superiorOrgaUnits.addFilter(String.format("objectType = '%s'",
|
superiorOrgaUnits.addFilter(String.format("objectType = '%s'",
|
||||||
customizer.
|
customizer.getContentType()));
|
||||||
getContentType()));
|
|
||||||
}
|
}
|
||||||
this.customizer = customizer;
|
this.customizer = customizer;
|
||||||
}
|
}
|
||||||
|
|
@ -156,8 +156,10 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Object getKeyAt(int columnIndex) {
|
public Object getKeyAt(int columnIndex) {
|
||||||
return superiorOrgaUnits.getOID();
|
return superiorOrgaUnits.getGenericOrganizationalUnit(
|
||||||
|
GlobalizationHelper.getNegotiatedLocale().getLanguage()).getID();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class EditCellRenderer
|
private class EditCellRenderer
|
||||||
|
|
@ -171,12 +173,8 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
final Object key,
|
final Object key,
|
||||||
final int row,
|
final int row,
|
||||||
final int column) {
|
final int column) {
|
||||||
final com.arsdigita.cms.SecurityManager securityManager = CMS.
|
final com.arsdigita.cms.SecurityManager securityManager = CMS.getSecurityManager(state);
|
||||||
getSecurityManager(state);
|
final GenericOrganizationalUnit superiorOrgaUnit = new GenericOrganizationalUnit((BigDecimal) key);
|
||||||
final GenericOrganizationalUnitBundle superiorOrgaUnitBundle =
|
|
||||||
(GenericOrganizationalUnitBundle) DomainObjectFactory.
|
|
||||||
newInstance((OID) key);
|
|
||||||
final GenericOrganizationalUnit superiorOrgaUnit = (GenericOrganizationalUnit) superiorOrgaUnitBundle.getPrimaryInstance();
|
|
||||||
|
|
||||||
final boolean canEdit = securityManager.canAccess(
|
final boolean canEdit = securityManager.canAccess(
|
||||||
state.getRequest(),
|
state.getRequest(),
|
||||||
|
|
@ -187,23 +185,18 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
final ContentSection section = CMS.getContext().
|
final ContentSection section = CMS.getContext().
|
||||||
getContentSection();
|
getContentSection();
|
||||||
final ItemResolver resolver = section.getItemResolver();
|
final ItemResolver resolver = section.getItemResolver();
|
||||||
final Link link = new Link(
|
final Link link = new Link(value.toString(),
|
||||||
String.format("%s",
|
|
||||||
value.toString(),
|
|
||||||
superiorOrgaUnit.getLanguage()),
|
|
||||||
resolver.generateItemURL(state,
|
resolver.generateItemURL(state,
|
||||||
superiorOrgaUnit,
|
superiorOrgaUnit,
|
||||||
section,
|
section,
|
||||||
superiorOrgaUnit.getVersion()));
|
superiorOrgaUnit.getVersion()));
|
||||||
return link;
|
return link;
|
||||||
} else {
|
} else {
|
||||||
final Label label = new Label(String.format(
|
final Label label = new Label(value.toString());
|
||||||
"%s (%s)",
|
|
||||||
value.toString(),
|
|
||||||
superiorOrgaUnit.getLanguage()));
|
|
||||||
return label;
|
return label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class DeleteCellRenderer
|
private class DeleteCellRenderer
|
||||||
|
|
@ -218,11 +211,9 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
final Object key,
|
final Object key,
|
||||||
final int row,
|
final int row,
|
||||||
final int column) {
|
final int column) {
|
||||||
final com.arsdigita.cms.SecurityManager securityManager = Utilities.
|
final com.arsdigita.cms.SecurityManager securityManager = Utilities.getSecurityManager(state);
|
||||||
getSecurityManager(state);
|
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(state);
|
||||||
getSelectedObject(state);
|
|
||||||
|
|
||||||
|
|
||||||
boolean canEdit = securityManager.canAccess(
|
boolean canEdit = securityManager.canAccess(
|
||||||
|
|
@ -239,6 +230,7 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
return label;
|
return label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class UpCellRenderer
|
private class UpCellRenderer
|
||||||
|
|
@ -262,6 +254,7 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
return link;
|
return link;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class DownCellRenderer
|
private class DownCellRenderer
|
||||||
|
|
@ -278,11 +271,9 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
final int column) {
|
final int column) {
|
||||||
|
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(state);
|
||||||
getSelectedObject(state);
|
|
||||||
final GenericOrganizationalUnitSuperiorCollection supOrgaUnits =
|
final GenericOrganizationalUnitSuperiorCollection supOrgaUnits =
|
||||||
orgaunit.
|
orgaunit.getSuperiorOrgaUnits();
|
||||||
getSuperiorOrgaUnits();
|
|
||||||
|
|
||||||
if ((supOrgaUnits.size() - 1) == row) {
|
if ((supOrgaUnits.size() - 1) == row) {
|
||||||
final Label label = new Label("");
|
final Label label = new Label("");
|
||||||
|
|
@ -293,6 +284,7 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
return link;
|
return link;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private class ActionListener implements TableActionListener {
|
private class ActionListener implements TableActionListener {
|
||||||
|
|
@ -302,14 +294,11 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
final PageState state = event.getPageState();
|
final PageState state = event.getPageState();
|
||||||
|
|
||||||
final GenericOrganizationalUnit orgaunit =
|
final GenericOrganizationalUnit orgaunit =
|
||||||
(GenericOrganizationalUnit) itemModel.
|
(GenericOrganizationalUnit) itemModel.getSelectedObject(state);
|
||||||
getSelectedObject(state);
|
final GenericOrganizationalUnit supOrgaUnit = new GenericOrganizationalUnit(
|
||||||
final GenericOrganizationalUnit supOrgaUnit =
|
new BigDecimal((String) event.getRowKey()));
|
||||||
(GenericOrganizationalUnit) DomainObjectFactory.
|
|
||||||
newInstance(OID.valueOf((String) event.getRowKey()));
|
|
||||||
final GenericOrganizationalUnitSuperiorCollection supOrgaUnits =
|
final GenericOrganizationalUnitSuperiorCollection supOrgaUnits =
|
||||||
orgaunit.
|
orgaunit.getSuperiorOrgaUnits();
|
||||||
getSuperiorOrgaUnits();
|
|
||||||
|
|
||||||
final TableColumn column = getColumnModel().get(event.getColumn().
|
final TableColumn column = getColumnModel().get(event.getColumn().
|
||||||
intValue());
|
intValue());
|
||||||
|
|
@ -329,5 +318,6 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitsTable extends Table {
|
||||||
public void headSelected(final TableActionEvent event) {
|
public void headSelected(final TableActionEvent event) {
|
||||||
//Nothing now
|
//Nothing now
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -90,6 +90,8 @@ public final class ConcurrentDict {
|
||||||
* <p>Note that the <code>null</code> key is always mapped to
|
* <p>Note that the <code>null</code> key is always mapped to
|
||||||
* <code>null</code>.</p>
|
* <code>null</code>.</p>
|
||||||
*
|
*
|
||||||
|
* @param key
|
||||||
|
* @return
|
||||||
* @see EntrySupplier#supply(Object)
|
* @see EntrySupplier#supply(Object)
|
||||||
* @see #ConcurrentDict(ConcurrentDict.EntrySupplier)
|
* @see #ConcurrentDict(ConcurrentDict.EntrySupplier)
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,9 @@
|
||||||
package com.redhat.persistence.common;
|
package com.redhat.persistence.common;
|
||||||
|
|
||||||
import com.arsdigita.util.ConcurrentDict;
|
import com.arsdigita.util.ConcurrentDict;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Path
|
* Path
|
||||||
|
|
@ -26,16 +29,14 @@ import com.arsdigita.util.ConcurrentDict;
|
||||||
* @author <a href="mailto:rhs@mit.edu">rhs@mit.edu</a>
|
* @author <a href="mailto:rhs@mit.edu">rhs@mit.edu</a>
|
||||||
* @version $Id: Path.java 287 2005-02-22 00:29:02Z sskracic $
|
* @version $Id: Path.java 287 2005-02-22 00:29:02Z sskracic $
|
||||||
**/
|
**/
|
||||||
|
|
||||||
public class Path {
|
public class Path {
|
||||||
|
|
||||||
//special case the id path since it shows up so often
|
//special case the id path since it shows up so often
|
||||||
private static final Path ID_PATH = new Path("id");
|
private static final Path ID_PATH = new Path("id");
|
||||||
private static final int NO_DOT = -1;
|
private static final int NO_DOT = -1;
|
||||||
|
|
||||||
private static final ConcurrentDict DICT =
|
private static final ConcurrentDict DICT =
|
||||||
new ConcurrentDict(new Supplier());
|
new ConcurrentDict(new Supplier());
|
||||||
|
private static final Map<String, Path> DICT2 = new HashMap<String, Path>();
|
||||||
private Path m_parent; // initialized lazily from m_path
|
private Path m_parent; // initialized lazily from m_path
|
||||||
private final String m_path;
|
private final String m_path;
|
||||||
private final int m_lastDot;
|
private final int m_lastDot;
|
||||||
|
|
@ -45,36 +46,36 @@ public class Path {
|
||||||
m_lastDot = m_path.lastIndexOf('.');
|
m_lastDot = m_path.lastIndexOf('.');
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final Path get(String path) {
|
public static Path get(String path) {
|
||||||
if ("id".equals(path)) {
|
if ("id".equals(path)) {
|
||||||
return ID_PATH;
|
return ID_PATH;
|
||||||
}
|
}
|
||||||
return (Path) DICT.get(path);
|
return (Path) DICT.get(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final Path add(String p1, String p2) {
|
public static Path add(String p1, String p2) {
|
||||||
return Path.get(concat(p1, p2));
|
return Path.get(concat(p1, p2));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final Path add(Path p1, String p2) {
|
public static Path add(Path p1, String p2) {
|
||||||
return p1==null ? Path.get(p2) : Path.get(concat(p1.m_path, p2));
|
return p1 == null ? Path.get(p2) : Path.get(concat(p1.getPath(), p2));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final Path add(String p1, Path p2) {
|
public static Path add(String p1, Path p2) {
|
||||||
return p2==null ? Path.get(p1): Path.get(concat(p1, p2.m_path));
|
return p2 == null ? Path.get(p1) : Path.get(concat(p1, p2.getPath()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final Path add(Path p1, Path p2) {
|
public static Path add(Path p1, Path p2) {
|
||||||
if (p1 == null) {
|
if (p1 == null) {
|
||||||
return p2;
|
return p2;
|
||||||
} else if (p2 == null) {
|
} else if (p2 == null) {
|
||||||
return p1;
|
return p1;
|
||||||
} else {
|
} else {
|
||||||
return Path.get(concat(p1.m_path, p2.m_path));
|
return Path.get(concat(p1.getPath(), p2.getPath()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final Path relative(Path base, Path descendent) {
|
public static Path relative(Path base, Path descendent) {
|
||||||
if (base == null) {
|
if (base == null) {
|
||||||
return descendent;
|
return descendent;
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -83,12 +84,12 @@ public class Path {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Path getParent() {
|
public Path getParent() {
|
||||||
if ( m_lastDot == NO_DOT ) {
|
if (m_lastDot == NO_DOT) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
synchronized(this) {
|
synchronized (this) {
|
||||||
if (m_parent == null ) {
|
if (m_parent == null) {
|
||||||
m_parent = Path.get(m_path.substring(0, m_lastDot));
|
m_parent = Path.get(m_path.substring(0, m_lastDot));
|
||||||
}
|
}
|
||||||
return m_parent;
|
return m_parent;
|
||||||
|
|
@ -125,32 +126,35 @@ public class Path {
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return m_path.substring(m_lastDot+1);
|
return m_path.substring(m_lastDot + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getPath() {
|
public String getPath() {
|
||||||
return m_path;
|
return m_path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return m_path;
|
return m_path;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String concat(String s1, String s2) {
|
private static String concat(String s1, String s2) {
|
||||||
if (s1 == null ) {
|
if (s1 == null) {
|
||||||
return s2;
|
return s2;
|
||||||
} else if (s2 == null ) {
|
} else if (s2 == null) {
|
||||||
return s1;
|
return s1;
|
||||||
} else {
|
} else {
|
||||||
StringBuffer sb = new StringBuffer(s1.length() + s2.length() + 1);
|
StringBuilder sb = new StringBuilder(s1.length() + s2.length() + 1);
|
||||||
sb.append(s1).append(".").append(s2);
|
sb.append(s1).append(".").append(s2);
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class Supplier implements ConcurrentDict.EntrySupplier {
|
private static class Supplier implements ConcurrentDict.EntrySupplier {
|
||||||
|
|
||||||
public Object supply(Object key) {
|
public Object supply(Object key) {
|
||||||
return new Path((String) key);
|
return new Path((String) key);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -803,7 +803,11 @@ public class PDL {
|
||||||
String[] paths = new String[] { pone.getName(),
|
String[] paths = new String[] { pone.getName(),
|
||||||
ptwo.getName() };
|
ptwo.getName() };
|
||||||
for (int i = 0; i < paths.length; i++) {
|
for (int i = 0; i < paths.length; i++) {
|
||||||
|
//System.err.printf("Path.get(paths[i] contains path: %s\n", Path.get(paths[i]).getPath());
|
||||||
Mapping m = om.getMapping(Path.get(paths[i]));
|
Mapping m = om.getMapping(Path.get(paths[i]));
|
||||||
|
//if (m == null) {
|
||||||
|
// System.err.println("m is null");
|
||||||
|
//}
|
||||||
if (m.getTable() != null) {
|
if (m.getTable() != null) {
|
||||||
om.setTable(m.getTable());
|
om.setTable(m.getTable());
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,9 @@ public class SciDepartmentDescTab implements GenericOrgaUnitTab {
|
||||||
|
|
||||||
public final Logger logger = Logger.getLogger(SciDepartmentDescTab.class);
|
public final Logger logger = Logger.getLogger(SciDepartmentDescTab.class);
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
@Override
|
||||||
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
boolean result;
|
boolean result;
|
||||||
final Desc desc = getData(orgaunit);
|
final Desc desc = getData(orgaunit);
|
||||||
|
|
@ -96,5 +98,6 @@ public class SciDepartmentDescTab implements GenericOrgaUnitTab {
|
||||||
public void setDesc(final String desc) {
|
public void setDesc(final String desc) {
|
||||||
this.desc = desc;
|
this.desc = desc;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,6 @@ package com.arsdigita.cms.contenttypes.ui;
|
||||||
import com.arsdigita.bebop.PageState;
|
import com.arsdigita.bebop.PageState;
|
||||||
import com.arsdigita.cms.ContentItem;
|
import com.arsdigita.cms.ContentItem;
|
||||||
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
|
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
|
||||||
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitPersonCollection;
|
|
||||||
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitSubordinateCollection;
|
|
||||||
import com.arsdigita.cms.contenttypes.GenericPerson;
|
import com.arsdigita.cms.contenttypes.GenericPerson;
|
||||||
import com.arsdigita.cms.contenttypes.SciDepartment;
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
import com.arsdigita.cms.contenttypes.ui.panels.CompareFilter;
|
import com.arsdigita.cms.contenttypes.ui.panels.CompareFilter;
|
||||||
|
|
@ -12,15 +10,15 @@ import com.arsdigita.cms.contenttypes.ui.panels.Paginator;
|
||||||
import com.arsdigita.cms.contenttypes.ui.panels.TextFilter;
|
import com.arsdigita.cms.contenttypes.ui.panels.TextFilter;
|
||||||
import com.arsdigita.cms.dispatcher.SimpleXMLGenerator;
|
import com.arsdigita.cms.dispatcher.SimpleXMLGenerator;
|
||||||
import com.arsdigita.globalization.Globalization;
|
import com.arsdigita.globalization.Globalization;
|
||||||
|
import com.arsdigita.persistence.DataCollection;
|
||||||
import com.arsdigita.persistence.DataQuery;
|
import com.arsdigita.persistence.DataQuery;
|
||||||
|
import com.arsdigita.persistence.FilterFactory;
|
||||||
import com.arsdigita.persistence.SessionManager;
|
import com.arsdigita.persistence.SessionManager;
|
||||||
import com.arsdigita.xml.Element;
|
import com.arsdigita.xml.Element;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.Comparator;
|
|
||||||
import java.util.LinkedList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.logging.Filter;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
|
@ -39,13 +37,13 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
private static final String SURNAME_PARAM = "memberSurname";
|
private static final String SURNAME_PARAM = "memberSurname";
|
||||||
private final CompareFilter statusFilter = new CompareFilter(
|
private final CompareFilter statusFilter = new CompareFilter(
|
||||||
STATUS_PARAM,
|
STATUS_PARAM,
|
||||||
"link.status",
|
"status",
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
false);
|
false);
|
||||||
private final TextFilter surnameFilter =
|
private final TextFilter surnameFilter =
|
||||||
new TextFilter(SURNAME_PARAM,
|
new TextFilter(SURNAME_PARAM,
|
||||||
"name");
|
GenericPerson.SURNAME);
|
||||||
|
|
||||||
static {
|
static {
|
||||||
config.load();
|
config.load();
|
||||||
|
|
@ -61,18 +59,17 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
// if ((orgaunit.getPersons() != null)
|
final PageState state) {
|
||||||
// && orgaunit.getPersons().size() > 0) {
|
if ((orgaunit.getPersons() != null)
|
||||||
// return true;
|
&& orgaunit.getPersons().size() > 0) {
|
||||||
// } else if (config.isMergingMembers()) {
|
return true;
|
||||||
// final DataQuery persons = getData(orgaunit);
|
} else if (config.isMergingMembers()) {
|
||||||
// return persons.isEmpty();
|
final DataQuery persons = getData(orgaunit, state);
|
||||||
// } else {
|
return persons.isEmpty();
|
||||||
// return false;
|
} else {
|
||||||
// }
|
return false;
|
||||||
|
}
|
||||||
return !orgaunit.getPersons().isEmpty();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -80,9 +77,12 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
final Element parent,
|
final Element parent,
|
||||||
final PageState state) {
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
List<GenericPerson> members = getMembers(orgaunit, state);
|
final DataQuery persons = getData(orgaunit, state);
|
||||||
final HttpServletRequest request = state.getRequest();
|
final HttpServletRequest request = state.getRequest();
|
||||||
|
|
||||||
|
//applyStatusFilter(persons, request);
|
||||||
|
applySurnameFilter(persons, request);
|
||||||
|
|
||||||
final Element depMembersElem = parent.newChildElement(
|
final Element depMembersElem = parent.newChildElement(
|
||||||
"departmentMembers");
|
"departmentMembers");
|
||||||
|
|
||||||
|
|
@ -90,8 +90,7 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
|
|
||||||
statusFilter.generateXml(filtersElem);
|
statusFilter.generateXml(filtersElem);
|
||||||
|
|
||||||
if (members.isEmpty()) {
|
if ((persons == null) || persons.isEmpty()) {
|
||||||
//if (persons.isEmpty()) {
|
|
||||||
if ((surnameFilter != null)
|
if ((surnameFilter != null)
|
||||||
&& (surnameFilter.getFilter() != null)
|
&& (surnameFilter.getFilter() != null)
|
||||||
&& !(surnameFilter.getFilter().trim().isEmpty())) {
|
&& !(surnameFilter.getFilter().trim().isEmpty())) {
|
||||||
|
|
@ -101,23 +100,8 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Collections.sort(members, new Comparator<GenericPerson>() {
|
|
||||||
|
|
||||||
public int compare(final GenericPerson person1,
|
|
||||||
final GenericPerson person2) {
|
|
||||||
String name1 = String.format("%s %s", person1.getSurname(),
|
|
||||||
person1.getGivenName());
|
|
||||||
String name2 = String.format("%s %s", person2.getSurname(),
|
|
||||||
person2.getGivenName());
|
|
||||||
|
|
||||||
return name1.compareTo(name2);
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
final Paginator paginator = new Paginator(request,
|
final Paginator paginator = new Paginator(request,
|
||||||
//(int) persons.size(),
|
(int) persons.size(),
|
||||||
members.size(),
|
|
||||||
config.getPageSize());
|
config.getPageSize());
|
||||||
|
|
||||||
if ((paginator.getPageCount() > config.getEnableSearchLimit())
|
if ((paginator.getPageCount() > config.getEnableSearchLimit())
|
||||||
|
|
@ -126,13 +110,11 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
surnameFilter.generateXml(filtersElem);
|
surnameFilter.generateXml(filtersElem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
paginator.applyLimits(persons);
|
||||||
paginator.generateXml(depMembersElem);
|
paginator.generateXml(depMembersElem);
|
||||||
if (paginator.getEnd() < members.size()) {
|
|
||||||
members = members.subList(paginator.getBegin(), paginator.getEnd());
|
|
||||||
}
|
|
||||||
|
|
||||||
for (GenericPerson member : members) {
|
while (persons.next()) {
|
||||||
generateMemberXml(member,
|
generateMemberXml((BigDecimal) persons.get("id"),
|
||||||
depMembersElem,
|
depMembersElem,
|
||||||
state);
|
state);
|
||||||
}
|
}
|
||||||
|
|
@ -143,65 +125,10 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
System.currentTimeMillis() - start));
|
System.currentTimeMillis() - start));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected List<GenericPerson> getMembers(
|
protected DataQuery getData(final GenericOrganizationalUnit orgaunit,
|
||||||
final GenericOrganizationalUnit orgaunit,
|
|
||||||
final PageState state) {
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
|
|
||||||
final List<GenericPerson> members = new LinkedList<GenericPerson>();
|
|
||||||
|
|
||||||
final GenericOrganizationalUnitPersonCollection persons = orgaunit.
|
|
||||||
getPersons();
|
|
||||||
|
|
||||||
if (state != null) {
|
|
||||||
applyStatusFilter(persons, state.getRequest());
|
|
||||||
applySurnameFilter(persons, state.getRequest());
|
|
||||||
}
|
|
||||||
|
|
||||||
while (persons.next()) {
|
|
||||||
members.add(persons.getPerson());
|
|
||||||
}
|
|
||||||
|
|
||||||
if (config.isMergingMembers()) {
|
|
||||||
getMembersFromSubordinateOrgaUnits(orgaunit, members, state);
|
|
||||||
}
|
|
||||||
|
|
||||||
logger.debug(String.format(
|
|
||||||
"Got members of department '%s'"
|
|
||||||
+ "in '%d ms'. MergeMembers is set to '%b'.",
|
|
||||||
orgaunit.getName(),
|
|
||||||
System.currentTimeMillis() - start,
|
|
||||||
config.isMergingMembers()));
|
|
||||||
return members;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void getMembersFromSubordinateOrgaUnits(
|
|
||||||
final GenericOrganizationalUnit orgaunit,
|
|
||||||
final List<GenericPerson> members,
|
|
||||||
final PageState state) {
|
|
||||||
final GenericOrganizationalUnitSubordinateCollection subDeps = orgaunit.
|
|
||||||
getSubordinateOrgaUnits();
|
|
||||||
subDeps.addFilter(
|
|
||||||
"objecttype = 'com.arsdigita.cms.contenttypes.SciDepartment'");
|
|
||||||
|
|
||||||
while (subDeps.next()) {
|
|
||||||
getMembersFromSubordinateOrgaUnit(
|
|
||||||
subDeps.getGenericOrganizationalUnit(), members, state);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void getMembersFromSubordinateOrgaUnit(
|
|
||||||
final GenericOrganizationalUnit subOrgaUnit,
|
|
||||||
final List<GenericPerson> members,
|
|
||||||
final PageState state) {
|
|
||||||
final List<GenericPerson> subOrgaUnitMembers = getMembers(subOrgaUnit,
|
|
||||||
state);
|
|
||||||
members.addAll(subOrgaUnitMembers);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected DataQuery getData(final GenericOrganizationalUnit orgaunit) {
|
|
||||||
final long start = System.currentTimeMillis();
|
|
||||||
|
|
||||||
if (!(orgaunit instanceof SciDepartment)) {
|
if (!(orgaunit instanceof SciDepartment)) {
|
||||||
throw new IllegalArgumentException(String.format(
|
throw new IllegalArgumentException(String.format(
|
||||||
"This tab can only process instances of "
|
"This tab can only process instances of "
|
||||||
|
|
@ -210,7 +137,7 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
orgaunit.getClass().getName()));
|
orgaunit.getClass().getName()));
|
||||||
}
|
}
|
||||||
|
|
||||||
final DataQuery personsQuery = SessionManager.getSession().
|
final DataQuery personBundlesQuery = SessionManager.getSession().
|
||||||
retrieveQuery(
|
retrieveQuery(
|
||||||
"com.arsdigita.cms.contenttypes.getIdsOfMembersOfOrgaUnits");
|
"com.arsdigita.cms.contenttypes.getIdsOfMembersOfOrgaUnits");
|
||||||
final List<String> orgaUnitIds = new ArrayList<String>();
|
final List<String> orgaUnitIds = new ArrayList<String>();
|
||||||
|
|
@ -220,7 +147,7 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
SessionManager.getSession().retrieveQuery(
|
SessionManager.getSession().retrieveQuery(
|
||||||
"com.arsdigita.cms.contenttypes.getIdsOfSubordinateOrgaUnitsRecursivlyWithAssocType");
|
"com.arsdigita.cms.contenttypes.getIdsOfSubordinateOrgaUnitsRecursivlyWithAssocType");
|
||||||
subDepartmentsQuery.setParameter("orgaunitId",
|
subDepartmentsQuery.setParameter("orgaunitId",
|
||||||
orgaunit.getID().toString());
|
orgaunit.getContentBundle().getID().toString());
|
||||||
subDepartmentsQuery.setParameter("assocType",
|
subDepartmentsQuery.setParameter("assocType",
|
||||||
SciDepartmentSubDepartmentsStep.ASSOC_TYPE);
|
SciDepartmentSubDepartmentsStep.ASSOC_TYPE);
|
||||||
|
|
||||||
|
|
@ -228,13 +155,30 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
orgaUnitIds.add(subDepartmentsQuery.get("orgaunitId").toString());
|
orgaUnitIds.add(subDepartmentsQuery.get("orgaunitId").toString());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
orgaUnitIds.add(orgaunit.getID().toString());
|
orgaUnitIds.add(orgaunit.getContentBundle().getID().toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
personsQuery.setParameter("orgaunitIds", orgaUnitIds);
|
personBundlesQuery.setParameter("orgaunitIds", orgaUnitIds);
|
||||||
|
applyStatusFilter(personBundlesQuery, state.getRequest());
|
||||||
|
|
||||||
personsQuery.addOrder(GenericPerson.SURNAME);
|
final StringBuilder filterBuilder = new StringBuilder();
|
||||||
personsQuery.addOrder(GenericPerson.GIVENNAME);
|
while (personBundlesQuery.next()) {
|
||||||
|
if (filterBuilder.length() > 0) {
|
||||||
|
filterBuilder.append(",");
|
||||||
|
}
|
||||||
|
filterBuilder.append(personBundlesQuery.get("memberId").toString());
|
||||||
|
}
|
||||||
|
final DataCollection membersQuery = SessionManager.getSession().retrieve(GenericPerson.BASE_DATA_OBJECT_TYPE);
|
||||||
|
|
||||||
|
if (filterBuilder.length() > 0) {
|
||||||
|
membersQuery.addFilter(String.format("parent.id in (%s)", filterBuilder.toString()));
|
||||||
|
} else {
|
||||||
|
//No member return null to indicate
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
membersQuery.addOrder(GenericPerson.SURNAME);
|
||||||
|
membersQuery.addOrder(GenericPerson.GIVENNAME);
|
||||||
|
|
||||||
logger.debug(String.format(
|
logger.debug(String.format(
|
||||||
"Got members of department '%s'"
|
"Got members of department '%s'"
|
||||||
|
|
@ -242,7 +186,7 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
orgaunit.getName(),
|
orgaunit.getName(),
|
||||||
System.currentTimeMillis() - start,
|
System.currentTimeMillis() - start,
|
||||||
config.isMergingMembers()));
|
config.isMergingMembers()));
|
||||||
return personsQuery;
|
return membersQuery;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void applyStatusFilter(final DataQuery persons,
|
private void applyStatusFilter(final DataQuery persons,
|
||||||
|
|
@ -312,5 +256,6 @@ public class SciDepartmentMembersTab implements GenericOrgaUnitTab {
|
||||||
protected ContentItem getContentItem(final PageState state) {
|
protected ContentItem getContentItem(final PageState state) {
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -68,7 +68,9 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab {
|
||||||
false);
|
false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
@Override
|
||||||
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
||||||
types.addFilter(
|
types.addFilter(
|
||||||
|
|
@ -265,8 +267,7 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab {
|
||||||
final Element parent,
|
final Element parent,
|
||||||
final PageState state) {
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
final ContentPage project = (ContentPage) DomainObjectFactory.
|
final ContentPage project = (ContentPage) DomainObjectFactory.newInstance(new OID(
|
||||||
newInstance(new OID(
|
|
||||||
"com.arsdigita.cms.contenttypes.SciProject", projectId));
|
"com.arsdigita.cms.contenttypes.SciProject", projectId));
|
||||||
logger.debug(String.format("Got domain object for project '%s' "
|
logger.debug(String.format("Got domain object for project '%s' "
|
||||||
+ "in %d ms.",
|
+ "in %d ms.",
|
||||||
|
|
@ -301,5 +302,6 @@ public class SciDepartmentProjectsTab implements GenericOrgaUnitTab {
|
||||||
protected ContentItem getContentItem(final PageState state) {
|
protected ContentItem getContentItem(final PageState state) {
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,8 @@ public class SciDepartmentPublicationsTab implements GenericOrgaUnitTab {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
|
|
||||||
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,8 @@ public class SciDepartmentSummaryTab implements GenericOrgaUnitTab {
|
||||||
config.load();
|
config.load();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
//Some of the the data shown by this tab will ever be there
|
//Some of the the data shown by this tab will ever be there
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,8 @@ public class SciInstituteDescTab implements GenericOrgaUnitTab {
|
||||||
|
|
||||||
public final Logger logger = Logger.getLogger(SciInstituteDescTab.class);
|
public final Logger logger = Logger.getLogger(SciInstituteDescTab.class);
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
boolean result;
|
boolean result;
|
||||||
final Desc desc = getData(orgaunit);
|
final Desc desc = getData(orgaunit);
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,8 @@ public class SciInstituteMembersTab implements GenericOrgaUnitTab {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
if ((orgaunit.getPersons() != null)
|
if ((orgaunit.getPersons() != null)
|
||||||
&& orgaunit.getPersons().size() > 0) {
|
&& orgaunit.getPersons().size() > 0) {
|
||||||
return true;
|
return true;
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,8 @@ public class SciInstituteProjectsTab implements GenericOrgaUnitTab {
|
||||||
false);
|
false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
||||||
types.addFilter(
|
types.addFilter(
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,8 @@ public class SciInstitutePublicationsTab implements GenericOrgaUnitTab {
|
||||||
this.onlyWorkingPapers = onlyWorkingPapers;
|
this.onlyWorkingPapers = onlyWorkingPapers;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
|
|
||||||
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
final ContentTypeCollection types = ContentType.getAllContentTypes();
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,8 @@ public class SciInstituteSummaryTab implements GenericOrgaUnitTab {
|
||||||
config.load();
|
config.load();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
//Some of the the data shown by this tab will ever be there
|
//Some of the the data shown by this tab will ever be there
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,8 @@ public class SciProjectDescTab implements GenericOrgaUnitTab {
|
||||||
|
|
||||||
public final Logger logger = Logger.getLogger(SciProjectDescTab.class);
|
public final Logger logger = Logger.getLogger(SciProjectDescTab.class);
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
final long start = System.currentTimeMillis();
|
final long start = System.currentTimeMillis();
|
||||||
boolean result;
|
boolean result;
|
||||||
final Desc desc = getData(orgaunit);
|
final Desc desc = getData(orgaunit);
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,8 @@ public class SciProjectSummaryTab implements GenericOrgaUnitTab {
|
||||||
config.load();
|
config.load();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasData(final GenericOrganizationalUnit orgaunit) {
|
public boolean hasData(final GenericOrganizationalUnit orgaunit,
|
||||||
|
final PageState state) {
|
||||||
//Some of the data shown by this tab will ever be there
|
//Some of the data shown by this tab will ever be there
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue