All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.khubla.pragmatach.plugin.cluster.multicast.MulticastMessage Maven / Gradle / Ivy

package com.khubla.pragmatach.plugin.cluster.multicast;

import com.khubla.pragmatach.framework.api.PragmatachException;
import com.khubla.pragmatach.plugin.cluster.serialization.GenericJSONSerializer;

/**
 * @author tome
 */
public class MulticastMessage {
   /**
    * types of message
    */
   public final static int MESSAGETYPE_HELLO = 1;
   public final static int MESSAGETYPE_GBYE = 2;
   public final static int MESSAGETYPE_SOLICITUPDATE = 3;
   public final static int MESSAGETYPE_UPDATE = 4;

   /**
    * from string
    */
   public static MulticastMessage deserialize(byte[] messageBody) throws PragmatachException {
      final MulticastMessage multicastMessage = new MulticastMessage();
      return new GenericJSONSerializer().deserialize(multicastMessage, new String(messageBody));
   }

   /**
    * to String
    */
   public static byte[] serialize(MulticastMessage multicastMessage) throws PragmatachException {
      return new GenericJSONSerializer().serialize(multicastMessage).getBytes();
   }

   /**
    * type
    */
   private int messageType;
   /**
    * content
    */
   private String messageContent;

   /**
    * ctor
    */
   public MulticastMessage() {
   }

   /**
    * ctor
    */
   public MulticastMessage(int messageType, String messageContent) {
      this.messageContent = messageContent;
      this.messageType = messageType;
   }

   public String getMessageContent() {
      return messageContent;
   }

   public int getMessageType() {
      return messageType;
   }

   public void setMessageContent(String messageContent) {
      this.messageContent = messageContent;
   }

   public void setMessageType(int messageType) {
      this.messageType = messageType;
   }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy