#
# This file is part of *** M y C o R e ***
# See http://www.mycore.de/ for details.
#
# MyCoRe is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# MyCoRe is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with MyCoRe. If not, see .
#
# This is a full list of all current OCFL Configuration values, to change any,
# copy the desired part into your local properties and overwrite them there
######################################################################
# OCFL Command Configuration #
######################################################################
# OCFL Main Commands
MCR.CLI.Classes.Internal=%MCR.CLI.Classes.Internal%,org.mycore.ocfl.commands.MCROCFLCommands
# OCFL Regex Commands
MCR.CLI.Classes.Internal=%MCR.CLI.Classes.Internal%,org.mycore.ocfl.commands.MCROCFLRegexCommands
######################################################################
# OCFL Repository Configuration #
######################################################################
MCR.OCFL.Repository.Main=org.mycore.ocfl.repository.MCROCFLHashRepositoryProvider
MCR.OCFL.Repository.Main.RepositoryRoot=%MCR.datadir%/ocfl-root
MCR.OCFL.Repository.Main.WorkDir=%MCR.datadir%/ocfl-temp
# There is an alternative repository provider implementation which results in directory structure
# as we know it from the MyCoRe IFS2 implementation:
# MCR.OCFL.Repository.Main=org.mycore.ocfl.repository.MCROCFLMCRRepositoryProvider
# The slot layout can be configured, if not - the default will be calculated as follows:
# Integer.toString(MCRConfiguration2.getString("MCR.Metadata.ObjectID.NumberPattern").orElse("0000000000").length() - 4) + "-2-2";
# MCR.OCFL.MyCoReStorageLayout.SlotLayout=4-2-2
######################################################################
# OCFL Metadata Configuration #
######################################################################
# Overwrite the MyCoRe Metadata Manager with the one of the OCFL Implementation
# Keep this disabled during the migration to OCFL
# MCR.Metadata.Manager=org.mycore.ocfl.metadata.MCROCFLXMLMetadataManager
# Default Metadata Manager repository
MCR.Metadata.Manager.Repository=Main
######################################################################
# OCFL Classification Configuration #
######################################################################
# Add Events for the Eventhandler to the default CategoryDAO implementation
# MCR.Category.DAO=org.mycore.datamodel.classifications2.impl.MCREventedCategoryDAOImpl
# Enable the OCFL Classification Manager
# MCR.Classification.Manager=org.mycore.ocfl.classification.MCROCFLXMLClassificationManager
# Default Classification Manager repository
MCR.Classification.Manager.Repository=Main
# Event Handler Binding for Classification Manager
# MCR.EventHandler.MCRClassification.020.Class=org.mycore.ocfl.classification.MCROCFLClassificationEventHandler
######################################################################
# OCFL Users Configuration #
######################################################################
# bind OCFL event handler
# MCR.EventHandler.MCRUser.020.Class=org.mycore.ocfl.user.MCROCFLUserEventHandler
# default user repository
MCR.Users.Manager.Repository=Main
######################################################################
# OCFL Delete Behaviour Configuration #
######################################################################
# Syntax:
# MCR.OCFL.dropHistory.[options...] = boolean
#
# By default, everything is false, if its wanted to be default true:
# MCR.OCFL.dropHistory = true
#
# possible options for options:
# ocfl-type: ["mcrobject","mcrderivate","mcrclass","mcruser","mcracl","mcrweb"]
# MCRIDs: ProjectID, TypeID, BaseID, MCRID
#
# MCRIDs can also be assigned per ocfl type:
# ocfl-type.mcrid
#
# examples:
# MCR.OCFL.dropHistory.mcrobject.sampleProject_sampleType = true
# MCR.OCFL.dropHistory.sampleProject2 = true
#
# a more specific configuration will overwrite any broader configuration
# MCR.OCFL.dropHistory.mcrclass = true
# MCR.OCFL.dropHistory.mcrclass.sampleClass = false
# this will purge all classes on deletion except for "sampleClass"
#
# Additionally, one can also utilize regular expressions for more complex rules
# Currently there are two rules, the prequeue and postqueue.
# prequeue runs before any other config check, but after the global default
# MCR.OCFL.dropHistory.preMatch=|null
# postqueue runs after any other check and can ultimately alter the behaviour one last time
# MCR.OCFL.dropHistory.postMatch=|null
# these also exist per ocflType for more granular control
# MCR.OCFL.dropHistory..preMatch=|null
# MCR.OCFL.dropHistory..postMatch=|null
#
# the priority goes as follows (from least to most important)
#
# global default
# regex preMatch
# ocflType
# projectID
# typeID
# BaseID
# ocflType + regex preMatch
# ocflType + projectID
# ocflType + typeID
# ocflType + BaseID
# mcrID
# ocflType + mcrID
# regex postMatch
# ocfltype + regex postMatch