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  package org.opencastproject.assetmanager.api;
22  
23  import org.opencastproject.mediapackage.MediaPackage;
24  
25  import java.util.Date;
26  
27  /**
28   * A versioned snapshot of a {@link MediaPackage} under the control of the {@link AssetManager}.
29   */
30  public interface Snapshot {
31    /** Get the version. */
32    Version getVersion();
33  
34    /** Get the ID of the organization where this media package belongs to. */
35    String getOrganizationId();
36  
37    /** Tell about when this version of the episode has been stored in the AssetManager. */
38    Date getArchivalDate();
39  
40    /** Get the availability of the media package's assets. */
41    Availability getAvailability();
42  
43    /** Get the store ID of the asset store where this snapshot currently lives */
44    String getStorageId();
45  
46    /** Get the owner of the snapshot. **/
47    String getOwner();
48  
49    /**
50     * Get the media package.
51     * <p>
52     * Implementations are required to provide media package element URIs that point to some valid HTTP endpoint.
53     */
54    MediaPackage getMediaPackage();
55  }