1 /* 2 * Copyright (C) 2013 4th Line GmbH, Switzerland 3 * 4 * The contents of this file are subject to the terms of either the GNU 5 * Lesser General Public License Version 2 or later ("LGPL") or the 6 * Common Development and Distribution License Version 1 or later 7 * ("CDDL") (collectively, the "License"). You may not use this file 8 * except in compliance with the License. See LICENSE.txt for more 9 * information. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 14 */ 15 16 package org.fourthline.cling.support.lastchange; 17 18 import org.fourthline.cling.model.types.UnsignedIntegerFourBytes; 19 20 /** 21 * Any service implementation using the "LastChange" mechanism. 22 * <p> 23 * Required by the {@link LastChangeAwareServiceManager} to handle state readouts 24 * of "LastChange"-using services for initial events GENA subscriptions. If you 25 * want a specification compliant <em>AVTransport</em> or <em>RenderingControl</em> 26 * UPnP service, your service implementation should implement this interface as well. 27 * </p> 28 * 29 * @author Christian Bauer 30 */ 31 public interface LastChangeDelegator { 32 33 public LastChange getLastChange(); 34 35 public void appendCurrentState(LastChange lc, UnsignedIntegerFourBytes instanceId) throws Exception; 36 37 public abstract UnsignedIntegerFourBytes[] getCurrentInstanceIds(); 38 39 40 }