View Javadoc
1   /*
2    * Licensed to The Apereo Foundation under one or more contributor license
3    * agreements. See the NOTICE file distributed with this work for additional
4    * information regarding copyright ownership.
5    *
6    *
7    * The Apereo Foundation licenses this file to you under the Educational
8    * Community License, Version 2.0 (the "License"); you may not use this file
9    * except in compliance with the License. You may obtain a copy of the License
10   * at:
11   *
12   *   http://opensource.org/licenses/ecl2.txt
13   *
14   * Unless required by applicable law or agreed to in writing, software
15   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
16   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
17   * License for the specific language governing permissions and limitations under
18   * the License.
19   *
20   */
21  
22  package org.opencastproject.smil.entity.api;
23  
24  import org.opencastproject.smil.api.SmilException;
25  
26  import org.xml.sax.SAXException;
27  
28  import java.net.MalformedURLException;
29  
30  import javax.xml.bind.JAXBException;
31  
32  /**
33   * Represent a SMIL document.
34   */
35  public interface Smil extends SmilObject {
36  
37    /**
38     * Returns body of the SMIL.
39     *
40     * @return the body of the SMIL.
41     */
42    SmilBody getBody();
43  
44    /**
45     * Returns head of the SMIL.
46     *
47     * @return the head of the SMIL.
48     */
49    SmilHead getHead();
50  
51    /**
52     * Serialize this object.
53     *
54     * @return the XML representation of the {@link Smil} object
55     * @throws JAXBException if serializing fail
56     */
57    String toXML() throws JAXBException, SAXException, MalformedURLException;
58  
59    /**
60     * Returns element with given Id.
61     *
62     * @param elementId element Id
63     * @throws SmilException if there is no element with the same Id
64     * @return element with given Id
65     */
66    SmilObject get(String elementId) throws SmilException;
67  }