io.gdcc.xoai.dataprovider.model.ItemIdentifier Maven / Gradle / Ivy
/*
* The contents of this file are subject to the license and copyright
* detailed in the LICENSE and NOTICE files at the root of the source
* tree and available online at
*
* http://www.dspace.org/license/
*/
package io.gdcc.xoai.dataprovider.model;
import java.time.Instant;
import java.util.List;
/**
* Base class for identifying an OAI-PMH records.
*
* @author Lyncode
* @version 3.1.0
*/
public interface ItemIdentifier {
/**
* Returns the OAI-PMH unique identifier.
*
* @return OAI-PMH unique identifier.
* @see Unique
* identifier definition
*/
String getIdentifier();
/**
* Creation, modification or deletion date.
*
* @return OAI-PMH records datestamp
* @see Record
* definition
*/
Instant getDatestamp();
/**
* Exposes the list of sets (using the set_spec) that contains the item (OAI-PMH records).
*
* @return List of sets
* @see Set
* definition
* @see Record
* definition
*/
List getSets();
/**
* Checks if the item is deleted or not.
*
* @return Checks if the item is deleted or not.
* @see Record
* definition
*/
boolean isDeleted();
}