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

com.sap.cds.reflect.impl.CdsDefinitionImpl Maven / Gradle / Ivy

There is a newer version: 3.8.0
Show newest version
/*******************************************************************
 * © 2020 SAP SE or an SAP affiliate company. All rights reserved. *
 *******************************************************************/
package com.sap.cds.reflect.impl;

import java.util.Collection;

import com.sap.cds.reflect.CdsAnnotation;
import com.sap.cds.reflect.CdsDefinition;

public abstract class CdsDefinitionImpl extends CdsAnnotatableImpl implements CdsDefinition {

	private final String qualifiedName;
	private final String name;

	protected CdsDefinitionImpl(Collection> annotations, String qualifiedName, String name,
			String doc) {
		super(annotations, doc);
		this.qualifiedName = qualifiedName.intern();
		this.name = name.intern();
	}

	@Override
	public String getQualifiedName() {
		return qualifiedName;
	}

	@Override
	public String getName() {
		return name;
	}

	@Override
	public String getQualifier() {
		String qualifiedName = getQualifiedName();
		if (!qualifiedName.equals(name)) {
			return qualifiedName.substring(0, qualifiedName.length() - (name.length() + 1));
		}
		return "";
	}

	@Override
	public String toString() {
		return getQualifiedName();
	}

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy