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