Inheritance: Microsoft.WindowsAzure.Storage.Table.TableEntity
 public Event map(Message message)
 {
     return new Event {
         eventType = EventType.NEW_MESSAGE,
         eventId = message.RowKey,
         eventEndpoint = messageEndpoint + message.RowKey};
 }
 // POST: api/MessageInterchange
 public void Post(Message message)
 {
     messageService.storeAndEmitMessage(message);
 }
 private void emitMessage(Message message)
 {
     FaghelgWebsocketHandler.broadcastMessage(
         new MessageToEventMapper().map(message));
 }
 private void storeMessage(Message message)
 {
     message.setPartitionKey();
     TableOperation insertOp = TableOperation.Insert(message);
     table.Execute(insertOp);
 }
 private void broadcastMessage(Message message)
 {
     mobileBackendApiService.pushMessage(message);
 }
 public void storeEmitAndBroadcastMessage(Message message)
 {
     broadcastMessage(message);
     storeMessage(message);
     emitMessage(message);
 }
 public void storeAndEmitMessage(Message message)
 {
     emitMessage(message);
     storeMessage(message);
 }
 // POST: api/Message
 public void Post(Message messsage)
 {
     messageService.storeEmitAndBroadcastMessage(messsage);
 }
 public void pushMessage(Message message)
 {
     //When a message arrives at the rest endpoint from a client, push it to the mobile backend
 }