Details
Description
Consider the case where
an administrator can put a given user into a specified chat room, and that
event should be pushed to all users in the room.
The cleanest way to solve this is to add the user to the room group and then
push to that group. The problem is that the user being added to the group
cannot call addCurrentSession(), because the administrator is performing the
add operation, not the user.
Of course, you can solve this by giving the admin user access to the
PersistentFacesState of the user being added, but this API is not present
in ICEfaces 2.0.
For PushRenderer we could add the following PushContext compatible APIs:
public static String PushRenderer.getCurrentSessionPushId()
public static String PushRenderer.getCurrentViewPushId()
Activity
| Status | Resolved [ 5 ] | Closed [ 6 ] |
| Assignee Priority | P1 [ 10010 ] |
| Status | Open [ 1 ] | Resolved [ 5 ] |
| Resolution | Fixed [ 1 ] |
| Assignee Priority | P3 [ 10012 ] | P1 [ 10010 ] |
| Assignee | Ted Goddard [ ted.goddard ] | Jack Van Ooststroom [ jack.van.ooststroom ] |
| Repository | Revision | Date | User | Message |
| ICEsoft Public SVN Repository | #31408 | Thu Oct 11 06:52:43 MDT 2012 | jack.van.ooststroom | Fixed JIRA |
| Files Changed | ||||
MODIFY
/icefaces3/trunk/icefaces/core/src/main/java/org/icefaces/application/PushRenderer.java
|
| Fix Version/s | 3.2 [ 10338 ] | |
| Fix Version/s | 3.1 [ 10312 ] |
| Fix Version/s | 3.1 [ 10312 ] | |
| Fix Version/s | 3.0 [ 10241 ] |
| Assignee | Mircea Toma [ mircea.toma ] | Ted Goddard [ ted.goddard ] |
| Salesforce Case | [] | |
| Assignee Priority | P3 |
| Salesforce Case | [] | |
| Fix Version/s | 2.1 [ 10241 ] |
| Salesforce Case | [] | |
| Fix Version/s | 2.0-Beta [ 10231 ] |
| Salesforce Case | [] | |
| Assignee | Deryk Sinotte [ deryk.sinotte ] | Mircea Toma [ mircea.toma ] |
| Field | Original Value | New Value |
|---|---|---|
| Salesforce Case | [] | |
| Component/s | Framework [ 10013 ] | |
| Fix Version/s | 2.0-Beta [ 10231 ] | |
| Affects | [Documentation (User Guide, Ref. Guide, etc.)] | |
| Assignee | Deryk Sinotte [ deryk.sinotte ] |

After discussing with Ted about the requirements of this JIRA, I added the following public methods to the PushRenderer API:
public static synchronized Set<String> getCurrentSessionPushIDSet()
public static synchronized String getCurrentViewPushID()
public static synchronized PushContext getPushContext()
Marking this one as FIXED.