All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.metaeffekt.terms.metadata.InternalTermMetaDataProducerMojo Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2021-2024 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.metaeffekt.terms.metadata;

import com.metaeffekt.artifact.analysis.flow.ng.TermMetaDataProducer;
import com.metaeffekt.artifact.analysis.flow.ng.TermMetaDataProducerSpec;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.logging.Log;
import org.apache.maven.plugins.annotations.Mojo;

@Mojo(name = "build-tmd-dataset-for-internal-use")
public class InternalTermMetaDataProducerMojo extends AbstractProducerMojo {

    @Override
    public void execute() throws MojoExecutionException {
        TermMetaDataProducerSpec spec = new TermMetaDataProducerSpec(
                termsMetaDataBaseDir,
                allowedUserKeysDir,
                licenseTextFile,
                targetZipFile,
                true,
                TermMetaDataProducerSpec.BuildType.INTERNAL
        );

        Log log = getLog();

        // print info to log
        log.info("Producing INTERNAL TMD artifact using the following parameters:");
        log.info("  termsMetaDataBaseDir: " + spec.getTermsMetaDataBaseDir());
        log.info("  allowedUserKeysDir: " + spec.getAllowedUserKeysDir());
        log.info("  targetZipFile: " + spec.getZipOutputFile());
        log.info("  buildType: " + spec.getBuildType());

        // call for generation of output
        try {
            TermMetaDataProducer.produce(spec);
        } catch (Exception e) {
            throw new MojoExecutionException("Failed to build TMD artifact: ", e);
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy