/* * Hibernate, Relational Persistence for Idiomatic Java * * License: GNU Lesser General Public License (LGPL), version 2.1 or later. * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. */ package org.hibernate.boot.model.source.spi; /** * An attribute role is, generally speaking, the path of attribute names back * to a "root" (which is either an entity or a persistent collection). The * name of this root typically is included in the path. * * @author Steve Ebersole */ public class AttributeRole extends AbstractAttributeKey { public static final char DELIMITER = '.'; public AttributeRole(String base) { super( base ); } @Override protected char getDelimiter() { return DELIMITER; } @Override public AttributeRole append(String property) { return new AttributeRole( this, property ); } @Override public AttributeRole getParent() { return (AttributeRole) super.getParent(); } private AttributeRole(AttributeRole parent, String property) { super( parent, property ); } }