/******************************************************************************* * Copyright (c) 2006 Oracle Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Oracle Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.bpel.xpath10; /** * * @author Michal Chmielewski (michal.chmielewski@oracle.com) * @date Aug 26, 2008 * */ @SuppressWarnings("nls") public class Axis { /** */ static final public int INVALID_AXIS = 0; /** Child axis */ static final public int CHILD = 1; /** Descendant axis */ static final public int DESCENDANT = 2; /** Parent axis */ static final public int PARENT = 3; /** Ancestor axis */ static final public int ANCESTOR = 4; /** Following sibling axis */ static final public int FOLLOWING_SIBLING = 5; /** Proceeding sibling axis */ static final public int PRECEDING_SIBLING = 6; /** Following axis */ static final public int FOLLOWING = 7; /** Preceeding sibling axis */ static final public int PRECEDING = 8; /** Attribute axis */ static final public int ATTRIBUTE = 9; /** Namespace axis */ static final public int NAMESPACE = 10; /** Self axis */ static final public int SELF = 11; /** Descendant or self axis */ static final public int DESCENDANT_OR_SELF = 12; /** Ancestor or self [ lucky 13 ] */ static final public int ANCESTOR_OR_SELF = 13; static final private String [] NAMES = { "unknown-axis-name", /** at [0] we have null */ "child", "descendant", "parent", "ancestor", "following-sibling", "preceding-sibling", "following", "preceding", "attribute", "namespace", "self", "descendant-or-self", "ancestor-or-self" }; /** * Get the name of the axis given it's index (retrieved via {{@link #getAxis(String)} below. * * @param axis * @return the axis name */ static public String getName (int axis) { if (axis < 1 || axis >= NAMES.length) { return NAMES[0]; } return NAMES[axis]; } /** * * @param axisName the axis name * @return the axis id given its name */ static public int getAxis ( String axisName ) { for(int i=1; i<NAMES.length; i++) { if (NAMES[i].equals(axisName)) { return i; } } return -1; } }