org.objectweb.medor.query.lib

Class Project

Implemented Interfaces:
Cloneable, Cloneable, FilteredQueryTree, QueryNode, QueryTree, TupleStructure

public class Project
extends BasicQueryNode

MEDOR: Middleware Enabling Distributed Object Requests Copyright (C) 2001-2004 France Telecom R&D Contact: alexandre.lefebvre@rd.francetelecom.com This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Initial developers: M. Alia, A. Lefebvre

Field Summary

Fields inherited from class org.objectweb.medor.query.lib.BasicQueryNode

children, filter, indexes, inner, tupleLoader

Fields inherited from class org.objectweb.medor.query.lib.BasicQueryTree

distinct, indexes, name, orderfields

Fields inherited from class org.objectweb.medor.lib.BasicTupleStructure

fields, logger, name2field

Constructor Summary

Project()
Project(String name)
Basic constructor.
Project(String[] fieldNames, QueryTree child, String nodeName)
Constructs a Project node from an array of fieldNames to be projected from a given (child) QueryTree.

Method Summary

short
getType()
It retrieves the operation type of the current QueryNode.
void
setQueryFilter(Expression e)
The setQueryFilter method will be overwritten for implementations which do not support the operation.

Methods inherited from class org.objectweb.medor.query.lib.BasicQueryNode

addCalculatedField, addChild, addField, addPropagatedField, clone, getChildren, getFieldName, getQueryFilter, getTupleLoader, getType, isOuter, removeField, replace, setOuter, setQueryFilter, setTupleLoader, updateCalculatedField, updateChildren, updatePropagatedField

Methods inherited from class org.objectweb.medor.query.lib.BasicQueryTree

clone, getDistinct, getName, getOrderBy, getTupleStructure, setDistinct, setOrderBy

Methods inherited from class org.objectweb.medor.lib.BasicTupleStructure

clone, contains, contains, getField, getField, getFieldRank, getFields, getSize

Constructor Details

Project

public Project()


Project

public Project(String name)
Basic constructor. The Fields must be added later.


Project

public Project(String[] fieldNames,
               QueryTree child,
               String nodeName)
            throws MedorException
Constructs a Project node from an array of fieldNames to be projected from a given (child) QueryTree.

Parameters:
fieldNames - is the array of field names for which the Field is to be projected.
child - is the child QueryTree on which the projection operates.

Method Details

getType

public short getType()
It retrieves the operation type of the current QueryNode.
Specified by:
getType in interface QueryNode
Overrides:
getType in interface BasicQueryNode


setQueryFilter

public void setQueryFilter(Expression e)
The setQueryFilter method will be overwritten for implementations which do not support the operation.
Specified by:
setQueryFilter in interface FilteredQueryTree
Overrides:
setQueryFilter in interface BasicQueryNode