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

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

There is a newer version: 5.0.0-B03
Show newest version
/*
 * Copyright (c) 1998, 2018 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.expressions.*;

/**
 * INTERNAL
 * 

Purpose: This node represnts a Parameter (?1) in an EJBQL *

Responsibilities:

    *
  • Generate the correct expression for an AND in EJBQL *
  • Maintain a *
  • *
* @author Jon Driscoll and Joel Lucuik * @since TopLink 4.0 */ public class ParameterNode extends Node { /** */ private String name; /** * Return a new ParameterNode. */ public ParameterNode() { super(); } /** * INTERNAL * Create a new ParameterNode with the passed string. * @param newVariableName java.lang.String */ public ParameterNode(String newParameterName) { setParameterName(newParameterName); } /** * INTERNAL */ public void validateParameter(ParseTreeContext context, Object contextType) { context.defineParameterType(name, contextType, getLine(), getColumn()); setType(context.getParameterType(name)); } /** * Generate the result expression, must use the base builder * to avoid getting multiple builders. */ public Expression generateExpression(GenerationContext context) { Expression whereClause = context.getBaseExpression().getParameter(getParameterName(), getType()); return whereClause; } /** * INTERNAL * Return the parameterName */ public String getAsString() { return getParameterName(); } /** * INTERNAL * Return the parameter name */ public String getParameterName() { return name; } /** */ public void setParameterName(String name) { this.name = name; } /** * INTERNAL * Yes this is a Parameter node */ public boolean isParameterNode() { return true; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy