Modified: lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/DeleteUser.java
URL: http://svn.apache.org/viewvc/lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/DeleteUser.java?rev=719147&r1=719146&r2=719147&view=diff
==============================================================================
--- lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/DeleteUser.java (original)
+++ lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/DeleteUser.java Wed Nov 19 17:10:15 2008
@@ -17,7 +17,7 @@
*/
package org.apache.lenya.cms.ac.usecases;
-import org.apache.lenya.ac.User;
+import org.apache.lenya.ac.ManagedUser;
/**
* Usecase to delete a user.
@@ -33,7 +33,7 @@
super.doExecute();
String userId = getParameterAsString(UserProfile.USER_ID);
- User user = getUserManager().getUser(userId);
+ ManagedUser user = getUserManager().getUser(userId);
if (user == null) {
throw new RuntimeException("User [" + userId + "] not found.");
}
Modified: lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java
URL: http://svn.apache.org/viewvc/lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java?rev=719147&r1=719146&r2=719147&view=diff
==============================================================================
--- lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java (original)
+++ lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java Wed Nov 19 17:10:15 2008
@@ -23,6 +23,7 @@
import org.apache.lenya.ac.Group;
import org.apache.lenya.ac.Groupable;
+import org.apache.lenya.ac.ManagedUser;
import org.apache.lenya.ac.User;
import org.apache.lenya.cms.usecase.UsecaseException;
@@ -79,7 +80,7 @@
List groupUsers = (List) getParameter(GROUP_USERS);
for (Iterator i = groupUsers.iterator(); i.hasNext();) {
- User user = (User) i.next();
+ ManagedUser user = (ManagedUser) i.next();
group.add(user);
user.save();
}
Modified: lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserGroups.java
URL: http://svn.apache.org/viewvc/lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserGroups.java?rev=719147&r1=719146&r2=719147&view=diff
==============================================================================
--- lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserGroups.java (original)
+++ lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserGroups.java Wed Nov 19 17:10:15 2008
@@ -23,7 +23,8 @@
import java.util.List;
import org.apache.lenya.ac.Group;
-import org.apache.lenya.ac.User;
+import org.apache.lenya.ac.Groupable;
+import org.apache.lenya.ac.ManagedUser;
import org.apache.lenya.cms.usecase.UsecaseException;
/**
@@ -44,13 +45,13 @@
protected void doExecute() throws Exception {
super.doExecute();
- User user = getUser();
+ ManagedUser user = getUser();
user.removeFromAllGroups();
List userGroups = (List) getParameter(USER_GROUPS);
for (Iterator i = userGroups.iterator(); i.hasNext();) {
Group group = (Group) i.next();
- group.add(user);
+ group.add((Groupable) user);
}
user.save();
}
@@ -100,9 +101,9 @@
}
- protected User getUser() {
+ protected ManagedUser getUser() {
String userId = getParameterAsString(UserProfile.USER_ID);
- User user = getUserManager().getUser(userId);
+ ManagedUser user = getUserManager().getUser(userId);
if (user == null) {
throw new RuntimeException("User [" + userId + "] not found.");
}
@@ -112,7 +113,7 @@
protected void initParameters() {
super.initParameters();
- Group[] userGroupArray = getUser().getGroups();
+ Group[] userGroupArray = ((Groupable) getUser()).getGroups();
List userGroups = new ArrayList(Arrays.asList(userGroupArray));
setParameter(USER_GROUPS, userGroups);
Modified: lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserProfile.java
URL: http://svn.apache.org/viewvc/lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserProfile.java?rev=719147&r1=719146&r2=719147&view=diff
==============================================================================
--- lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserProfile.java (original)
+++ lenya/sandbox/access_control_redesign/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/UserProfile.java Wed Nov 19 17:10:15 2008
@@ -17,7 +17,7 @@
*/
package org.apache.lenya.cms.ac.usecases;
-import org.apache.lenya.ac.User;
+import org.apache.lenya.ac.ManagedUser;
import org.apache.lenya.ac.ItemUtil;
/**
@@ -71,13 +71,13 @@
}
- private User user;
+ private ManagedUser user;
/**
* Returns the currently edited user.
* @return A user.
*/
- protected User getUser() {
+ protected ManagedUser getUser() {
return this.user;
}
Modified: lenya/sandbox/access_control_redesign/src/modules/lucene/java/src/org/apache/cocoon/transformation/LuceneIndexTransformer2.java
URL: http://svn.apache.org/viewvc/lenya/sandbox/access_control_redesign/src/modules/lucene/java/src/org/apache/cocoon/transformation/LuceneIndexTransformer2.java?rev=719147&r1=719146&r2=719147&view=diff
==============================================================================
--- lenya/sandbox/access_control_redesign/src/modules/lucene/java/src/org/apache/cocoon/transformation/LuceneIndexTransformer2.java (original)
+++ lenya/sandbox/access_control_redesign/src/modules/lucene/java/src/org/apache/cocoon/transformation/LuceneIndexTransformer2.java Wed Nov 19 17:10:15 2008
@@ -45,8 +45,6 @@
import org.apache.lenya.ac.Identity;
import org.apache.lenya.ac.User;
import org.apache.lenya.ac.UserManager;
-import org.apache.lenya.cms.repository.RepositoryUtil;
-import org.apache.lenya.cms.repository.Session;
import org.apache.lenya.modules.lucene.MetaDataFieldRegistry;
import org.apache.lenya.notification.Address;
import org.apache.lenya.notification.Message;
@@ -64,23 +62,20 @@
/**
* Another lucene index transformer.</br> allow
* <ul>
- * <li>index function (update indexing or add indexing if clear attribute is
- * true)</li>
+ * <li>index function (update indexing or add indexing if clear attribute is true)</li>
* <li>lucene field boosting</li>
* <li>delete function</li>
* </ul>
*
* <p>
- * This tranformer used several avalon components, but you can use them
- * separatly :
+ * This tranformer used several avalon components, but you can use them separatly :
* <ul>
- * <li>AnalyzerManager: you can setup a analyzer (configurable) in the
- * analyzer_manager tag in cocoon.xconf file</li>
- * <li>IndexManager: you can setup a index in a the /WEB-INF/index.xml (default
- * location , but you can specify the location in the IndexManager component
- * configuration in cocoon.xconf file)</li>
- * <li>Indexer (2 implementations: default (with update optimization) and
- * parallel implementation for multiple cpu)</li>
+ * <li>AnalyzerManager: you can setup a analyzer (configurable) in the analyzer_manager tag in
+ * cocoon.xconf file</li>
+ * <li>IndexManager: you can setup a index in a the /WEB-INF/index.xml (default location , but you
+ * can specify the location in the IndexManager component configuration in cocoon.xconf file)</li>
+ * <li>Indexer (2 implementations: default (with update optimization) and parallel implementation
+ * for multiple cpu)</li>
* </p>
* <p>
* <strong>Example of input source: </strong>
@@ -90,20 +85,18 @@
* <li>to Index <br>
* <lucene:index xmlns:lucene="http://apache.org/cocoon/lucene/1.0"
* <br/>indexid="myindex" <br>
- * clear="true" (optinal attribute: clear index) <br/>merge-factor="100">
- * (optinal attribute: see lucene doc) <br>
- * <br/><lucene:document uid="http://myhost/myfile1.data"> <br/>
- * <lucene:field name="tile" > sqdqsdq </lucene:field> <br>
- * <lucene:field name="description" > a text bla bal blalael
- * balbal</lucene:field> <br>
- * <lucene:field name="date" >10/12/2002</lucene:field> <br/>
- * </lucene:document> <br>
+ * clear="true" (optinal attribute: clear index) <br/>merge-factor="100"> (optinal attribute: see
+ * lucene doc) <br>
+ * <br/><lucene:document uid="http://myhost/myfile1.data"> <br/> <lucene:field name="tile"
+ * > sqdqsdq </lucene:field> <br>
+ * <lucene:field name="description" > a text bla bal blalael balbal</lucene:field> <br>
+ * <lucene:field name="date" >10/12/2002</lucene:field> <br/> </lucene:document> <br>
*
* <p>
* <lucene:document uid="http://myhost/myfile2.data" > <br>
* <lucene:field name="author" boost="2" >Mr Author </lucene:field>
- * <em>(boost the field for the search (see Lucene documentation))</em> <br/>
- * <lucene:field name="langage" >french</lucene:field> <br>
+ * <em>(boost the field for the search (see Lucene documentation))</em> <br/> <lucene:field
+ * name="langage" >french</lucene:field> <br>
* </lucene:document> <br>
* < /lucene:index>
* </p>
@@ -121,17 +114,15 @@
* <strong>Example of Output Source </strong>
* </p>
* <p>
- * <page xmlns:lucene="http://apache.org/cocoon/lucene/1.0">
- * <br>
+ * <page xmlns:lucene="http://apache.org/cocoon/lucene/1.0"> <br>
* < lucene:index > <br>
- * <lucene:document uid="http://myhost/myfile1.data"/> <br/>
- * <lucene:document uid="http://myhost/myfile2.data"/> <br/>
- * </lucene:index>
+ * <lucene:document uid="http://myhost/myfile1.data"/> <br/> <lucene:document
+ * uid="http://myhost/myfile2.data"/> <br/> </lucene:index>
* </p>
* <p>
- * <lucene:delete > <lucene:document
- * uid="http://myhost/myfile1.data"/> <br/><lucene:document
- * uid="EODOED-EFE"/> <br/></lucene:delete ></br></li>
+ * <lucene:delete > <lucene:document uid="http://myhost/myfile1.data"/>
+ * <br/><lucene:document uid="EODOED-EFE"/> <br/></lucene:delete ></br>
+ * </li>
* </ul>
*
* @author Nicolas Maisonneuve
@@ -167,14 +158,14 @@
public static final String LUCENE_INDEXING_CREATE_ATTRIBUTE = "clear";
/**
- * Optional attribute: Analyzer identity: see analyzerManager Component
- * (default: the analyer of the index declared in the index definition)
+ * Optional attribute: Analyzer identity: see analyzerManager Component (default: the analyer of
+ * the index declared in the index definition)
*/
public static final String LUCENE_INDEXING_ANALYZER_ATTRIBUTE = "analyzer";
/**
- * Optional attribute: MergeFactor number (default 10): improve the indexing
- * speed for large indexing (see Lucene docs)
+ * Optional attribute: MergeFactor number (default 10): improve the indexing speed for large
+ * indexing (see Lucene docs)
*/
public static final String LUCENE_INDEXING_MERGE_FACTOR_ATTRIBUTE = "mergefactor";
@@ -372,9 +363,10 @@
if (LUCENE_FIELD_ELEMENT.equals(localName)) {
final String namespace = atts.getValue(NAMESPACE_ATTRIBUTE);
final String name = atts.getValue(LUCENE_FIELD_NAME_ATTRIBUTE);
-
+
// set the field name
- this.fieldname = namespace == null ? name : getMetaDataFieldName(namespace, name);
+ this.fieldname = namespace == null ? name : getMetaDataFieldName(namespace,
+ name);
if (this.fieldname == null || this.fieldname.equals("")) {
handleError("<lucene:field> element must contain name attribute");
}
@@ -404,7 +396,8 @@
protected String getMetaDataFieldName(String namespace, String elementName) {
if (this.registry == null) {
try {
- this.registry = (MetaDataFieldRegistry) this.manager.lookup(MetaDataFieldRegistry.ROLE);
+ this.registry = (MetaDataFieldRegistry) this.manager
+ .lookup(MetaDataFieldRegistry.ROLE);
} catch (ServiceException e) {
throw new RuntimeException(e);
}
@@ -492,7 +485,7 @@
try {
Field f = index.createField(fieldname, fieldvalue.toString());
f.setBoost(fieldboost);
-
+
// add field to the lucene document
bodyDocument.add(f);
processing = IN_DOCUMENT_PROCESS;
@@ -505,7 +498,8 @@
break;
default:
- handleError("Inappropriate element '" + localName + "' in state '" + processing + "'!");
+ handleError("Inappropriate element '" + localName + "' in state '" + processing
+ + "'!");
}
} else {
super.endElement(namespaceURI, localName, qName);
@@ -514,7 +508,8 @@
protected void handleUnexpectedClosingElement(String localName, String expectedLocalName)
throws SAXException {
- handleError("</lucene:" + expectedLocalName + "> was expected instead of </lucene:" + localName + ">!");
+ handleError("</lucene:" + expectedLocalName + "> was expected instead of </lucene:"
+ + localName + ">!");
}
protected boolean canIndex() {
@@ -549,10 +544,10 @@
setIndexer(indexId);
if (canIndex()) {
-
+
String analyzerId = atts.getValue(LUCENE_URI, LUCENE_INDEXING_ANALYZER_ATTRIBUTE);
setAnalyzer(analyzerId);
-
+
// set clear mode
boolean new_index = (clear != null && clear.toLowerCase().equals("true")) ? true
: false;
@@ -585,8 +580,7 @@
index = indexManager.getIndex(indexId);
if (index == null) {
handleError("index [" + indexId + "] no found in the index definition");
- }
- else {
+ } else {
indexer = index.getIndexer();
if (indexer == null) {
handleError("Index [" + indexId + "] did return a null indexer.");
@@ -621,13 +615,12 @@
handleError(ex1);
} catch (ConfigurationException ex2) {
handleError("error setting analyzer for index [" + this.index.getID() + "]", ex2);
- }
- finally {
+ } finally {
manager.release(analyzerManager);
}
}
}
-
+
void handleError(String message, Exception ex) throws SAXException {
handleError(message + ": " + getExceptionMessage(ex));
}
@@ -656,11 +649,9 @@
closeIndexer();
try {
- Session session = RepositoryUtil.getSession(this.manager, this.request);
User user = getErrorMessageRecipient();
Address sender = new UserAddress(user);
- UserManager userManager = (UserManager) user.getItemManager();
- User recipient = userManager.getUser(this.notificationRecipient);
+ User recipient = getUserManager().getUser(this.notificationRecipient);
Address[] recipients = { new UserAddress(recipient) };
Text subject = new Text("indexing-failed-subject", true);
@@ -680,48 +671,54 @@
}
/*
- * if (ex == null) { // this.getLogger().error(msg); throw new
- * SAXException(msg); } else { // this.getLogger().error(msg, ex); throw
- * new SAXException(msg, ex); }
+ * if (ex == null) { // this.getLogger().error(msg); throw new SAXException(msg); } else {
+ * // this.getLogger().error(msg, ex); throw new SAXException(msg, ex); }
*/
}
-
- protected User getErrorMessageRecipient() {
- ServiceSelector selector = null;
- AccessControllerResolver acResolver = null;
- AccessController accessController = null;
- try {
- selector = (ServiceSelector) this.manager.lookup(AccessControllerResolver.ROLE
- + "Selector");
- acResolver = (AccessControllerResolver) selector
- .select(AccessControllerResolver.DEFAULT_RESOLVER);
- String webappUrl = ServletHelper.getWebappURI(this.request);
- accessController = acResolver.resolveAccessController(webappUrl);
-
- UserManager userManager = accessController.getAccreditableManager().getUserManager();
- Identity identity = (Identity) this.request.getSession().getAttribute(Identity.class.getName());
- String userId = identity.getUserReference().getId();
- User user = userManager.getUser(userId);
- if (user == null) {
- throw new RuntimeException("The user '" + userId + "' doesn't exist.");
- }
- return user;
- } catch (Exception e) {
- throw new RuntimeException(e);
- } finally {
- if (selector != null) {
- if (acResolver != null) {
- if (accessController != null) {
- acResolver.release(accessController);
+ private UserManager userManager;
+
+ protected UserManager getUserManager() {
+ if (this.userManager == null) {
+ AccessController accessController = null;
+ ServiceSelector selector = null;
+ AccessControllerResolver resolver = null;
+ try {
+ selector = (ServiceSelector) this.manager.lookup(AccessControllerResolver.ROLE
+ + "Selector");
+ resolver = (AccessControllerResolver) selector
+ .select(AccessControllerResolver.DEFAULT_RESOLVER);
+
+ String url = ServletHelper.getWebappURI(this.request);
+ accessController = resolver.resolveAccessController(url);
+ this.userManager = accessController.getAccreditableManager().getUserManager();
+ } catch (Exception e) {
+ throw new RuntimeException("Could not obtain user manager: ", e);
+ } finally {
+ if (selector != null) {
+ if (resolver != null) {
+ if (accessController != null) {
+ resolver.release(accessController);
+ }
+ selector.release(resolver);
}
- selector.release(acResolver);
+ this.manager.release(selector);
}
- this.manager.release(selector);
}
}
+ return this.userManager;
}
+ protected User getErrorMessageRecipient() {
+ Identity identity = (Identity) this.request.getSession().getAttribute(
+ Identity.class.getName());
+ String userId = identity.getUserReference().getId();
+ User user = getUserManager().getUser(userId);
+ if (user == null) {
+ throw new RuntimeException("The user '" + userId + "' doesn't exist.");
+ }
+ return user;
+ }
/**
* Close the indexer
Modified: lenya/sandbox/access_control_redesign/src/modules/notification/java/src/org/apache/lenya/inbox/xml/XmlSourceInbox.java
URL: http://svn.apache.org/viewvc/lenya/sandbox/access_control_redesign/src/modules/notification/java/src/org/apache/lenya/inbox/xml/XmlSourceInbox.java?rev=719147&r1=719146&r2=719147&view=diff
==============================================================================
--- lenya/sandbox/access_control_redesign/src/modules/notification/java/src/org/apache/lenya/inbox/xml/XmlSourceInbox.java (original)
+++ lenya/sandbox/access_control_redesign/src/modules/notification/java/src/org/apache/lenya/inbox/xml/XmlSourceInbox.java Wed Nov 19 17:10:15 2008
@@ -23,11 +23,17 @@
import javax.xml.parsers.ParserConfigurationException;
import org.apache.avalon.framework.service.ServiceManager;
+import org.apache.avalon.framework.service.ServiceSelector;
import org.apache.axis.components.uuid.UUIDGen;
import org.apache.axis.components.uuid.UUIDGenFactory;
+import org.apache.cocoon.environment.Request;
import org.apache.lenya.ac.AccessControlException;
+import org.apache.lenya.ac.AccessController;
+import org.apache.lenya.ac.AccessControllerResolver;
+import org.apache.lenya.ac.AccreditableManager;
import org.apache.lenya.ac.Group;
import org.apache.lenya.ac.User;
+import org.apache.lenya.cms.cocoon.components.context.ContextUtility;
import org.apache.lenya.cms.cocoon.source.SourceUtil;
import org.apache.lenya.inbox.Inbox;
import org.apache.lenya.inbox.InboxMessage;
@@ -38,6 +44,7 @@
import org.apache.lenya.notification.Text;
import org.apache.lenya.notification.UserAddress;
import org.apache.lenya.util.Assert;
+import org.apache.lenya.util.ServletHelper;
import org.apache.lenya.xml.DocumentHelper;
import org.apache.lenya.xml.NamespaceHelper;
import org.w3c.dom.Document;
@@ -50,6 +57,7 @@
private ServiceManager manager;
private User user;
+ private AccreditableManager accrMgr;
/**
* @param manager The service manager.
@@ -60,6 +68,45 @@
this.user = user;
}
+ protected AccreditableManager getAccreditableManager() {
+ if (this.accrMgr == null) {
+ AccessController accessController = null;
+ ServiceSelector selector = null;
+ AccessControllerResolver resolver = null;
+ ContextUtility context = null;
+
+ try {
+ selector = (ServiceSelector) this.manager.lookup(AccessControllerResolver.ROLE
+ + "Selector");
+ resolver = (AccessControllerResolver) selector
+ .select(AccessControllerResolver.DEFAULT_RESOLVER);
+ context = (ContextUtility) this.manager.lookup(ContextUtility.ROLE);
+ Request request = context.getRequest();
+ String url = ServletHelper.getWebappURI(request);
+ accessController = resolver.resolveAccessController(url);
+ this.accrMgr = accessController.getAccreditableManager();
+
+ } catch (Exception e) {
+ throw new RuntimeException("Could not obtain accreditable manager: ", e);
+ } finally {
+ if (selector != null) {
+ if (resolver != null) {
+ if (accessController != null) {
+ resolver.release(accessController);
+ }
+ selector.release(resolver);
+ }
+ this.manager.release(selector);
+ }
+ if (context != null) {
+ this.manager.release(context);
+ }
+ }
+
+ }
+ return this.accrMgr;
+ }
+
public synchronized InboxMessage add(Message message) {
InboxMessage msg = new XmlSourceInboxMessage(this, generateId(), message, false);
messages().add(msg);
@@ -110,15 +157,14 @@
Element[] messageElements = helper.getChildren(xml.getDocumentElement(), "message");
for (int i = 0; i < messageElements.length; i++) {
-
+
String id;
if (messageElements[i].hasAttribute("id")) {
id = messageElements[i].getAttribute("id");
- }
- else {
+ } else {
id = generateId();
}
-
+
String senderId = messageElements[i].getAttribute("sender");
Address sender = new UserAddress(getUser(senderId));
@@ -128,8 +174,7 @@
Element[] userElements = helper.getChildren(recipientElement, "user");
Element[] groupElements = helper.getChildren(recipientElement, "group");
- Address[] recipients = new Address[userElements.length
- + groupElements.length];
+ Address[] recipients = new Address[userElements.length + groupElements.length];
for (int u = 0; u < userElements.length; u++) {
String userId = userElements[u].getAttribute("id");
@@ -159,15 +204,15 @@
subjectParams[p] = DocumentHelper
.getSimpleElementText(subjectParamElements[p]);
}
-
+
String readString = "false";
if (messageElements[i].hasAttribute("read")) {
readString = messageElements[i].getAttribute("read");
}
boolean read = Boolean.valueOf(readString).booleanValue();
- Message message = new Message(new Text(subject, subjectParams), new Text(body, bodyParams), sender,
- recipients);
+ Message message = new Message(new Text(subject, subjectParams), new Text(body,
+ bodyParams), sender, recipients);
InboxMessage msg = new XmlSourceInboxMessage(this, id, message, read);
this.messages.add(msg);
}
@@ -179,18 +224,18 @@
}
protected User getUser(String id) throws AccessControlException {
- return this.user.getAccreditableManager().getUserManager().getUser(id);
+ return getAccreditableManager().getUserManager().getUser(id);
}
protected Group getGroup(String id) throws AccessControlException {
- return this.user.getAccreditableManager().getGroupManager().getGroup(id);
+ return getAccreditableManager().getGroupManager().getGroup(id);
}
private String sourceUri;
protected String getSourceUri() {
if (this.sourceUri == null) {
- String configUri = this.user.getAccreditableManager().getConfigurationCollectionUri();
+ String configUri = getAccreditableManager().getConfigurationCollectionUri();
if (configUri.endsWith("/")) {
configUri = configUri.substring(0, configUri.length() - 1);
}
@@ -221,9 +266,9 @@
InboxMessage[] messages = getMessages();
for (int i = 0; i < messages.length; i++) {
-
+
Message message = messages[i].getMessage();
-
+
Element messageElement = helper.createElement("message");
helper.getDocument().getDocumentElement().appendChild(messageElement);
Address sender = message.getSenderAddress();
@@ -247,7 +292,8 @@
Element subjectElement = helper.createElement("subject");
messageElement.appendChild(subjectElement);
- Element subjectTextElement = helper.createElement("text", message.getSubjectText().getText());
+ Element subjectTextElement = helper.createElement("text", message.getSubjectText()
+ .getText());
subjectElement.appendChild(subjectTextElement);
Text[] subjectParams = message.getSubjectText().getParameters();
for (int p = 0; p < subjectParams.length; p++) {
@@ -264,7 +310,7 @@
Element paramElement = helper.createElement("param", bodyParams[p].getText());
bodyElement.appendChild(paramElement);
}
-
+
messageElement.setAttribute("read", Boolean.toString(messages[i].isMarkedAsRead()));
messageElement.setAttribute("id", messages[i].getId());
}
Modified: lenya/sandbox/access_control_redesign/src/webapp/lenya/config/sitemap/pipelines.xmap
URL: http://svn.apache.org/viewvc/lenya/sandbox/access_control_redesign/src/webapp/lenya/config/sitemap/pipelines.xmap?rev=719147&r1=719146&r2=719147&view=diff
==============================================================================
--- lenya/sandbox/access_control_redesign/src/webapp/lenya/config/sitemap/pipelines.xmap (original)
+++ lenya/sandbox/access_control_redesign/src/webapp/lenya/config/sitemap/pipelines.xmap Wed Nov 19 17:10:15 2008
@@ -97,7 +97,7 @@
<map:act type="authorizer">
<map:mount uri-prefix="" src="global-sitemap.xmap" check-reload="true" reload-method="synchron"/>
</map:act>
- <map:redirect-to session="true" uri="{proxy:/{1}}?lenya.usecase=ac.login&referrerQueryString={url-encode:{request:queryString}}"/>
+ <map:redirect-to session="true" uri="{proxy:{access-control:login-uri}}&referrerQueryString={url-encode:{request:queryString}}"/>
</map:match>
</map:pipeline>
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.