ICEfaces
  1. ICEfaces
  2. ICE-5610

ICEfaces 2.0 PushRenderer cross-user group management

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-Alpha2
    • Fix Version/s: 3.2
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      ICEfaces 2.0

      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

        Hide
        Ted Goddard added a comment -

        In the PhotoShare application we add each user to a group under the user's name by default.

        Show
        Ted Goddard added a comment - In the PhotoShare application we add each user to a group under the user's name by default.
        Hide
        Jack Van Ooststroom added a comment - - edited

        Sending core/src/main/java/org/icefaces/application/PushRenderer.java
        Transmitting file data .
        Committed revision 31408.

        Show
        Jack Van Ooststroom added a comment - - edited Sending core/src/main/java/org/icefaces/application/PushRenderer.java Transmitting file data . Committed revision 31408.
        Hide
        Jack Van Ooststroom added a comment - - edited

        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.

        Show
        Jack Van Ooststroom added a comment - - edited 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.

          People

          • Assignee:
            Jack Van Ooststroom
            Reporter:
            Ted Goddard
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: