1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package gov.nist.secauto.oscal.lib.model;
7   
8   import gov.nist.secauto.oscal.lib.model.BackMatter.Resource;
9   
10  import java.util.UUID;
11  
12  import edu.umd.cs.findbugs.annotations.NonNull;
13  import edu.umd.cs.findbugs.annotations.Nullable;
14  
15  public interface IOscalInstance {
16    UUID getUuid();
17  
18    Metadata getMetadata();
19  
20    BackMatter getBackMatter();
21  
22    /**
23     * Lookup a backmatter resource by its UUID value.
24     *
25     * @param id
26     *          the uuid value
27     * @return the resource or {@code null} if no resource matched the UUID
28     */
29    @Nullable
30    Resource getResourceByUuid(@NonNull UUID id);
31  }