/* * This file is part of the HyperGraphDB source distribution. This is copyrighted * software. For permitted uses, licensing options and redistribution, please see * the LicensingInformation file at the root level of the distribution. * * Copyright (c) 2005-2010 Kobrix Software, Inc. All rights reserved. */ package org.hypergraphdb.type; import org.hypergraphdb.HGHandle; /** * <p> * Acts as an atom type for Java interfaces and abstract classes with no * declared/visible bean properties. Abstract class/interfaces with declared * bean properties are represented by the <code>JavaAbstractBeanBinding</code> * class. * </p> * * @author Borislav Iordanov * */ public class JavaInterfaceBinding extends HGAbstractType { private Class<?> javaClass; private HGHandle typeHandle; private HGAtomType hgType; public JavaInterfaceBinding(HGHandle typeHandle, HGAtomType hgType, Class<?> javaClass) { this.javaClass = javaClass; this.typeHandle = typeHandle; this.hgType = hgType; } public Class<?> getJavaClass() { return javaClass; } public HGAtomType getHGType() { return hgType; } public HGHandle getTypeHandle() { return typeHandle; } public String toString() { return javaClass.toString(); } }