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

org.eclipse.persistence.internal.jpa.parsing.TypeHelper Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (c) 1998, 2021 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0,
 * or the Eclipse Distribution License v. 1.0 which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
 */

// Contributors:
//     Oracle - initial API and implementation from Oracle TopLink
package org.eclipse.persistence.internal.jpa.parsing;

import org.eclipse.persistence.mappings.querykeys.QueryKey;

/**
 * INTERNAL
 * 

Purpose: Specify type helper methods. */ public interface TypeHelper { /** Returns the name of the specified type. */ String getTypeName(Object type); /** Returns the class object of the specified type. */ Class getJavaClass(Object type); /** Returns a type representation for the specified type name or null if * there is no such type. */ Object resolveTypeName(String typeName); /** Returns the type of the attribute with the specified name in the * specified owner class. */ Object resolveAttribute(Object ownerClass, String attribute); /** * Returns a query key associated with the name of the attribute */ QueryKey resolveQueryKey(Object ownerClass, String attribute); /** Returns the type of the map key for the mapping on ownerClass named attribute * Returns null if that mapping does not exist or does not contain a map key */ Object resolveMapKey(Object ownerClass, String attribute); /** Returns the type of the class corresponding to the specified abstract * schema type. */ Object resolveSchema(String schemaName); /** Returns the enum constant if the specified type denotes an enum type * and the specified constant denotes a constant of the enum type. */ Object resolveEnumConstant(Object enumType, String constant); /** Returns the type representation of class Object.*/ Object getObjectType(); /** Returns the boolean type representation.*/ Object getBooleanType(); /** Returns the char type representation.*/ Object getCharType(); /** Returns the char type representation.*/ Object getSQLDateType(); /** Returns the char type representation.*/ Object getTimeType(); /** Returns the char type representation.*/ Object getTimestampType(); /** Returns the int type representation.*/ Object getIntType(); /** Returns the long type representation.*/ Object getLongType(); /** Returns the type representation of class Long.*/ Object getLongClassType(); /** Returns the type representation of class Map.Entry.*/ Object getMapEntryType(); /** Returns the float type representation.*/ Object getFloatType(); /** Returns the double type representation.*/ Object getDoubleType(); /** Returns the type representation of class Double.*/ Object getDoubleClassType(); /** Returns the type representation oc class String.*/ Object getStringType(); /** Returns the type representation of class BigInteger.*/ Object getBigIntegerType(); /** Returns the type representation of class BigDecimal.*/ Object getBigDecimalType(); /** Returns true if the specified type denotes an enum type. */ boolean isEnumType(Object type); /** Returns true if the specified type represents an * integral type (or wrapper), a floating point type (or wrapper), * BigInteger or BigDecimal. */ boolean isNumericType(Object type); /** Returns true if the specified type represents an * integral type or a wrapper class of an integral type. */ boolean isIntegralType(Object type); /** Returns true if the specified type represents an floating point type * or a wrapper class of an floating point type. */ boolean isFloatingPointType(Object type); /** Returns true if the specified type represents java.lang.String. */ boolean isStringType(Object type); /** Returns true if the specified type represents java.math.BigInteger. */ boolean isBigIntegerType(Object type); /** Returns true if the specified type represents java.math.BigDecimal. */ boolean isBigDecimalType(Object type); /** Returns true if the specified type denotes an orderable type. */ boolean isOrderableType(Object type); /** Returns true if the specified type denotes an entity class. */ boolean isEntityClass(Object type); /** Returns true if the specified type denotes an embedded class. */ boolean isEmbeddable(Object type); /** Returns true if the specified type denotes an embedded attribute. */ boolean isEmbeddedAttribute(Object ownerClass, String attribute); /** Returns true if the specified type denotes a simple state attribute. */ boolean isSimpleStateAttribute(Object ownerClass, String attribute); /** Returns true if the specified attribute denotes a single valued * or collection valued relationship attribute. */ boolean isRelationship(Object ownerClass, String attribute); /** Returns true if the specified attribute denotes a single valued * relationship attribute. */ boolean isSingleValuedRelationship( Object ownerClass, String attribute); /** Returns true if the specified attribute denotes a collection valued * relationship attribute. */ boolean isCollectionValuedRelationship( Object ownerClass, String attribute); /** Returns true if left is assignable from right. */ boolean isAssignableFrom(Object left, Object right); /** Binary numeric promotion as specified in the JLS, extended by * wrapper classes, BigDecimal and BigInteger. */ Object extendedBinaryNumericPromotion(Object left, Object right); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy