Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
  * JBoss, Home of Professional Open Source
  * Copyright 2009, Red Hat, Inc. and/or its affiliates, and individual contributors
  * by the @authors tag. See the copyright.txt in the distribution for a
  * full listing of individual contributors.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
 * http://www.apache.org/licenses/LICENSE-2.0
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
 package org.hibernate.validator.internal.engine;
 
Immutable implementation of a Path.Node.

Author(s):
Hardy Ferentschik
 
 public class NodeImpl implements Path.NodeSerializable {
 	private static final long serialVersionUID = 2075466571633860499L;
 
 	public static final String INDEX_OPEN = "[";
 	public static final String INDEX_CLOSE = "]";
 
 	private final String name;
 	private final NodeImpl parent;
 	private final boolean isIterable;
 	private final Integer index;
 	private final Object key;
 	private final int hashCode;
 
 	private String asString;
 
 	public NodeImpl(String nameNodeImpl parentboolean indexableInteger indexObject key) {
 		this. = name;
 		this. = parent;
 		this. = index;
 		this. = key;
 		this. = indexable;
 		this. = buildHashCode();
 	}
 
 	public final String getName() {
 		return ;
 	}
 
 	public final boolean isInIterable() {
 		return  != null && .isIterable();
 	}
 
 	public final boolean isIterable() {
 		return ;
 	}
 
 	public final Integer getIndex() {
 		if (  == null ) {
 			return null;
 		}
 		else {
 			return .;
 		}
 	}
 
 	public final Object getKey() {
 		if (  == null ) {
 			return null;
 		}
 		else {
 			return .;
 		}
 	}
 
 	public final NodeImpl getParent() {
 		return ;
 	}
 
 	public String toString() {
 		return asString();
 	}
 
 	public final String asString() {
 		if (  == null ) {
 		}
 		return ;
 	}
 
 	private String buildToString() {
 		StringBuilder builder = new StringBuilder();
 		builder.appendgetName() );
		if ( isIterable() ) {
			builder.append );
			if (  != null ) {
				builder.append );
			}
			else if (  != null ) {
				builder.append );
			}
			builder.append );
		}
		return builder.toString();
	}
	public int buildHashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ( (  == null ) ? 0 : .hashCode() );
		result = prime * result + (  ? 1231 : 1237 );
		result = prime * result + ( (  == null ) ? 0 : .hashCode() );
		result = prime * result + ( (  == null ) ? 0 : .hashCode() );
		result = prime * result + ( (  == null ) ? 0 : .hashCode() );
		return result;
	}
	public int hashCode() {
		return ;
	}
	public boolean equals(Object obj) {
		if ( this == obj ) {
			return true;
		}
		if ( obj == null ) {
			return false;
		}
		if ( getClass() != obj.getClass() ) {
			return false;
		}
		NodeImpl other = (NodeImplobj;
		if (  == null ) {
			if ( other.index != null ) {
				return false;
			}
		}
		else if ( !.equalsother.index ) ) {
			return false;
		}
		if (  != other.isIterable ) {
			return false;
		}
		if (  == null ) {
			if ( other.key != null ) {
				return false;
			}
		}
		else if ( !.equalsother.key ) ) {
			return false;
		}
		if (  == null ) {
			if ( other.name != null ) {
				return false;
			}
		}
		else if ( !.equalsother.name ) ) {
			return false;
		}
		if (  == null ) {
			if ( other.parent != null ) {
				return false;
			}
		}
		else if ( !.equalsother.parent ) ) {
			return false;
		}
		return true;
	}
New to GrepCode? Check out our FAQ X