Author: rich
Date: Wed Aug 25 17:24:10 2004
New Revision: 37050

Added:
   
incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/AbsolutePathType.java
   
incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ExternalPathOrActionType.java
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/ExternalRedirectController.jpf
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/externalRedirect.jsp
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/fullyQualifiedRedirect.jsp
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/index.jsp
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/relativeRedirect.jsp
Log:
Missed these files in revision 37049.  Ran patch, forgot to svn add.

BB: self (WinXP)



Added: 
incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/AbsolutePathType.java
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/AbsolutePathType.java
  Wed Aug 25 17:24:10 2004
@@ -0,0 +1,46 @@
+/**
+ * B E A   S Y S T E M S
+ * Copyright 2002-2004  BEA Systems, Inc.
+ *
+ * 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.
+ *
+ * $Header:$
+ */
+package org.apache.beehive.netui.compiler.grammar;
+
+import org.apache.beehive.netui.compiler.AnnotationMemberType;
+import org.apache.beehive.netui.compiler.AnnotationGrammar;
+import org.apache.beehive.netui.compiler.CompilerUtils;
+import com.sun.mirror.declaration.AnnotationTypeElementDeclaration;
+import com.sun.mirror.declaration.AnnotationValue;
+import com.sun.mirror.declaration.AnnotationMirror;
+import com.sun.mirror.declaration.MemberDeclaration;
+
+public class AbsolutePathType extends AnnotationMemberType {
+
+    public AbsolutePathType( String requiredRuntimeVersion, AnnotationGrammar 
parentGrammar )
+    {
+        super( requiredRuntimeVersion, parentGrammar);
+    }
+
+    protected Object onCheck(AnnotationTypeElementDeclaration valueDecl, 
AnnotationValue member, AnnotationMirror parentAnnotation, MemberDeclaration 
classMember)
+    {
+        String path = CompilerUtils.getString(parentAnnotation, PATH_ATTR, 
false);
+        if ( ! path.startsWith("/") )
+        {
+            addError(member, 
"error.absolute-path-required-for-external-redirect");
+        }
+
+        return null;
+    }
+}

Added: 
incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ExternalPathOrActionType.java
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ExternalPathOrActionType.java
  Wed Aug 25 17:24:10 2004
@@ -0,0 +1,47 @@
+/*
+ * B E A   S Y S T E M S
+ * Copyright 2002-2004  BEA Systems, Inc.
+ *
+ * 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.
+ *
+ * $Header:$
+ */
+package org.apache.beehive.netui.compiler.grammar;
+
+import org.apache.beehive.netui.compiler.AnnotationGrammar;
+import org.apache.beehive.netui.compiler.FlowControllerInfo;
+import org.apache.beehive.netui.compiler.CompilerUtils;
+import com.sun.mirror.declaration.AnnotationTypeElementDeclaration;
+import com.sun.mirror.declaration.AnnotationValue;
+import com.sun.mirror.declaration.AnnotationMirror;
+import com.sun.mirror.declaration.MemberDeclaration;
+
+public class ExternalPathOrActionType extends WebappPathOrActionType
+{
+    public ExternalPathOrActionType( boolean pathMustBeRelative, String 
requiredRuntimeVersion,
+                                   AnnotationGrammar parentGrammar, 
FlowControllerInfo fcInfo )
+    {
+        super( pathMustBeRelative, requiredRuntimeVersion, parentGrammar, 
fcInfo );
+    }
+
+    protected Object onCheck( AnnotationTypeElementDeclaration valueDecl, 
AnnotationValue value,
+                              AnnotationMirror parentAnnotation, 
MemberDeclaration classMember )
+    {
+        // if we have an external redirect just bail
+        if (CompilerUtils.getBoolean(parentAnnotation, EXTERNAL_REDIRECT_ATTR, 
false))
+        {
+            return null;
+        }
+        return super.onCheck( valueDecl, value, parentAnnotation, classMember 
);
+    }
+}

Added: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/ExternalRedirectController.jpf
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/ExternalRedirectController.jpf
 Wed Aug 25 17:24:10 2004
@@ -0,0 +1,94 @@
+package pageFlowCore.externalRedirect;
+
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.Forward;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
[EMAIL PROTECTED](
+    simpleActions = { 
+        @Jpf.SimpleAction(name = "simpleRelative", path = 
"relativeRedirect.jsp", redirect = true), 
+        @Jpf.SimpleAction(name = "simpleFullyQualified", path = 
"/pageFlowCore/externalRedirect/fullyQualifiedRedirect.jsp", redirect = true), 
+        @Jpf.SimpleAction(name = "simpleExternal", path = 
"/coreWeb/pageFlowCore/externalRedirect/externalRedirect.jsp", externalRedirect 
= true)
+    })
+public class ExternalRedirectController extends PageFlowController
+{
+    @Jpf.Action(
+        forwards={
+           @Jpf.Forward(name="index", path="index.jsp")
+        }
+    )
+    protected Forward begin()
+    {
+        return new Forward("index");
+    }
+
+
+
+        
+    @Jpf.Action(
+        forwards = { 
+            @Jpf.Forward(name = "success", path = "relativeRedirect.jsp", 
redirect = true)
+        }
+    )
+    protected Forward relativeRedirect()
+    {
+        Forward forward = new Forward("success");
+
+        return forward;
+    }
+
+        
+    @Jpf.Action(
+        forwards = { 
+            @Jpf.Forward(name = "success", path = 
"/pageFlowCore/externalRedirect/fullyQualifiedRedirect.jsp", redirect = true)
+        }
+    )
+    protected Forward fullyQualifiedRedirect()
+    {
+        Forward forward = new Forward("success");
+
+        return forward;
+    }
+
+        
+    @Jpf.Action(
+        forwards = { 
+            @Jpf.Forward(name = "success", path = 
"/coreWeb/pageFlowCore/externalRedirect/externalRedirect.jsp", externalRedirect 
= true)
+        }
+    )
+    protected Forward externalRedirect()
+    {
+        Forward forward = new Forward("success");
+
+        return forward;
+    }
+}
+
[EMAIL PROTECTED](value = { 
+    "<!-- This data is auto-generated. Hand-editing this section is not 
recommended. -->", 
+    "<view-properties>", 
+    "<pageflow-object id='action:begin.do'><property value='80' 
name='x'/><property value='40' name='y'/></pageflow-object>", 
+    "<pageflow-object id='action:relativeRedirect.do'><property value='360' 
name='x'/><property value='100' name='y'/></pageflow-object>", 
+    "<pageflow-object id='action:fullyQualifiedRedirect.do'><property 
value='360' name='x'/><property value='180' name='y'/></pageflow-object>", 
+    "<pageflow-object id='action:externalRedirect.do'><property value='360' 
name='x'/><property value='320' name='y'/></pageflow-object>", 
+    "<pageflow-object id='page:index.jsp'><property value='80' 
name='x'/><property value='200' name='y'/></pageflow-object>", 
+    "<pageflow-object id='forward:[EMAIL PROTECTED]:begin.do@'><property 
value='80,80,80,80' name='elbowsX'/><property value='84,120,120,156' 
name='elbowsY'/><property value='South_1' name='fromPort'/><property 
value='North_1' name='toPort'/><property value='index' 
name='label'/></pageflow-object>", 
+    "<pageflow-object id='page:relativeRedirect.jsp'><property value='540' 
name='x'/><property value='100' name='y'/></pageflow-object>", 
+    "<pageflow-object id='forward:[EMAIL 
PROTECTED]:relativeRedirect.do@'><property value='396,450,450,504' 
name='elbowsX'/><property value='92,92,92,92' name='elbowsY'/><property 
value='East_1' name='fromPort'/><property value='West_1' 
name='toPort'/><property value='success' name='label'/></pageflow-object>", 
+    "<pageflow-object 
id='page:/tests/externalRedirect/fullyQualifiedRedirect.jsp'><property 
value='540' name='x'/><property value='240' name='y'/></pageflow-object>", 
+    "<pageflow-object id='forward:path#success#/tests/externalRedirect/[EMAIL 
PROTECTED]:fullyQualifiedRedirect.do@'><property value='396,450,450,504' 
name='elbowsX'/><property value='172,172,221,221' name='elbowsY'/><property 
value='East_1' name='fromPort'/><property value='West_0' 
name='toPort'/><property value='success' name='label'/></pageflow-object>", 
+    "<pageflow-object 
id='page:/extRedirectWeb/tests/externalRedirect/externalRedirect.jsp'><property 
value='360' name='x'/><property value='440' name='y'/></pageflow-object>", 
+    "<pageflow-object 
id='forward:path#success#/extRedirectWeb/tests/externalRedirect/[EMAIL 
PROTECTED]:externalRedirect.do@'><property value='360,360,360,360' 
name='elbowsX'/><property value='364,380,380,396' name='elbowsY'/><property 
value='South_1' name='fromPort'/><property value='North_1' 
name='toPort'/><property value='success' name='label'/></pageflow-object>", 
+    "<pageflow-object id='page:externalRedirect.jsp'><property value='540' 
name='x'/><property value='300' name='y'/></pageflow-object>", 
+    "<pageflow-object id='page:fullyQualifiedRedirect.jsp'><property 
value='540' name='x'/><property value='180' name='y'/></pageflow-object>", 
+    "<pageflow-object id='action-call:@page:/tests/externalRedirect/[EMAIL 
PROTECTED]@action:begin.do@'><property value='504,310,310,116' 
name='elbowsX'/><property value='232,232,21,21' name='elbowsY'/><property 
value='West_1' name='fromPort'/><property value='East_0' 
name='toPort'/></pageflow-object>", 
+    "<pageflow-object id='action-call:@page:[EMAIL 
PROTECTED]@action:begin.do@'><property value='504,310,310,116' 
name='elbowsX'/><property value='161,161,43,43' name='elbowsY'/><property 
value='West_0' name='fromPort'/><property value='East_2' 
name='toPort'/></pageflow-object>", 
+    "<pageflow-object id='action-call:@page:[EMAIL 
PROTECTED]@action:begin.do@'><property value='504,310,310,116' 
name='elbowsX'/><property value='281,281,43,43' name='elbowsY'/><property 
value='West_0' name='fromPort'/><property value='East_2' 
name='toPort'/></pageflow-object>", 
+    "<pageflow-object id='action-call:@page:[EMAIL 
PROTECTED]@action:externalRedirect.do@'><property value='116,220,220,324' 
name='elbowsX'/><property value='203,203,312,312' name='elbowsY'/><property 
value='East_2' name='fromPort'/><property value='West_1' 
name='toPort'/></pageflow-object>", 
+    "<pageflow-object id='action-call:@page:[EMAIL 
PROTECTED]@action:relativeRedirect.do@'><property value='116,220,220,324' 
name='elbowsX'/><property value='192,192,92,92' name='elbowsY'/><property 
value='East_1' name='fromPort'/><property value='West_1' 
name='toPort'/></pageflow-object>", 
+    "<pageflow-object id='action-call:@page:[EMAIL 
PROTECTED]@action:begin.do@'><property value='504,310,310,116' 
name='elbowsX'/><property value='81,81,21,21' name='elbowsY'/><property 
value='West_0' name='fromPort'/><property value='East_0' 
name='toPort'/></pageflow-object>", 
+    "<pageflow-object id='action-call:@page:[EMAIL 
PROTECTED]@action:fullyQualifiedRedirect.do@'><property value='116,220,220,324' 
name='elbowsX'/><property value='203,203,172,172' name='elbowsY'/><property 
value='East_2' name='fromPort'/><property value='West_1' 
name='toPort'/></pageflow-object>", 
+    "</view-properties>"
+})
+interface VIEW_PROPERTIES { }
+

Added: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/externalRedirect.jsp
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/externalRedirect.jsp
   Wed Aug 25 17:24:10 2004
@@ -0,0 +1,18 @@
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib prefix="netui" uri="http://beehive.apache.org/netui/tags-html-1.0"%>
+<%@ taglib prefix="netui-data" 
uri="http://beehive.apache.org/netui/tags-databinding-1.0"%>
+<%@ taglib prefix="netui-template" 
uri="http://beehive.apache.org/netui/tags-template-1.0"%>
+
+
+<netui:html>
+    <head>
+        <netui:base/>
+    </head>
+    <netui:body>
+        This is the External Redirect page.<br>
+        <netui:anchor action="begin">back</netui:anchor>
+        to start page.
+    </netui:body>
+</netui:html>
+
+  

Added: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/fullyQualifiedRedirect.jsp
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/fullyQualifiedRedirect.jsp
     Wed Aug 25 17:24:10 2004
@@ -0,0 +1,18 @@
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib prefix="netui" uri="http://beehive.apache.org/netui/tags-html-1.0"%>
+<%@ taglib prefix="netui-data" 
uri="http://beehive.apache.org/netui/tags-databinding-1.0"%>
+<%@ taglib prefix="netui-template" 
uri="http://beehive.apache.org/netui/tags-template-1.0"%>
+
+
+<netui:html>
+    <head>
+        <netui:base/>
+    </head>
+    <netui:body>
+        This is the Fully Qualifed Redirect page.<br>
+        <netui:anchor action="begin">back</netui:anchor>
+        to start page.
+    </netui:body>
+</netui:html>
+
+  

Added: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/index.jsp
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/index.jsp
      Wed Aug 25 17:24:10 2004
@@ -0,0 +1,41 @@
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib prefix="netui" uri="http://beehive.apache.org/netui/tags-html-1.0"%>
+<%@ taglib prefix="netui-data" 
uri="http://beehive.apache.org/netui/tags-databinding-1.0"%>
+<%@ taglib prefix="netui-template" 
uri="http://beehive.apache.org/netui/tags-template-1.0"%>
+
+
+<netui:html>
+    <head>
+        <netui:base/>
+    </head>
+    <netui:body>
+    
+        <p>Actions for redirect...
+        <ul>
+            <li>
+                <netui:anchor action="relativeRedirect">Relative Redirect 
Test</netui:anchor>
+            </li>
+            <li>
+                <netui:anchor action="fullyQualifiedRedirect">Fully Qualified 
Path Redirect Test</netui:anchor>
+            </li>
+            <li>
+                <netui:anchor action="externalRedirect">External Page Redirect 
Test</netui:anchor>
+            </li>
+        </ul>
+        <hr>
+        <p>Simple Actions for redirect...
+        <ul>        
+            <li>
+                <netui:anchor action="simpleRelative">Simple Action Relative 
Redirect Test</netui:anchor>
+            </li>
+            <li>
+                <netui:anchor action="simpleFullyQualified">Simple Action 
Fully Qualified Path Redirect Test</netui:anchor>
+            </li>
+            <li>
+                <netui:anchor action="simpleExternal">Simple Action External 
Page Redirect Test</netui:anchor>
+            </li></ul>
+        </ul>
+            
+    </netui:body>
+</netui:html>
+

Added: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/relativeRedirect.jsp
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/externalRedirect/relativeRedirect.jsp
   Wed Aug 25 17:24:10 2004
@@ -0,0 +1,18 @@
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib prefix="netui" uri="http://beehive.apache.org/netui/tags-html-1.0"%>
+<%@ taglib prefix="netui-data" 
uri="http://beehive.apache.org/netui/tags-databinding-1.0"%>
+<%@ taglib prefix="netui-template" 
uri="http://beehive.apache.org/netui/tags-template-1.0"%>
+
+
+<netui:html>
+    <head>
+        <netui:base/>
+    </head>
+    <netui:body>
+        This is the Relative Redirect page.<br>
+        <netui:anchor action="begin">back</netui:anchor>
+        to start page.
+    </netui:body>
+</netui:html>
+
+  

Reply via email to