1 /* 2 * Copyright (C) 2007 ETH Zurich 3 * 4 * This file is part of Fosstrak (www.fosstrak.org). 5 * 6 * Fosstrak is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License version 2.1, as published by the Free Software Foundation. 9 * 10 * Fosstrak is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with Fosstrak; if not, write to the Free 17 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 18 * Boston, MA 02110-1301 USA 19 */ 20 21 package org.fosstrak.epcis.repository; 22 23 import java.util.List; 24 25 import org.fosstrak.epcis.repository.model.EPCISEvent; 26 27 /** 28 * The EPCIS Capture Interface defines the delivery of EPCIS events from EPCIS 29 * Capturing Applications to an EPCIS Repository. The interface contains only a 30 * single method, <code>capture</code>, which takes a single argument and 31 * returns no results. Implementations of the EPCIS Capture Interface SHALL 32 * accept each element of the argument list that is a valid 33 * <code>EPCISEvent</code> or subtype thereof according to the EPCIS 34 * specification. Implementations MAY accept other types of events through 35 * vendor extension. 36 */ 37 public interface EpcisCaptureInterface { 38 39 /** 40 * The <code>capture</code> operation records one or more EPCIS events, of 41 * any type. 42 * 43 * @param events 44 * The event(s) to capture. All relevant information such as the 45 * event time, EPCs, etc., are contained within each event. 46 * Exception: the <code>recordTime</code> MAY be omitted. 47 * Whether the <code>recordTime</code> is omitted or not in the 48 * input, following the capture operation the 49 * <code>recordTime</code> of the event as recorded by the 50 * EPCIS Repository or EPCIS Accessing Application is the time of 51 * capture. 52 */ 53 public void capture(List<EPCISEvent> events); 54 }