2020.06 2021.06

Eigene Erweiterungen der Kommandozeilenschnittstelle (CLI)

Der Abschnitt beschreibt die eigenen Erweiterungen der Kommandozeilenschnittstelle.

Einfügen weiterer Kommandoklassen

Alle Kommandoklassen nutzen die Annotierungen von MCRCommandGroup und MCRCommand . Die Klassen sollten folgendes Codegerüst nutzen.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
package org.mycore.frontend.cli;

import org.mycore.frontend.cli.annotation.MCRCommand;
import org.mycore.frontend.cli.annotation.MCRCommandGroup;

@MCRCommandGroup(name = "MCRObject Commands")
public class MCRMyCommands extends MCRAbstractCommands {

    @MCRCommand(syntax = "do this for all objects of type {0}", help = "Do this for MCRObjects of type {0}.", order = 10)
    public static ... myCommand(String arg0) {
        ...
    }

}

Die so erstellte Klasse kann in den mycore.properties folgender Maßen eingebunden werden.

MCR.CLI.Classes.External=%MCR.CLI.Classes.External%,org.mycore.frontend.cli.MCRMyCommands