History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: PENROSE-206
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Endi S. Dewata
Reporter: Jim Yang
Votes: 0
Watchers: 1
Operations

Clone this issue
Create sub-task
If you were logged in you would be able to see more operations.
Penrose

PenroseSession.java ignores any changes to data the event handler

Created: 27/Feb/07 12:15 PM   Updated: 23/Mar/07 07:35 PM
Component/s: Engine
Affects Version/s: Penrose-1.1.3
Fix Version/s: Penrose-1.2

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown
File Attachments: 1. Java Source File PenroseSession.java (13 kb)



 Description  « Hide
PenroseSession.java notifies modules of pending events, but then ignores any
changes to data the event handler makes in every case except search. For
example, take the following line from the bind method:

public int bind(String dn, String password) throws Exception {
       ...
       int rc = handler.bind(this, dn, password);
       ...
   }

This line actually performs the bind, but for my use, must be updated to use
the values contained within the beforeBindEvent object, allowing them to be
changed within the beforeBind event handler. The updated line contains:

int rc = handler.bind(this, beforeBindEvent.getDn(),
beforeBindEvent.getPassword());

This is similar to the code that is already implemented in the search event
handler. Similar changes are required to each of the other event handlers; I
have attached an updated class file reflecting these changes. Since this
change can be made without any impact on existing code, and greatly enhances
module capabilities (and enables the kind of module I have written), I would
like it to be considered as a Penrose 1.2 enhancement.

 All   Comments   Work Log   Change History      Sort Order:
Jim Yang - [27/Feb/07 12:15 PM ]
Contribution from JWilson

Endi S. Dewata - [20/Mar/07 02:52 PM ]
All parameters are now stored in the request object which is modifiable by custom modules.