001/**
002 * Copyright (c) 2014-2015 Digi International Inc.,
003 * All rights not expressly granted are reserved.
004 *
005 * This Source Code Form is subject to the terms of the Mozilla Public
006 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
007 * You can obtain one at http://mozilla.org/MPL/2.0/.
008 *
009 * Digi International Inc. 11001 Bren Road East, Minnetonka, MN 55343
010 * =======================================================================
011 */
012package com.digi.xbee.api.listeners;
013
014import com.digi.xbee.api.models.ExplicitXBeeMessage;
015
016/**
017 * This interface defines the required methods that should be implemented to 
018 * behave as an explicit data listener and be notified when new explicit data 
019 * is received from a remote XBee device of the network.
020 */
021public interface IExplicitDataReceiveListener {
022
023        /**
024         * Called when explicit data is received from a remote node of the network.
025         * 
026         * @param explicitXBeeMessage An {@code ExplicitXBeeMessage} object 
027         *                            containing the data, the 
028         *                            {@code RemoteXBeeDevice} that sent the data, 
029         *                            a flag indicating whether the data was 
030         *                            sent via broadcast or not and the application 
031         *                            layer fields (source endpoint, destination 
032         *                            endpoint, cluster ID and profile ID).
033         * 
034         * @see com.digi.xbee.api.models.ExplicitXBeeMessage
035         * @see com.digi.xbee.api.RemoteXBeeDevice
036         */
037        public void explicitDataReceived(ExplicitXBeeMessage explicitXBeeMessage);
038}