001/*
002 * The contents of this file are subject to the license and copyright
003 * detailed in the LICENSE and NOTICE files at the root of the source
004 * tree.
005 */
006package org.fcrepo.kernel.api.services;
007
008import java.util.stream.Stream;
009
010import org.apache.jena.graph.Triple;
011import org.fcrepo.kernel.api.Transaction;
012import org.fcrepo.kernel.api.models.FedoraResource;
013
014/**
015 * Provides containment triples.
016 *
017 * @author whikloj
018 * @since 6.0.0
019 */
020public interface ContainmentTriplesService {
021
022    /**
023     * Retrieve the containment triples.
024     *
025     * @param tx The transaction or null if none.
026     * @param resource The fedora container resource in which children resources are contained.
027     * @return A stream of containment triples for the resource.
028     */
029    Stream<Triple> get(Transaction tx, FedoraResource resource);
030}