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 org.apache.jena.graph.Triple;
009import org.fcrepo.kernel.api.models.FedoraResource;
010
011import java.util.stream.Stream;
012
013/**
014 * Interface for a service that converts managed properties from a {@link org.fcrepo.kernel.api.models.FedoraResource}
015 * into a triple stream
016 *
017 * @author dbernstein
018 * @since 2020-01-07
019 */
020public interface ManagedPropertiesService {
021
022    /**
023     * Retrieve the managed properties as triples
024     *
025     * @param resource The fedora resource
026     * @return A stream of managed properties for the resource.
027     */
028    Stream<Triple> get(FedoraResource resource);
029
030}