/**
 * This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. 
 * If a copy of the MPL was not distributed with this file, You can obtain one at 
 * http://mozilla.org/MPL/2.0/.
 * 
 * This Source Code Form is also subject to the terms of the Health-Related Additional
 * Disclaimer of Warranty and Limitation of Liability available at
 * http://www.carewebframework.org/licensing/disclaimer.
 */
package org.carewebframework.api.event;

import java.util.Map;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;

/**
 * Returns information about a global event publisher.
 */
@JsonDeserialize(as = PublisherInfo.class)
public interface IPublisherInfo {
    
    /**
     * Domain id of the user.
     * 
     * @return User's domain id.
     */
    String getUserId();
    
    /**
     * Full name of the user.
     * 
     * @return User's full name.
     */
    String getUserName();
    
    /**
     * Application name.
     * 
     * @return Application name.
     */
    String getAppName();
    
    /**
     * Unique id of the publisher's endpoint.
     * 
     * @return Endpoint id.
     */
    String getEndpointId();
    
    /**
     * Unique id of the node within the messaging infrastructure.
     * 
     * @return The node id.
     */
    String getNodeId();
    
    /**
     * Unique id of the node in a multi-node messaging implementation.
     * 
     * @return Node id.
     */
    Map<String, String> getAttributes();
    
}

@@ -1214,43 +1214,48 @@
 ode 
-within the messaging infrastructure
+in a multi-node messaging implementation
 .%0A  
@@ -1344,70 +1344,52 @@
   * 
-Unique id of the node in a multi-node messaging implementation
+Map of additional message routing attributes
 .%0A  
@@ -1413,15 +1413,21 @@
 urn 
-Node id
+Attribute map
 .%0A  

Correct JavaDoc.