/*******************************************************************************
 * Copyright (c) 2011, 2017 Eurotech and/or its affiliates and others
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     Eurotech - initial API and implementation
 *     Red Hat Inc
 *******************************************************************************/
package org.eclipse.kapua.service.device.call.message;

import java.util.Date;

import org.eclipse.kapua.message.Message;

/**
 * Device message definition.
 * 
 * @param <C> channel type
 * @param <P> payload type
 * 
 * @since 1.0
 * 
 */
public interface DeviceMessage<C extends DeviceChannel, P extends DevicePayload> extends Message<C,P>
{

    /**
     * Get the channel associated to the message
     * 
     * @return
     */
    public C getChannel();

    /**
     * Get the payload associated to the message
     * 
     * @return
     */
    public P getPayload();

    /**
     * Get the message timestamp
     * 
     * @return
     */
    public Date getTimestamp();
}

/*******************************************************************************
 * Copyright (c) 2011, 2016 Eurotech and/or its affiliates and others
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     Eurotech - initial API and implementation
 *
 *******************************************************************************/
package org.eclipse.kapua.service.device.call.message;

import java.util.Date;

import org.eclipse.kapua.message.Message;

/**
 * Device message definition.
 * 
 * @param <C> channel type
 * @param <P> payload type
 * 
 * @since 1.0
 * 
 */
public interface DeviceMessage<C extends DeviceChannel, P extends DevicePayload> extends Message
{

    /**
     * Get the channel associated to the message
     * 
     * @return
     */
    public C getChannel();

    /**
     * Get the payload associated to the message
     * 
     * @return
     */
    public P getPayload();

    /**
     * Get the message timestamp
     * 
     * @return
     */
    public Date getTimestamp();
}

--- 
+++ 
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2011, 2016 Eurotech and/or its affiliates and others
+ * Copyright (c) 2011, 2017 Eurotech and/or its affiliates and others
  *
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -8,7 +8,7 @@
  *
  * Contributors:
  *     Eurotech - initial API and implementation
- *
+ *     Red Hat Inc
  *******************************************************************************/
 package org.eclipse.kapua.service.device.call.message;
 
@@ -25,7 +25,7 @@
  * @since 1.0
  * 
  */
-public interface DeviceMessage<C extends DeviceChannel, P extends DevicePayload> extends Message
+public interface DeviceMessage<C extends DeviceChannel, P extends DevicePayload> extends Message<C,P>
 {
 
     /**
Clear warning by using correct types

Signed-off-by: Jens Reimann <d1bf62d29e711fdf0a5795916341a7b53d204e2a@redhat.com>