Author: tdraier
Date: Wed Jun 20 14:48:16 2007
New Revision: 17664
URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D17664&repname=
=3Djahia
Log:
lazy load page and url (JAHIA-2057)
Modified:
branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/webdav/Us=
ageEntry.java
Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/web=
dav/UsageEntry.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/services/webdav/UsageEntry.java&rev=3D17664=
&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/webdav/Us=
ageEntry.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/webdav/Us=
ageEntry.java Wed Jun 20 14:48:16 2007
@@ -46,7 +46,7 @@
private String val;
private JahiaField aField;
private ProcessingContext jParams;
-
+ private EntryLoadRequest loadRequest;
private JahiaPage aPage;
private String url;
=
@@ -62,45 +62,19 @@
}
=
public JahiaField getField() {
- try {
- if (aField =3D=3D null) {
+ if (aField =3D=3D null && jParams !=3D null) {
+ try {
ArrayList list =3D new ArrayList();
list.add(LanguageCodeConverters.languageCodeToLocale(lang)=
);
- EntryLoadRequest loadRequest =3D new EntryLoadRequest(work=
flow, version, list);
- if (jParams !=3D null) {
- ServicesRegistry sReg =3D ServicesRegistry.getInstance=
();
-
- aField =3D sReg.getJahiaFieldService ().loadField (id,=
LoadFlags.NOTHING, jParams, loadRequest);
- // contentField =3D ContentField.getField(id);
- JahiaUser currentUser =3D jParams.getUser ();
- if (aField !=3D null) {
-
- aPage =3D sReg.getJahiaPageService ()
- .lookupPage (aField.getPageID (), loadRequ=
est);
- if ((workflow =3D=3D EntryLoadRequest.STAGING_WORK=
FLOW_STATE)
- || (workflow =3D=3D EntryLoadRequest.ACTIV=
E_WORKFLOW_STATE)
- || (workflow =3D=3D EntryLoadRequest.WAITI=
NG_WORKFLOW_STATE)) {
- if (aPage !=3D null) {
- String opMode =3D jParams.getOperationMode=
();
- if (workflow =3D=3D EntryLoadRequest.STAGI=
NG_WORKFLOW_STATE) {
- jParams.setOperationMode (ProcessingCo=
ntext.EDIT);
- } else if (workflow =3D=3D EntryLoadReques=
t.ACTIVE_WORKFLOW_STATE) {
- jParams.setOperationMode (ProcessingCo=
ntext.NORMAL);
- } else if (workflow =3D=3D EntryLoadReques=
t.WAITING_WORKFLOW_STATE) {
- jParams.setOperationMode (ProcessingCo=
ntext.PREVIEW);
- }
- url =3D aPage.getURL (jParams);
- jParams.setOperationMode (opMode);
- }
- }
- }
- }
+ loadRequest =3D new EntryLoadRequest(workflow, version, li=
st);
+ ServicesRegistry sReg =3D ServicesRegistry.getInstance ();
+
+ aField =3D sReg.getJahiaFieldService ().loadField (id, Loa=
dFlags.NOTHING, jParams, loadRequest);
+ } catch (JahiaException e) {
+ logger.error("Cannot get file usage " +val,e);
}
- return aField;
- } catch (JahiaException e) {
- logger.error("Cannot get file usage " +val,e);
}
- return null;
+ return aField;
}
=
public int getId () {
@@ -124,7 +98,36 @@
}
=
=
+ public JahiaPage getPage() {
+ if (aPage =3D=3D null && getField() !=3D null) {
+ try {
+ ServicesRegistry sReg =3D ServicesRegistry.getInstance ();
+ aPage =3D sReg.getJahiaPageService ()
+ .lookupPage (aField.getPageID (), loadRequest);
+ } catch (JahiaException e) {
+ logger.error("Error getting page",e);
+ }
+ }
+ return aPage;
+ }
+
public String getUrl () {
+ if (url =3D=3D null && getPage() !=3D null) {
+ try {
+ String opMode =3D jParams.getOperationMode ();
+ if (workflow =3D=3D EntryLoadRequest.STAGING_WORKFLOW_STAT=
E) {
+ jParams.setOperationMode (ProcessingContext.EDIT);
+ } else if (workflow =3D=3D EntryLoadRequest.ACTIVE_WORKFLO=
W_STATE) {
+ jParams.setOperationMode (ProcessingContext.NORMAL);
+ } else if (workflow =3D=3D EntryLoadRequest.WAITING_WORKFL=
OW_STATE) {
+ jParams.setOperationMode (ProcessingContext.PREVIEW);
+ }
+ url =3D aPage.getURL (jParams);
+ jParams.setOperationMode (opMode);
+ } catch (JahiaException e) {
+ logger.error("Error getting url",e);
+ }
+ }
return url;
}
=
_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list