View Javadoc

1   /***
2    * Java DAB EPG API - Serialize/Deserialize To/From POJOs to XML/Binary as per
3    * ETSI specifications TS 102 818 (XML Specification for DAB EPG) and TS 102 
4    * 371 (Transportation and Binary Encoding Specification for EPG).
5    * 
6    * Copyright (C) 2007 GCap Media PLC
7    *
8    * This library is free software; you can redistribute it and/or
9    * modify it under the terms of the GNU Lesser General Public
10   * License as published by the Free Software Foundation; either
11   * version 2.1 of the License, or (at your option) any later version.
12   *
13   * This library is distributed in the hope that it will be useful,
14   * but WITHOUT ANY WARRANTY; without even the implied warranty of
15   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16   * Lesser General Public License for more details.
17   *
18   * You should have received a copy of the GNU Lesser General Public
19   * License along with this library; if not, write to the Free Software
20   * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
21   */
22  package com.gcapmedia.dab.epg;
23  
24  import java.io.Serializable;
25  
26  /***
27   * Interface for a class wishing to participate in the marshalling and
28   * unmarshalling of the stack.
29   */
30  public interface Marshaller extends Serializable {
31  
32  	/***
33  	 * Marshall a single instance of the EPG
34  	 * @throws MarshallException 
35  	 */
36  	public byte[] marshall(Epg epg) throws MarshallException;
37  	
38  	/***
39  	 * Unmarshall a single marshalled instance of the EPG
40  	 */
41  	public Epg unmarshall(byte[] bytes);
42  	
43  }