geirm 02/04/27 11:23:47
Modified: src/java/org/apache/velocity/runtime/parser/node
ASTReference.java
Log:
some format cleanup
Revision Changes Path
1.48 +98 -92
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/node/ASTReference.java
Index: ASTReference.java
===================================================================
RCS file:
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/node/ASTReference.java,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -r1.47 -r1.48
--- ASTReference.java 27 Apr 2002 18:08:34 -0000 1.47
+++ ASTReference.java 27 Apr 2002 18:23:47 -0000 1.48
@@ -3,7 +3,7 @@
/*
* The Apache Software License, Version 1.1
*
- * Copyright (c) 2000-2001 The Apache Software Foundation. All rights
+ * Copyright (c) 2000-2002 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -79,7 +79,7 @@
/**
* This class is responsible for handling the references in
* VTL ($foo).
- *
+ *
* Please look at the Parser.jjt file which is
* what controls the generation of this class.
*
@@ -87,7 +87,7 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Geir Magnusson Jr.</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Christoph Reck</a>
* @author <a href="mailto:[EMAIL PROTECTED]>Kent Johnson</a>
- * @version $Id: ASTReference.java,v 1.47 2002/04/27 18:08:34 geirm Exp $
+ * @version $Id: ASTReference.java,v 1.48 2002/04/27 18:23:47 geirm Exp $
*/
public class ASTReference extends SimpleNode
{
@@ -96,7 +96,7 @@
private static final int FORMAL_REFERENCE = 2;
private static final int QUIET_REFERENCE = 3;
private static final int RUNT = 4;
-
+
private int referenceType;
private String nullString;
private String rootString;
@@ -105,12 +105,12 @@
private String escPrefix = "";
private String morePrefix = "";
private String identifier = "";
-
+
private String literal = null;
private int numChildren = 0;
- Info uberInfo;
+ protected Info uberInfo;
public ASTReference(int id)
{
@@ -146,7 +146,7 @@
rootString = getRoot();
numChildren = jjtGetNumChildren();
-
+
/*
* and if appropriate...
*/
@@ -173,7 +173,7 @@
{
return rootString;
}
-
+
/**
* gets an Object that 'is' the value of the reference
*
@@ -182,7 +182,7 @@
*/
public Object execute(Object o, InternalContextAdapter context)
throws MethodInvocationException
- {
+ {
if (referenceType == RUNT)
return null;
@@ -192,11 +192,11 @@
*/
Object result = getVariableValue(context, rootString);
-
+
if (result == null)
{
return null;
- }
+ }
/*
* Iteratively work 'down' (it's flat...) the reference
@@ -210,19 +210,19 @@
* when we find a null value and return the null
* so the error gets logged.
*/
-
- try
+
+ try
{
for (int i = 0; i < numChildren; i++)
{
result = jjtGetChild(i).execute(result,context);
-
+
if (result == null)
{
return null;
- }
+ }
}
-
+
return result;
}
catch(MethodInvocationException mie)
@@ -261,7 +261,7 @@
}
Object value = execute(null, context);
-
+
/*
* if this reference is escaped (\$foo) then we want to do one of two
things :
* 1) if this is a reference in the context, then we want to print $foo
@@ -281,7 +281,7 @@
writer.write(escPrefix);
writer.write(nullString);
}
-
+
return true;
}
@@ -304,20 +304,20 @@
if (value == null)
{
- /*
+ /*
* write prefix twice, because it's shmoo, so the \ don't escape each
other...
*/
-
- writer.write( escPrefix );
- writer.write( escPrefix );
- writer.write( morePrefix );
- writer.write( nullString );
-
- if (referenceType != QUIET_REFERENCE
+
+ writer.write(escPrefix);
+ writer.write(escPrefix);
+ writer.write(morePrefix);
+ writer.write(nullString);
+
+ if (referenceType != QUIET_REFERENCE
&&
rsvc.getBoolean(RuntimeConstants.RUNTIME_LOG_REFERENCE_LOG_INVALID,
true))
{
- rsvc.warn(new ReferenceException("reference : template = "
+ rsvc.warn(new ReferenceException("reference : template = "
+ context.getCurrentTemplateName(), this));
}
@@ -329,14 +329,14 @@
* non-null processing
*/
- writer.write( escPrefix );
- writer.write( morePrefix );
- writer.write( value.toString() );
-
+ writer.write(escPrefix);
+ writer.write(morePrefix);
+ writer.write(value.toString());
+
return true;
}
}
-
+
/**
* Computes boolean value of this reference
* Returns the actual value of reference return type
@@ -344,11 +344,11 @@
*
* @param context context to compute value with
*/
- public boolean evaluate( InternalContextAdapter context)
+ public boolean evaluate(InternalContextAdapter context)
throws MethodInvocationException
{
Object value = execute(null, context);
-
+
if (value == null)
{
return false;
@@ -364,10 +364,10 @@
return true;
}
- public Object value( InternalContextAdapter context)
+ public Object value(InternalContextAdapter context)
throws MethodInvocationException
{
- return ( computableReference ? execute(null, context) : null );
+ return (computableReference ? execute(null, context) : null);
}
/**
@@ -396,14 +396,14 @@
*/
Object result = getVariableValue(context, rootString);
-
+
if (result == null)
{
rsvc.error(new ReferenceException("reference set : template = "
+ context.getCurrentTemplateName(), this));
return false;
- }
-
+ }
+
/*
* How many child nodes do we have?
*/
@@ -411,14 +411,14 @@
for (int i = 0; i < numChildren - 1; i++)
{
result = jjtGetChild(i).execute(result, context);
-
+
if (result == null)
{
rsvc.error(new ReferenceException("reference set : template = "
+ context.getCurrentTemplateName(), this));
return false;
- }
- }
+ }
+ }
/*
* We support two ways of setting the value in a #set($ref.foo = $value ) :
@@ -437,7 +437,7 @@
vs.invoke(result, value);
}
- catch( InvocationTargetException ite )
+ catch(InvocationTargetException ite)
{
/*
* this is possible
@@ -450,7 +450,7 @@
+ ite.getTargetException().getClass(),
ite.getTargetException(), identifier );
}
- catch( Exception e )
+ catch(Exception e)
{
/*
* maybe a security exception?
@@ -469,7 +469,7 @@
Token t = getFirstToken();
/*
- * we have a special case where something like
+ * we have a special case where something like
* $(\\)*!, where the user want's to see something
* like $!blargh in the output, but the ! prevents it from showing.
* I think that at this point, this isn't a reference.
@@ -479,17 +479,17 @@
int slashbang = t.image.indexOf("\\!");
- if ( slashbang != -1 )
+ if (slashbang != -1)
{
/*
- * lets do all the work here. I would argue that if this occurrs,
it's
- * not a reference at all, so preceeding \ characters in front of the $
- * are just schmoo. So we just do the escape processing trick (even |
odd)
- * and move on. This kind of breaks the rule pattern of $ and # but
'!' really
- * tosses a wrench into things.
+ * lets do all the work here. I would argue that if this occurrs,
+ * it's not a reference at all, so preceeding \ characters in front
+ * of the $ are just schmoo. So we just do the escape processing
+ * trick (even | odd) and move on. This kind of breaks the rule
+ * pattern of $ and # but '!' really tosses a wrench into things.
*/
- /*
+ /*
* count the escapes : even # -> not escaped, odd -> escaped
*/
@@ -501,34 +501,40 @@
if (i == -1)
{
/* yikes! */
- rsvc.error("ASTReference.getRoot() : internal error : no $ found
for slashbang.");
+ rsvc.error("ASTReference.getRoot() : internal error : "
+ + "no $ found for slashbang.");
computableReference = false;
nullString = t.image;
return nullString;
}
- while( i < len && t.image.charAt(i) != '\\')
+ while (i < len && t.image.charAt(i) != '\\')
+ {
i++;
+ }
/* ok, i is the first \ char */
int start = i;
int count = 0;
-
- while( i < len && t.image.charAt(i++) == '\\' )
+
+ while (i < len && t.image.charAt(i++) == '\\')
+ {
count++;
-
+ }
+
/*
- * now construct the output string. We really don't care about
leading
- * slashes as this is not a reference. It's quasi-schmoo
+ * now construct the output string. We really don't care about
+ * leading slashes as this is not a reference. It's quasi-schmoo
*/
- nullString = t.image.substring(0,start); // prefix up to the first
+ nullString = t.image.substring(0,start); // prefix up to the first
nullString += t.image.substring(start, start + count-1 ); // get the
slashes
- nullString += t.image.substring(start+count); // and the rest,
including the
+ nullString += t.image.substring(start+count); // and the rest,
including the
/*
- * this isn't a valid reference, so lets short circuit the value and
set calcs
+ * this isn't a valid reference, so lets short circuit the value
+ * and set calcs
*/
computableReference = false;
@@ -538,32 +544,33 @@
/*
* we need to see if this reference is escaped. if so
- * we will clean off the leading \'s and let the
+ * we will clean off the leading \'s and let the
* regular behavior determine if we should output this
* as \$foo or $foo later on in render(). Lazyness..
*/
-
+
escaped = false;
- if ( t.image.startsWith("\\"))
+ if (t.image.startsWith("\\"))
{
- /*
+ /*
* count the escapes : even # -> not escaped, odd -> escaped
*/
int i = 0;
int len = t.image.length();
- while( i < len && t.image.charAt(i) == '\\' )
+ while (i < len && t.image.charAt(i) == '\\')
+ {
i++;
+ }
-
- if ( (i % 2) != 0 )
+ if ((i % 2) != 0)
escaped = true;
if (i > 0)
escPrefix = t.image.substring(0, i / 2 );
-
+
t.image = t.image.substring(i);
}
@@ -572,43 +579,43 @@
* and snip it off, except for the
* last $
*/
-
+
int loc1 = t.image.lastIndexOf('$');
-
+
/*
* if we have extra stuff, loc > 0
- * ex. '#$foo' so attach that to
+ * ex. '#$foo' so attach that to
* the prefix.
*/
- if( loc1 > 0)
+ if (loc1 > 0)
{
morePrefix = morePrefix + t.image.substring(0, loc1);
t.image = t.image.substring(loc1);
}
-
+
/*
- * Now it should be clean. Get the literal in case this reference
+ * Now it should be clean. Get the literal in case this reference
* isn't backed by the context at runtime, and then figure out what
* we are working with.
*/
nullString = literal();
-
+
if (t.image.startsWith("$!"))
{
referenceType = QUIET_REFERENCE;
-
+
/*
* only if we aren't escaped do we want to null the output
*/
if (!escaped)
nullString = "";
-
+
if (t.image.startsWith("$!{"))
{
/*
- * ex : $!{provider.Title}
+ * ex : $!{provider.Title}
*/
return t.next.image;
@@ -618,7 +625,7 @@
/*
* ex : $!provider.Title
*/
-
+
return t.image.substring(2);
}
}
@@ -630,28 +637,28 @@
referenceType = FORMAL_REFERENCE;
return t.next.image;
- }
- else if ( t.image.startsWith("$") )
+ }
+ else if (t.image.startsWith("$"))
{
/*
- * just nip off the '$' so we have
+ * just nip off the '$' so we have
* the root
*/
-
- referenceType = NORMAL_REFERENCE;
+
+ referenceType = NORMAL_REFERENCE;
return t.image.substring(1);
}
else
{
/*
* this is a 'RUNT', which can happen in certain circumstances where
- * the parser is fooled into believeing that an IDENTIFIER is a real
- * reference. Another 'dreaded' MORE hack :).
+ * the parser is fooled into believeing that an IDENTIFIER is a real
+ * reference. Another 'dreaded' MORE hack :).
*/
referenceType = RUNT;
return t.image;
}
-
+
}
public Object getVariableValue(Context context, String variable)
@@ -672,7 +679,7 @@
*
* @param literal String to render to when null
*/
- public void setLiteral( String literal )
+ public void setLiteral(String literal)
{
/*
* do only once
@@ -684,7 +691,7 @@
/**
* Override of the SimpleNode method literal()
- * Returns the literal representation of the
+ * Returns the literal representation of the
* node. Should be something like
* $<token>.
*/
@@ -696,4 +703,3 @@
return super.literal();
}
}
-
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>