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

org.ovirt.api.metamodel.analyzer.ModelNameParser Maven / Gradle / Ivy

There is a newer version: 1.3.10
Show newest version
/*
 * Copyright oVirt Authors
 * SPDX-License-Identifier: Apache-2.0
 */

package org.ovirt.api.metamodel.analyzer;

import org.ovirt.api.metamodel.concepts.Name;
import org.ovirt.api.metamodel.concepts.NameParser;

/**
 * This class contains methods useful for parsing the kind of names used in the model language.
 */
public class ModelNameParser {
    /**
     * Creates a model name from a Java name, doing any processing that is required, for example removing the prefixes
     * or suffixes that are used to avoid conflicts with Java reserved words.
     */
    public static Name parseJavaName(String text) {
        // Remove the underscore prefixes and suffixes, as they only make sense to avoid conflicts with Java reserved
        // words and they aren't needed in the model:
        while (text.startsWith("_")) {
            text = text.substring(1);
        }
        while (text.endsWith("_")) {
            text = text.substring(0, text.length() - 1);
        }

        // Once the name is clean it can be parsed:
        return NameParser.parseUsingCase(text);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy