/** * Copyright (c) 2014-2017 by the respective copyright holders. * 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 */ package org.eclipse.smarthome.io.transport.upnp; /** * The {@link UpnpIOParticipant} is an interface that needs to * be implemented by classes that wants to participate in * UPNP communication * * @author Karel Goderis - Initial contribution */ public interface UpnpIOParticipant { /** Get the UDN of the participant **/ public String getUDN(); /** Called when the UPNP IO service receives a {variable,value} tuple for the given UPNP service **/ public void onValueReceived(String variable, String value, String service); /** * Called to notify if a GENA subscription succeeded or failed. * * @param service - the UPnP service subscribed * @param succeeded - true if the subscription succeeded; false if failed */ public void onServiceSubscribed(String service, boolean succeeded); /** * Called when the UPNP IO service is unable to poll the UDN of the participant, given that * a addStatusListener is registered. * * @param status - false, if the poll fails when the polling was previously successful; true if the poll succeeds * when the polling was previously failing */ public void onStatusChanged(boolean status); }