flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cd...@apache.org
Subject [43/51] [partial] flex-blazeds git commit: - Moved old stuff to an "attic" directory - Changed the directory structure to comply to a default maven directory structure
Date Tue, 04 Aug 2015 10:07:17 GMT
http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/WEB-INF/lib/fxgutils.jar
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/WEB-INF/lib/fxgutils.jar b/attic/qa/apps/qa-manual/WEB-INF/lib/fxgutils.jar
new file mode 100644
index 0000000..f028084
Binary files /dev/null and b/attic/qa/apps/qa-manual/WEB-INF/lib/fxgutils.jar differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/WEB-INF/lib/jaxrpc.jar
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/WEB-INF/lib/jaxrpc.jar b/attic/qa/apps/qa-manual/WEB-INF/lib/jaxrpc.jar
new file mode 100644
index 0000000..a2c13d9
Binary files /dev/null and b/attic/qa/apps/qa-manual/WEB-INF/lib/jaxrpc.jar differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/WEB-INF/lib/log4j.jar
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/WEB-INF/lib/log4j.jar b/attic/qa/apps/qa-manual/WEB-INF/lib/log4j.jar
new file mode 100644
index 0000000..6251307
Binary files /dev/null and b/attic/qa/apps/qa-manual/WEB-INF/lib/log4j.jar differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/WEB-INF/lib/saaj.jar
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/WEB-INF/lib/saaj.jar b/attic/qa/apps/qa-manual/WEB-INF/lib/saaj.jar
new file mode 100644
index 0000000..4ea696e
Binary files /dev/null and b/attic/qa/apps/qa-manual/WEB-INF/lib/saaj.jar differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/WEB-INF/lib/wsdl4j-1.5.1.jar
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/WEB-INF/lib/wsdl4j-1.5.1.jar b/attic/qa/apps/qa-manual/WEB-INF/lib/wsdl4j-1.5.1.jar
new file mode 100644
index 0000000..c6254ee
Binary files /dev/null and b/attic/qa/apps/qa-manual/WEB-INF/lib/wsdl4j-1.5.1.jar differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/WEB-INF/src/qa/utils/mxml/MXMLCServlet.java
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/WEB-INF/src/qa/utils/mxml/MXMLCServlet.java b/attic/qa/apps/qa-manual/WEB-INF/src/qa/utils/mxml/MXMLCServlet.java
new file mode 100644
index 0000000..0fe3d28
--- /dev/null
+++ b/attic/qa/apps/qa-manual/WEB-INF/src/qa/utils/mxml/MXMLCServlet.java
@@ -0,0 +1,299 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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 qa.utils.mxml;
+
+import org.apache.tools.ant.BuildListener;
+import org.apache.tools.ant.DefaultLogger;
+import org.apache.tools.ant.Project;
+import org.apache.tools.ant.Target;
+
+import flex.messaging.log.Log;
+import flex.ant.HtmlWrapperTask;
+import flex.ant.MxmlcTask;
+import flex.ant.config.NestedAttributeElement;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.*;
+
+public class MXMLCServlet extends HttpServlet
+{
+    
+    private static final long serialVersionUID = 2788674952911587822L;
+    private static final String DEBUG_LOG_CATEGORY = "QA.MXMLC.SERVLET";
+    
+    private String servicesFilePath;
+    private String flexConfigPath;
+    private String contextRealPath;
+    private String sdkHomePath;
+    private boolean mxmlcExists = false;
+    private boolean antDebug = false;
+    
+    @Override
+    public void init() throws ServletException
+    {
+        super.init();
+        contextRealPath = getServletContext().getRealPath("/");
+        
+        String _adebug = getInitParameter("ant-debug");
+        if(_adebug != null)
+            antDebug = new Boolean(_adebug).booleanValue();
+                
+        flexConfigPath = contextRealPath + "WEB-INF/flex/flex-config.xml";
+        
+        servicesFilePath = getInitParameter("services-config");
+        if(servicesFilePath == null)
+            servicesFilePath = contextRealPath + "WEB-INF/flex/services-config.xml";
+        
+        String _flexHome = getInitParameter("FLEX_HOME");
+        if(_flexHome != null)
+        {
+            // absolute path to FLEX_HOME
+            if(findMxmlc(_flexHome))
+            {
+                sdkHomePath = _flexHome;
+                mxmlcExists = true;
+            }
+            // relative path to FLEX_HOME
+            else if(findMxmlc(contextRealPath + _flexHome))
+            {
+                sdkHomePath = contextRealPath + _flexHome;
+                mxmlcExists = true;
+            }
+            else
+                logDebug("FLEX_HOME " + _flexHome + " couldn't be found.  Webtier compiler won't be available");
+        }
+        else
+            logDebug("FLEX_HOME not set, Webtier compiler won't be available");
+        // if FLEX_HOME not found, delay the error in case nobody is using the webtier
+    }
+    
+    private boolean findMxmlc(String path)
+    {
+        return new File(path + File.separator + "bin" + File.separator + "mxmlc").exists();
+    }
+
+    @Override
+    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
+    {
+        String requestFile = req.getServletPath();
+        if (requestFile.endsWith(".swf"))
+        {
+            File swfFile = new File(getServletContext().getRealPath(req.getServletPath()));
+            
+            writeSwfFile(resp, swfFile);
+            return;
+        }
+        PrintWriter out = new PrintWriter(resp.getOutputStream());
+
+        if (mxmlcExists)
+        {
+            String fileLocationPath = getServletContext().getRealPath(req.getServletPath().substring(0, req.getServletPath().lastIndexOf('/')+1));
+            boolean noEndingSlash = fileLocationPath.charAt(fileLocationPath.length() - 1) != File.separatorChar;
+            String fileName = req.getServletPath().substring(req.getServletPath().lastIndexOf('/')+1);
+            String fileNameWithoutExt = fileName.substring(0,fileName.indexOf(".mxml"));
+            String fileLocationPathSlashEnding = fileLocationPath + (noEndingSlash ? File.separator : "");
+            
+            Boolean debug = "true".equals(req.getParameter("debug")) ? true : false;
+           
+            File mxmlFile = new File(fileLocationPathSlashEnding + fileName);
+            File swfFile;
+            File htmlFile;
+            
+            if(mxmlFile.exists())
+            {
+                swfFile = new File(fileLocationPathSlashEnding + fileNameWithoutExt + ".swf");
+                htmlFile = new File(fileLocationPathSlashEnding + fileNameWithoutExt + ".html");
+
+                if (swfFile.exists())
+                {
+                    swfFile.delete();
+                }
+                if (htmlFile.exists())
+                {
+                    htmlFile.delete();
+                }
+            }
+            else
+            {
+                // mxml file not found.  shouldn't be here
+                throw new IOException(fileName + " not found");
+            }
+            Project project = new Project();
+            try
+            {
+                project.setName("WebTier Compiler");
+                project.setBaseDir(new File(contextRealPath));
+                project.setProperty("FLEX_HOME", sdkHomePath);
+                project.setProperty("serviceConfig", servicesFilePath);
+                project.setProperty("flexConfig", flexConfigPath);   
+                project.setProperty("mxmlFileLocation", fileLocationPathSlashEnding);
+                project.setProperty("mxmlFile", fileNameWithoutExt);                
+                project.setProperty("debug", debug.toString());
+                project.setProperty("contextRoot", req.getContextPath());
+                project.addBuildListener(getLogListener());
+                
+                project.init();
+                // setup the project
+                addMXMLCTarget(project);
+                // compile the mxml
+                project.executeTarget("compile");
+                if (swfFile.exists() && htmlFile.exists())                    
+                    writeWrapperHtml(resp, out, htmlFile);
+                else
+                {
+                    out.print("<h1>Internal error.</h1><br/>Generated swf and wrapper couldn't be found.</html>");
+                    out.flush();
+                }
+            }
+            catch (Exception e)
+            {
+                out.print("<h1>Failed to compile.</h1><br/>Please see server console log for detailed error message.</html>");
+                out.flush();
+                project.fireBuildFinished(e);
+                //e.printStackTrace();
+            }
+        }
+        else
+        {
+            out.print("<h1>FLEX SDK not found</h1><br></html>");
+            out.flush();
+        }
+    }
+    
+    // send the html content to the output
+    private void writeWrapperHtml(HttpServletResponse resp, PrintWriter out, File htmlFile) throws IOException
+    {
+        resp.addHeader("Cache-Control","no-cache");
+        resp.setContentType("text/html");
+        FileInputStream fis = null;
+        StringBuffer buffer = new StringBuffer();
+        try
+        {
+            fis = new FileInputStream(htmlFile);
+            int c;
+            while ((c = fis.read()) > -1)
+            {
+                buffer.append((char) c);
+            }
+        }
+        finally
+        {
+            try { fis.close();} catch(Exception e) {}
+        }
+        out.print(buffer.toString());
+        resp.setContentLength(buffer.length());
+        out.flush();        
+    }
+
+    private void writeSwfFile(HttpServletResponse resp,  File swfFile) throws IOException
+    {
+        if (swfFile.exists())
+        {
+            OutputStream out = resp.getOutputStream();
+            ByteArrayOutputStream bytes = new ByteArrayOutputStream();
+            FileInputStream fis = null;
+            resp.addHeader("Cache-Control","no-cache");
+            resp.setContentType("application/x-shockwave-flash");
+            try
+            {
+                fis = new FileInputStream(swfFile);
+                int b;
+                while ((b=fis.read()) > -1)
+                {
+                    bytes.write(b);
+                }
+            }
+            finally
+            {
+                try { fis.close();} catch(Exception e) {}
+            }
+            resp.setContentLength(bytes.size());
+            out.write(bytes.toByteArray());
+            out.flush();
+        }
+        else
+        {
+            resp.sendError(HttpServletResponse.SC_NOT_FOUND);
+        }
+    }
+    
+    // add mxmlc and html wrapper tasks to the project
+    private void addMXMLCTarget(Project project)
+    {
+        String mxmlFile = project.getProperty("mxmlFile");
+        String mxmlFileLocation = project.getProperty("mxmlFileLocation");
+        
+        Target target = new Target();
+        target.setName("compile");
+        project.addTarget("compile", target);
+        
+        MxmlcTask mxmlcTask = new MxmlcTask();
+        mxmlcTask.setTaskName("mxmlc");
+        mxmlcTask.setFile(mxmlFileLocation + mxmlFile + ".mxml");
+        mxmlcTask.setFork(true);
+        
+        mxmlcTask.setDynamicAttribute("services", servicesFilePath);
+        mxmlcTask.setDynamicAttribute("keep-generated-actionscript", "false");
+        mxmlcTask.setDynamicAttribute("debug", project.getProperty("debug"));
+        mxmlcTask.setDynamicAttribute("context-root", project.getProperty("contextRoot"));
+        ((NestedAttributeElement)mxmlcTask.createDynamicElement("load-config")).setDynamicAttribute("filename", flexConfigPath);
+        
+        mxmlcTask.setProject(project);
+        target.addTask(mxmlcTask);  
+        
+        HtmlWrapperTask htmlTask = new HtmlWrapperTask();
+        htmlTask.setTaskName("html-wrapper");
+        htmlTask.setTitle( mxmlFile+ " Flex Application");
+        htmlTask.setFile(mxmlFile +".html");
+        htmlTask.setHeight("100%");
+        htmlTask.setWidth("100%");
+        htmlTask.setApplication(mxmlFile + " app");
+        htmlTask.setSwf(mxmlFile);
+        htmlTask.setOutput(mxmlFileLocation);
+        
+        htmlTask.setProject(project);
+        target.addTask(htmlTask);
+    }
+        
+    // create a build listener for log output and use System out and err.
+    // since the actual compile info is sent to the output stream,
+    // message from error stream isn't helpful at all.  Also you
+    // don't want to send the output stream to the browser either.
+    // Ideally write your Listener to redirect the output.
+    // TODO: enhance the logger and output failure to the browser 
+    private BuildListener getLogListener()
+    {
+        DefaultLogger consoleLogger = new DefaultLogger();
+        
+        consoleLogger.setErrorPrintStream(System.err);
+        consoleLogger.setOutputPrintStream(System.out);
+        if(antDebug)
+            consoleLogger.setMessageOutputLevel(Project.MSG_DEBUG);
+        else 
+            consoleLogger.setMessageOutputLevel(Project.MSG_INFO);
+        return consoleLogger;
+    }
+    
+    // debug log
+    private void logDebug(String s)
+    {
+        Log.getLogger(DEBUG_LOG_CATEGORY).debug(s);
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/WEB-INF/web.xml b/attic/qa/apps/qa-manual/WEB-INF/web.xml
new file mode 100644
index 0000000..d20adf1
--- /dev/null
+++ b/attic/qa/apps/qa-manual/WEB-INF/web.xml
@@ -0,0 +1,181 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+
+-->
+
+<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
+
+<web-app>
+    <display-name>Flex QA Web Application</display-name>
+    <description>Flex Presentation Server qa web application</description>
+    
+    <context-param>
+        <param-name>brokerURI</param-name>
+        <param-value>/WEB-INF/activemq.xml</param-value>
+    </context-param>
+
+    <!-- Http Flex Session attribute and binding listener support -->
+    <listener>
+        <listener-class>flex.messaging.HttpFlexSession</listener-class>
+    </listener>
+    
+    <!-- Active MQ Spring Context Listener-->
+    <listener>
+        <listener-class>org.apache.activemq.web.SpringBrokerContextListener</listener-class>
+    </listener>
+    
+    <!-- Spring Configuration. Uncomment if using Spring. 
+    <listener>
+        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
+    </listener> -->
+
+    <!-- MessageBroker Servlet -->
+    <servlet>
+        <servlet-name>MessageBrokerServlet</servlet-name>
+        <display-name>MessageBrokerServlet</display-name>
+        <servlet-class>flex.messaging.MessageBrokerServlet</servlet-class>
+        <init-param>
+            <param-name>services.configuration.file</param-name>
+            <param-value>/WEB-INF/flex/services-config.xml</param-value>
+        </init-param>
+        <load-on-startup>1</load-on-startup>
+    </servlet>
+
+    <servlet>
+        <servlet-name>HttpXmlEchoService</servlet-name>
+        <display-name>HttpXmlEchoService</display-name>
+        <servlet-class>dev.httpservice.HttpXmlEchoService</servlet-class>
+    </servlet>
+    
+    <servlet>
+        <servlet-name>AxisServlet</servlet-name>
+        <display-name>Apache-Axis Servlet</display-name>
+        <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
+    </servlet>
+    
+    <servlet>
+        <servlet-name>AdminServlet</servlet-name>
+        <display-name>Axis Admin Servlet</display-name>
+        <servlet-class>
+            org.apache.axis.transport.http.AdminServlet
+        </servlet-class>
+        <load-on-startup>100</load-on-startup>
+    </servlet>
+
+    <!--- Add RDS servlets -->
+    <servlet>
+        <servlet-name>RDSDispatchServlet</servlet-name>
+        <display-name>RDSDispatchServlet</display-name>
+        <servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
+        <init-param>
+            <param-name>useAppserverSecurity</param-name>
+            <param-value>false</param-value>
+        </init-param>
+        <!-- Must be loaded after MessageBrokerServlet -->        
+        <load-on-startup>10</load-on-startup>
+    </servlet>
+
+    <!-- Flex task Servlet -->
+    <servlet>
+       <servlet-name>QAAntTaskCompilerServlet</servlet-name>
+       <display-name>QAAntTaskCompilerServlet</display-name>
+       <servlet-class>qa.utils.mxml.MXMLCServlet</servlet-class>
+       <init-param>
+            <param-name>ant-debug</param-name>
+            <param-value>false</param-value>
+       </init-param>
+       <!-- use either absolute or relative path to the FLEX_HOME -->
+       <init-param>
+            <param-name>FLEX_HOME</param-name>
+            <param-value>../../..</param-value>
+       </init-param>
+    </servlet>
+
+    <servlet-mapping id="RDS_DISPATCH_MAPPING">
+        <servlet-name>RDSDispatchServlet</servlet-name>
+        <url-pattern>/CFIDE/main/ide.cfm</url-pattern>
+    </servlet-mapping> 
+    <!-- End Add RDS servlets -->
+
+    <servlet-mapping>
+        <servlet-name>AdminServlet</servlet-name>
+        <url-pattern>/servlet/AdminServlet</url-pattern>
+     </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>AxisServlet</servlet-name>
+        <url-pattern>/axis/services/*</url-pattern>
+    </servlet-mapping>
+    
+    <servlet-mapping>
+        <servlet-name>AxisServlet</servlet-name>
+        <url-pattern>/axis/servlet/AxisServlet</url-pattern>
+     </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>AxisServlet</servlet-name>
+        <url-pattern>*.jws</url-pattern>
+    </servlet-mapping>
+    
+    <servlet-mapping>
+        <servlet-name>HttpXmlEchoService</servlet-name>
+        <url-pattern>/httpxmlechoservice</url-pattern>
+    </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>MessageBrokerServlet</servlet-name>
+        <url-pattern>/messagebroker/*</url-pattern>
+    </servlet-mapping>
+    
+    <servlet-mapping>
+        <servlet-name>QAAntTaskCompilerServlet</servlet-name>
+        <url-pattern>*.mxml</url-pattern>
+    </servlet-mapping>
+    
+    <!-- for WebSphere deployment, please uncomment -->
+    <!--
+    <resource-ref>
+        <description>Flex Messaging WorkManager</description>
+        <res-ref-name>wm/MessagingWorkManager</res-ref-name>
+        <res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type>
+        <res-auth>Container</res-auth>
+        <res-sharing-scope>Shareable</res-sharing-scope>
+    </resource-ref>
+    -->    
+     
+    <mime-mapping>
+        <extension>wsdl</extension>
+        <mime-type>text/xml</mime-type>
+    </mime-mapping>
+  
+    <mime-mapping>
+        <extension>xsd</extension>
+        <mime-type>text/xml</mime-type>
+    </mime-mapping>
+  
+    <mime-mapping>
+        <extension>xml</extension>
+        <mime-type>text/xml</mime-type>
+    </mime-mapping>
+    
+    <mime-mapping>
+        <extension>swf</extension>
+        <mime-type>application/x-shockwave-flash</mime-type>
+    </mime-mapping>
+    
+</web-app>

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/history/history.css
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/history/history.css b/attic/qa/apps/qa-manual/history/history.css
new file mode 100644
index 0000000..b19cfed
--- /dev/null
+++ b/attic/qa/apps/qa-manual/history/history.css
@@ -0,0 +1,24 @@
+/*
+ *
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You 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.
+ *
+ */
+/* This CSS stylesheet defines styles used by required elements in a flex application page that supports browser history */
+
+#ie_historyFrame { width: 0px; height: 0px; display:none }
+#firefox_anchorDiv { width: 0px; height: 0px; display:none }
+#safari_formDiv { width: 0px; height: 0px; display:none }
+#safari_rememberDiv { width: 0px; height: 0px; display:none }

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/history/history.js
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/history/history.js b/attic/qa/apps/qa-manual/history/history.js
new file mode 100644
index 0000000..4db119c
--- /dev/null
+++ b/attic/qa/apps/qa-manual/history/history.js
@@ -0,0 +1,696 @@
+/*
+ *
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You 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.
+ *
+ */
+BrowserHistoryUtils = {
+    addEvent: function(elm, evType, fn, useCapture) {
+        useCapture = useCapture || false;
+        if (elm.addEventListener) {
+            elm.addEventListener(evType, fn, useCapture);
+            return true;
+        }
+        else if (elm.attachEvent) {
+            var r = elm.attachEvent('on' + evType, fn);
+            return r;
+        }
+        else {
+            elm['on' + evType] = fn;
+        }
+    }
+}
+
+BrowserHistory = (function() {
+    // type of browser
+    var browser = {
+        ie: false, 
+        ie8: false, 
+        firefox: false, 
+        safari: false, 
+        opera: false, 
+        version: -1
+    };
+
+    // Default app state URL to use when no fragment ID present
+    var defaultHash = '';
+
+    // Last-known app state URL
+    var currentHref = document.location.href;
+
+    // Initial URL (used only by IE)
+    var initialHref = document.location.href;
+
+    // Initial URL (used only by IE)
+    var initialHash = document.location.hash;
+
+    // History frame source URL prefix (used only by IE)
+    var historyFrameSourcePrefix = 'history/historyFrame.html?';
+
+    // History maintenance (used only by Safari)
+    var currentHistoryLength = -1;
+    
+    // Flag to denote the existence of onhashchange
+    var browserHasHashChange = false;
+
+    var historyHash = [];
+
+    var initialState = createState(initialHref, initialHref + '#' + initialHash, initialHash);
+
+    var backStack = [];
+    var forwardStack = [];
+
+    var currentObjectId = null;
+
+    //UserAgent detection
+    var useragent = navigator.userAgent.toLowerCase();
+
+    if (useragent.indexOf("opera") != -1) {
+        browser.opera = true;
+    } else if (useragent.indexOf("msie") != -1) {
+        browser.ie = true;
+        browser.version = parseFloat(useragent.substring(useragent.indexOf('msie') + 4));
+        if (browser.version == 8)
+        {
+            browser.ie = false;
+            browser.ie8 = true;
+        }
+    } else if (useragent.indexOf("safari") != -1) {
+        browser.safari = true;
+        browser.version = parseFloat(useragent.substring(useragent.indexOf('safari') + 7));
+    } else if (useragent.indexOf("gecko") != -1) {
+        browser.firefox = true;
+    }
+
+    if (browser.ie == true && browser.version == 7) {
+        window["_ie_firstload"] = false;
+    }
+
+    function hashChangeHandler()
+    {
+        currentHref = document.location.href;
+        var flexAppUrl = getHash();
+        //ADR: to fix multiple
+        if (typeof BrowserHistory_multiple != "undefined" && BrowserHistory_multiple == true) {
+            var pl = getPlayers();
+            for (var i = 0; i < pl.length; i++) {
+                pl[i].browserURLChange(flexAppUrl);
+            }
+        } else {
+            getPlayer().browserURLChange(flexAppUrl);
+        }
+    }
+
+    // Accessor functions for obtaining specific elements of the page.
+    function getHistoryFrame()
+    {
+        return document.getElementById('ie_historyFrame');
+    }
+
+    function getFormElement()
+    {
+        return document.getElementById('safari_formDiv');
+    }
+
+    function getRememberElement()
+    {
+        return document.getElementById("safari_remember_field");
+    }
+
+    // Get the Flash player object for performing ExternalInterface callbacks.
+    // Updated for changes to SWFObject2.
+    function getPlayer(id) {
+        var i;
+
+		if (id && document.getElementById(id)) {
+			var r = document.getElementById(id);
+			if (typeof r.SetVariable != "undefined") {
+				return r;
+			}
+			else {
+				var o = r.getElementsByTagName("object");
+				var e = r.getElementsByTagName("embed");
+                for (i = 0; i < o.length; i++) {
+                    if (typeof o[i].browserURLChange != "undefined")
+                        return o[i];
+                }
+                for (i = 0; i < e.length; i++) {
+                    if (typeof e[i].browserURLChange != "undefined")
+                        return e[i];
+                }
+			}
+		}
+		else {
+			var o = document.getElementsByTagName("object");
+			var e = document.getElementsByTagName("embed");
+            for (i = 0; i < e.length; i++) {
+                if (typeof e[i].browserURLChange != "undefined")
+                {
+                    return e[i];
+                }
+            }
+            for (i = 0; i < o.length; i++) {
+                if (typeof o[i].browserURLChange != "undefined")
+                {
+                    return o[i];
+                }
+            }
+		}
+		return undefined;
+	}
+    
+    function getPlayers() {
+        var i;
+        var players = [];
+        if (players.length == 0) {
+            var tmp = document.getElementsByTagName('object');
+            for (i = 0; i < tmp.length; i++)
+            {
+                if (typeof tmp[i].browserURLChange != "undefined")
+                    players.push(tmp[i]);
+            }
+        }
+        if (players.length == 0 || players[0].object == null) {
+            var tmp = document.getElementsByTagName('embed');
+            for (i = 0; i < tmp.length; i++)
+            {
+                if (typeof tmp[i].browserURLChange != "undefined")
+                    players.push(tmp[i]);
+            }
+        }
+        return players;
+    }
+
+	function getIframeHash() {
+		var doc = getHistoryFrame().contentWindow.document;
+		var hash = String(doc.location.search);
+		if (hash.length == 1 && hash.charAt(0) == "?") {
+			hash = "";
+		}
+		else if (hash.length >= 2 && hash.charAt(0) == "?") {
+			hash = hash.substring(1);
+		}
+		return hash;
+	}
+
+    /* Get the current location hash excluding the '#' symbol. */
+    function getHash() {
+       // It would be nice if we could use document.location.hash here,
+       // but it's faulty sometimes.
+       var idx = document.location.href.indexOf('#');
+       return (idx >= 0) ? document.location.href.substr(idx+1) : '';
+    }
+
+    /* Get the current location hash excluding the '#' symbol. */
+    function setHash(hash) {
+       // It would be nice if we could use document.location.hash here,
+       // but it's faulty sometimes.
+       if (hash == '') hash = '#'
+       document.location.hash = hash;
+    }
+
+    function createState(baseUrl, newUrl, flexAppUrl) {
+        return { 'baseUrl': baseUrl, 'newUrl': newUrl, 'flexAppUrl': flexAppUrl, 'title': null };
+    }
+
+    /* Add a history entry to the browser.
+     *   baseUrl: the portion of the location prior to the '#'
+     *   newUrl: the entire new URL, including '#' and following fragment
+     *   flexAppUrl: the portion of the location following the '#' only
+     */
+    function addHistoryEntry(baseUrl, newUrl, flexAppUrl) {
+
+        //delete all the history entries
+        forwardStack = [];
+
+        if (browser.ie) {
+            //Check to see if we are being asked to do a navigate for the first
+            //history entry, and if so ignore, because it's coming from the creation
+            //of the history iframe
+            if (flexAppUrl == defaultHash && document.location.href == initialHref && window['_ie_firstload']) {
+                currentHref = initialHref;
+                return;
+            }
+            if ((!flexAppUrl || flexAppUrl == defaultHash) && window['_ie_firstload']) {
+                newUrl = baseUrl + '#' + defaultHash;
+                flexAppUrl = defaultHash;
+            } else {
+                // for IE, tell the history frame to go somewhere without a '#'
+                // in order to get this entry into the browser history.
+                getHistoryFrame().src = historyFrameSourcePrefix + flexAppUrl;
+            }
+            setHash(flexAppUrl);
+        } else {
+
+            //ADR
+            if (backStack.length == 0 && initialState.flexAppUrl == flexAppUrl) {
+                initialState = createState(baseUrl, newUrl, flexAppUrl);
+            } else if(backStack.length > 0 && backStack[backStack.length - 1].flexAppUrl == flexAppUrl) {
+                backStack[backStack.length - 1] = createState(baseUrl, newUrl, flexAppUrl);
+            }
+
+            if (browser.safari && !browserHasHashChange) {
+                // for Safari, submit a form whose action points to the desired URL
+                if (browser.version <= 419.3) {
+                    var file = window.location.pathname.toString();
+                    file = file.substring(file.lastIndexOf("/")+1);
+                    getFormElement().innerHTML = '<form name="historyForm" action="'+file+'#' + flexAppUrl + '" method="GET"></form>';
+                    //get the current elements and add them to the form
+                    var qs = window.location.search.substring(1);
+                    var qs_arr = qs.split("&");
+                    for (var i = 0; i < qs_arr.length; i++) {
+                        var tmp = qs_arr[i].split("=");
+                        var elem = document.createElement("input");
+                        elem.type = "hidden";
+                        elem.name = tmp[0];
+                        elem.value = tmp[1];
+                        document.forms.historyForm.appendChild(elem);
+                    }
+                    document.forms.historyForm.submit();
+                } else {
+                    top.location.hash = flexAppUrl;
+                }
+                // We also have to maintain the history by hand for Safari
+                historyHash[history.length] = flexAppUrl;
+                _storeStates();
+            } else {
+                // Otherwise, just tell the browser to go there
+                setHash(flexAppUrl);
+            }
+        }
+        backStack.push(createState(baseUrl, newUrl, flexAppUrl));
+    }
+
+    function _storeStates() {
+        if (browser.safari) {
+            getRememberElement().value = historyHash.join(",");
+        }
+    }
+
+    function handleBackButton() {
+        //The "current" page is always at the top of the history stack.
+        var current = backStack.pop();
+        if (!current) { return; }
+        var last = backStack[backStack.length - 1];
+        if (!last && backStack.length == 0){
+            last = initialState;
+        }
+        forwardStack.push(current);
+    }
+
+    function handleForwardButton() {
+        //summary: private method. Do not call this directly.
+
+        var last = forwardStack.pop();
+        if (!last) { return; }
+        backStack.push(last);
+    }
+
+    function handleArbitraryUrl() {
+        //delete all the history entries
+        forwardStack = [];
+    }
+
+    /* Called periodically to poll to see if we need to detect navigation that has occurred */
+    function checkForUrlChange() {
+
+        if (browser.ie) {
+            if (currentHref != document.location.href && currentHref + '#' != document.location.href) {
+                //This occurs when the user has navigated to a specific URL
+                //within the app, and didn't use browser back/forward
+                //IE seems to have a bug where it stops updating the URL it
+                //shows the end-user at this point, but programatically it
+                //appears to be correct.  Do a full app reload to get around
+                //this issue.
+                if (browser.version < 7) {
+                    currentHref = document.location.href;
+                    document.location.reload();
+                } else {
+					if (getHash() != getIframeHash()) {
+						// this.iframe.src = this.blankURL + hash;
+						var sourceToSet = historyFrameSourcePrefix + getHash();
+						getHistoryFrame().src = sourceToSet;
+                        currentHref = document.location.href;
+					}
+                }
+            }
+        }
+
+        if (browser.safari && !browserHasHashChange) {
+            // For Safari, we have to check to see if history.length changed.
+            if (currentHistoryLength >= 0 && history.length != currentHistoryLength) {
+                //alert("did change: " + history.length + ", " + historyHash.length + "|" + historyHash[history.length] + "|>" + historyHash.join("|"));
+                var flexAppUrl = getHash();
+                if (browser.version < 528.16 /* Anything earlier than Safari 4.0 */)
+                {    
+                    // If it did change and we're running Safari 3.x or earlier, 
+                    // then we have to look the old state up in our hand-maintained 
+                    // array since document.location.hash won't have changed, 
+                    // then call back into BrowserManager.
+                currentHistoryLength = history.length;
+                    flexAppUrl = historyHash[currentHistoryLength];
+                }
+
+                //ADR: to fix multiple
+                if (typeof BrowserHistory_multiple != "undefined" && BrowserHistory_multiple == true) {
+                    var pl = getPlayers();
+                    for (var i = 0; i < pl.length; i++) {
+                        pl[i].browserURLChange(flexAppUrl);
+                    }
+                } else {
+                    getPlayer().browserURLChange(flexAppUrl);
+                }
+                _storeStates();
+            }
+        }
+        if (browser.firefox && !browserHasHashChange) {
+            if (currentHref != document.location.href) {
+                var bsl = backStack.length;
+
+                var urlActions = {
+                    back: false, 
+                    forward: false, 
+                    set: false
+                }
+
+                if ((window.location.hash == initialHash || window.location.href == initialHref) && (bsl == 1)) {
+                    urlActions.back = true;
+                    // FIXME: could this ever be a forward button?
+                    // we can't clear it because we still need to check for forwards. Ugg.
+                    // clearInterval(this.locationTimer);
+                    handleBackButton();
+                }
+                
+                // first check to see if we could have gone forward. We always halt on
+                // a no-hash item.
+                if (forwardStack.length > 0) {
+                    if (forwardStack[forwardStack.length-1].flexAppUrl == getHash()) {
+                        urlActions.forward = true;
+                        handleForwardButton();
+                    }
+                }
+
+                // ok, that didn't work, try someplace back in the history stack
+                if ((bsl >= 2) && (backStack[bsl - 2])) {
+                    if (backStack[bsl - 2].flexAppUrl == getHash()) {
+                        urlActions.back = true;
+                        handleBackButton();
+                    }
+                }
+                
+                if (!urlActions.back && !urlActions.forward) {
+                    var foundInStacks = {
+                        back: -1, 
+                        forward: -1
+                    }
+
+                    for (var i = 0; i < backStack.length; i++) {
+                        if (backStack[i].flexAppUrl == getHash() && i != (bsl - 2)) {
+                            arbitraryUrl = true;
+                            foundInStacks.back = i;
+                        }
+                    }
+                    for (var i = 0; i < forwardStack.length; i++) {
+                        if (forwardStack[i].flexAppUrl == getHash() && i != (bsl - 2)) {
+                            arbitraryUrl = true;
+                            foundInStacks.forward = i;
+                        }
+                    }
+                    handleArbitraryUrl();
+                }
+
+                // Firefox changed; do a callback into BrowserManager to tell it.
+                currentHref = document.location.href;
+                var flexAppUrl = getHash();
+                //ADR: to fix multiple
+                if (typeof BrowserHistory_multiple != "undefined" && BrowserHistory_multiple == true) {
+                    var pl = getPlayers();
+                    for (var i = 0; i < pl.length; i++) {
+                        pl[i].browserURLChange(flexAppUrl);
+                    }
+                } else {
+                    getPlayer().browserURLChange(flexAppUrl);
+                }
+            }
+        }
+    }
+
+    var _initialize = function () {
+        
+        browserHasHashChange = ("onhashchange" in document.body);
+        
+        if (browser.ie)
+        {
+            var scripts = document.getElementsByTagName('script');
+            for (var i = 0, s; s = scripts[i]; i++) {
+                if (s.src.indexOf("history.js") > -1) {
+                    var iframe_location = (new String(s.src)).replace("history.js", "historyFrame.html");
+                }
+            }
+            historyFrameSourcePrefix = iframe_location + "?";
+            var src = historyFrameSourcePrefix;
+
+            var iframe = document.createElement("iframe");
+            iframe.id = 'ie_historyFrame';
+            iframe.name = 'ie_historyFrame';
+            iframe.src = 'javascript:false;'; 
+
+            try {
+                document.body.appendChild(iframe);
+            } catch(e) {
+                setTimeout(function() {
+                    document.body.appendChild(iframe);
+                }, 0);
+            }
+        }
+
+        if (browser.safari && !browserHasHashChange)
+        {
+            var rememberDiv = document.createElement("div");
+            rememberDiv.id = 'safari_rememberDiv';
+            document.body.appendChild(rememberDiv);
+            rememberDiv.innerHTML = '<input type="text" id="safari_remember_field" style="width: 500px;">';
+
+            var formDiv = document.createElement("div");
+            formDiv.id = 'safari_formDiv';
+            document.body.appendChild(formDiv);
+
+            var reloader_content = document.createElement('div');
+            reloader_content.id = 'safarireloader';
+            var scripts = document.getElementsByTagName('script');
+            for (var i = 0, s; s = scripts[i]; i++) {
+                if (s.src.indexOf("history.js") > -1) {
+                    html = (new String(s.src)).replace(".js", ".html");
+                }
+            }
+            reloader_content.innerHTML = '<iframe id="safarireloader-iframe" src="about:blank" frameborder="no" scrolling="no"></iframe>';
+            document.body.appendChild(reloader_content);
+            reloader_content.style.position = 'absolute';
+            reloader_content.style.left = reloader_content.style.top = '-9999px';
+            iframe = reloader_content.getElementsByTagName('iframe')[0];
+
+            if (document.getElementById("safari_remember_field").value != "" ) {
+                historyHash = document.getElementById("safari_remember_field").value.split(",");
+            }
+        }
+
+        if (browserHasHashChange)        
+            document.body.onhashchange = hashChangeHandler;
+    }
+
+    return {
+        historyHash: historyHash, 
+        backStack: function() { return backStack; }, 
+        forwardStack: function() { return forwardStack }, 
+        getPlayer: getPlayer, 
+        initialize: function(src) {
+            _initialize(src);
+        }, 
+        setURL: function(url) {
+            document.location.href = url;
+        }, 
+        getURL: function() {
+            return document.location.href;
+        }, 
+        getTitle: function() {
+            return document.title;
+        }, 
+        setTitle: function(title) {
+            try {
+                backStack[backStack.length - 1].title = title;
+            } catch(e) { }
+            //if on safari, set the title to be the empty string. 
+            if (browser.safari) {
+                if (title == "") {
+                    try {
+                    var tmp = window.location.href.toString();
+                    title = tmp.substring((tmp.lastIndexOf("/")+1), tmp.lastIndexOf("#"));
+                    } catch(e) {
+                        title = "";
+                    }
+                }
+            }
+            document.title = title;
+        }, 
+        setDefaultURL: function(def)
+        {
+            defaultHash = def;
+            def = getHash();
+            //trailing ? is important else an extra frame gets added to the history
+            //when navigating back to the first page.  Alternatively could check
+            //in history frame navigation to compare # and ?.
+            if (browser.ie)
+            {
+                window['_ie_firstload'] = true;
+                var sourceToSet = historyFrameSourcePrefix + def;
+                var func = function() {
+                    getHistoryFrame().src = sourceToSet;
+                    window.location.replace("#" + def);
+                    setInterval(checkForUrlChange, 50);
+                }
+                try {
+                    func();
+                } catch(e) {
+                    window.setTimeout(function() { func(); }, 0);
+                }
+            }
+
+            if (browser.safari)
+            {
+                currentHistoryLength = history.length;
+                if (historyHash.length == 0) {
+                    historyHash[currentHistoryLength] = def;
+                    var newloc = "#" + def;
+                    window.location.replace(newloc);
+                } else {
+                    //alert(historyHash[historyHash.length-1]);
+                }
+                setInterval(checkForUrlChange, 50);
+            }
+            
+            
+            if (browser.firefox || browser.opera)
+            {
+                var reg = new RegExp("#" + def + "$");
+                if (window.location.toString().match(reg)) {
+                } else {
+                    var newloc ="#" + def;
+                    window.location.replace(newloc);
+                }
+                setInterval(checkForUrlChange, 50);
+            }
+
+        }, 
+
+        /* Set the current browser URL; called from inside BrowserManager to propagate
+         * the application state out to the container.
+         */
+        setBrowserURL: function(flexAppUrl, objectId) {
+            if (browser.ie && typeof objectId != "undefined") {
+                currentObjectId = objectId;
+            }
+           //fromIframe = fromIframe || false;
+           //fromFlex = fromFlex || false;
+           //alert("setBrowserURL: " + flexAppUrl);
+           //flexAppUrl = (flexAppUrl == "") ? defaultHash : flexAppUrl ;
+
+           var pos = document.location.href.indexOf('#');
+           var baseUrl = pos != -1 ? document.location.href.substr(0, pos) : document.location.href;
+           var newUrl = baseUrl + '#' + flexAppUrl;
+
+           if (document.location.href != newUrl && document.location.href + '#' != newUrl) {
+               currentHref = newUrl;
+               addHistoryEntry(baseUrl, newUrl, flexAppUrl);
+               currentHistoryLength = history.length;
+           }
+        }, 
+
+        browserURLChange: function(flexAppUrl) {
+            var objectId = null;
+            if (browser.ie && currentObjectId != null) {
+                objectId = currentObjectId;
+            }
+            
+            if (typeof BrowserHistory_multiple != "undefined" && BrowserHistory_multiple == true) {
+                var pl = getPlayers();
+                for (var i = 0; i < pl.length; i++) {
+                    try {
+                        pl[i].browserURLChange(flexAppUrl);
+                    } catch(e) { }
+                }
+            } else {
+                try {
+                    getPlayer(objectId).browserURLChange(flexAppUrl);
+                } catch(e) { }
+            }
+
+            currentObjectId = null;
+        },
+        getUserAgent: function() {
+            return navigator.userAgent;
+        },
+        getPlatform: function() {
+            return navigator.platform;
+        }
+
+    }
+
+})();
+
+// Initialization
+
+// Automated unit testing and other diagnostics
+
+function setURL(url)
+{
+    document.location.href = url;
+}
+
+function backButton()
+{
+    history.back();
+}
+
+function forwardButton()
+{
+    history.forward();
+}
+
+function goForwardOrBackInHistory(step)
+{
+    history.go(step);
+}
+
+//BrowserHistoryUtils.addEvent(window, "load", function() { BrowserHistory.initialize(); });
+(function(i) {
+    var u =navigator.userAgent;var e=/*@cc_on!@*/false; 
+    var st = setTimeout;
+    if(/webkit/i.test(u)){
+        st(function(){
+            var dr=document.readyState;
+            if(dr=="loaded"||dr=="complete"){i()}
+            else{st(arguments.callee,10);}},10);
+    } else if((/mozilla/i.test(u)&&!/(compati)/.test(u)) || (/opera/i.test(u))){
+        document.addEventListener("DOMContentLoaded",i,false);
+    } else if(e){
+    (function(){
+        var t=document.createElement('doc:rdy');
+        try{t.doScroll('left');
+            i();t=null;
+        }catch(e){st(arguments.callee,0);}})();
+    } else{
+        window.onload=i;
+    }
+})( function() {BrowserHistory.initialize();} );

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/history/historyFrame.html
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/history/historyFrame.html b/attic/qa/apps/qa-manual/history/historyFrame.html
new file mode 100644
index 0000000..c8af338
--- /dev/null
+++ b/attic/qa/apps/qa-manual/history/historyFrame.html
@@ -0,0 +1,45 @@
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+-->
+<html>
+    <head>
+        <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
+        <META HTTP-EQUIV="Expires" CONTENT="-1"> 
+    </head>
+    <body>
+    <script>
+        function processUrl()
+        {
+
+            var pos = url.indexOf("?");
+            url = pos != -1 ? url.substr(pos + 1) : "";
+            if (!parent._ie_firstload) {
+                parent.BrowserHistory.setBrowserURL(url);
+                try {
+                    parent.BrowserHistory.browserURLChange(url);
+                } catch(e) { }
+            } else {
+                parent._ie_firstload = false;
+            }
+        }
+
+        var url = document.location.href;
+        processUrl();
+        document.write(encodeURIComponent(url));
+    </script>
+    Hidden frame for Browser History support.
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-manual/history/swfobject.js
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-manual/history/swfobject.js b/attic/qa/apps/qa-manual/history/swfobject.js
new file mode 100644
index 0000000..8eafe9d
--- /dev/null
+++ b/attic/qa/apps/qa-manual/history/swfobject.js
@@ -0,0 +1,4 @@
+/*	SWFObject v2.2 <http://code.google.com/p/swfobject/> 
+	is released under the MIT License <http://www.opensource.org/licenses/mit-license.php> 
+*/
+var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-
 zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].append
 Child(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callb
 ackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win
 ||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.re
 placeChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27C
 DB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function
  i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIC
 omponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}e
 lse{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.
 replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/DeserializationValidatorBrokerConfig.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/DeserializationValidatorBrokerConfig.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/DeserializationValidatorBrokerConfig.class
new file mode 100644
index 0000000..71d4adc
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/DeserializationValidatorBrokerConfig.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/TestDeserializationValidator.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/TestDeserializationValidator.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/TestDeserializationValidator.class
new file mode 100644
index 0000000..83d3f84
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/messagingService/validators/TestDeserializationValidator.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Bean.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Bean.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Bean.class
new file mode 100644
index 0000000..75e466f
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Bean.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/BindObject.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/BindObject.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/BindObject.class
new file mode 100644
index 0000000..432435b
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/BindObject.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Book.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Book.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Book.class
new file mode 100644
index 0000000..05a17e4
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Book.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/CustomException.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/CustomException.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/CustomException.class
new file mode 100644
index 0000000..d818a89
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/CustomException.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Echo.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Echo.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Echo.class
new file mode 100644
index 0000000..bc39a8c
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/Echo.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ExternalizableDate.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ExternalizableDate.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ExternalizableDate.class
new file mode 100644
index 0000000..4e1bef4
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ExternalizableDate.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileProxy.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileProxy.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileProxy.class
new file mode 100644
index 0000000..dc888e8
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileProxy.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReference.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReference.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReference.class
new file mode 100644
index 0000000..9a8fb8e
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReference.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReferenceProxy.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReferenceProxy.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReferenceProxy.class
new file mode 100644
index 0000000..0fcf3a0
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/FileReferenceProxy.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ImageSnapshotType.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ImageSnapshotType.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ImageSnapshotType.class
new file mode 100644
index 0000000..118e3cb
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ImageSnapshotType.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/InstantiationTest.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/InstantiationTest.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/InstantiationTest.class
new file mode 100644
index 0000000..b3cf556
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/InstantiationTest.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ObjectMessageClient.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ObjectMessageClient.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ObjectMessageClient.class
new file mode 100644
index 0000000..2c3d4b1
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/ObjectMessageClient.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices$ParamType.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices$ParamType.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices$ParamType.class
new file mode 100644
index 0000000..44d84b7
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices$ParamType.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices.class
new file mode 100644
index 0000000..047ce1b
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestServices.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObject.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObject.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObject.class
new file mode 100644
index 0000000..b7b98cf
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObject.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObjectWithInheritance.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObjectWithInheritance.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObjectWithInheritance.class
new file mode 100644
index 0000000..00ecbff
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/TestTypedObjectWithInheritance.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ChildClass.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ChildClass.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ChildClass.class
new file mode 100644
index 0000000..891dd2c
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ChildClass.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ParentClass.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ParentClass.class b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ParentClass.class
new file mode 100644
index 0000000..22a744e
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/blazeds/qa/remotingService/inherit/ParentClass.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/calendar/CalendarService.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/calendar/CalendarService.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/calendar/CalendarService.class
new file mode 100644
index 0000000..a4ba3ea
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/calendar/CalendarService.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Bean.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Bean.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Bean.class
new file mode 100644
index 0000000..a8886d6
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Bean.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Book.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Book.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Book.class
new file mode 100644
index 0000000..59f0543
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Book.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/CustomException.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/CustomException.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/CustomException.class
new file mode 100644
index 0000000..66cce37
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/CustomException.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Echo.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Echo.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Echo.class
new file mode 100644
index 0000000..f7956c7
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/Echo.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/ObjectMessageClient.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/ObjectMessageClient.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/ObjectMessageClient.class
new file mode 100644
index 0000000..e5e81e3
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/ObjectMessageClient.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObject.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObject.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObject.class
new file mode 100644
index 0000000..11cc4b1
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObject.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObjectWithInheritance.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObjectWithInheritance.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObjectWithInheritance.class
new file mode 100644
index 0000000..304d993
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/echoservice/TestTypedObjectWithInheritance.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingAMFEndpoint.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingAMFEndpoint.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingAMFEndpoint.class
new file mode 100644
index 0000000..19b0ddc
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingAMFEndpoint.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingHTTPEndpoint.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingHTTPEndpoint.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingHTTPEndpoint.class
new file mode 100644
index 0000000..79711a7
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/endpoints/HangingHTTPEndpoint.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpServiceTest.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpServiceTest.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpServiceTest.class
new file mode 100644
index 0000000..69bdfa6
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpServiceTest.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpXmlEchoService.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpXmlEchoService.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpXmlEchoService.class
new file mode 100644
index 0000000..e086f30
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/httpservice/HttpXmlEchoService.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/logging/serverlog.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/logging/serverlog.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/logging/serverlog.class
new file mode 100644
index 0000000..3aa1c33
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/logging/serverlog.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/BindObject.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/BindObject.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/BindObject.class
new file mode 100644
index 0000000..07cab95
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/BindObject.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/TestServices.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/TestServices.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/TestServices.class
new file mode 100644
index 0000000..2579285
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/TestServices.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ChildClass.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ChildClass.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ChildClass.class
new file mode 100644
index 0000000..680a40a
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ChildClass.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ParentClass.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ParentClass.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ParentClass.class
new file mode 100644
index 0000000..928d1be
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/remoting/inherit/ParentClass.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherInfo.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherInfo.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherInfo.class
new file mode 100644
index 0000000..c195225
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherInfo.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherService.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherService.class b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherService.class
new file mode 100644
index 0000000..39ae37f
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/dev/weather/WeatherService.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/errorhandling/testException.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/errorhandling/testException.class b/attic/qa/apps/qa-regress/WEB-INF/classes/errorhandling/testException.class
new file mode 100644
index 0000000..ce9af01
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/errorhandling/testException.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/photo/person0.jpg
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/photo/person0.jpg b/attic/qa/apps/qa-regress/WEB-INF/classes/photo/person0.jpg
new file mode 100644
index 0000000..652527c
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/photo/person0.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/MBeanObjectNameResolver.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/MBeanObjectNameResolver.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/MBeanObjectNameResolver.class
new file mode 100644
index 0000000..d50a3d3
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/MBeanObjectNameResolver.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/Simple.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/Simple.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/Simple.class
new file mode 100644
index 0000000..01b80e3
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/Simple.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/SimpleMBean.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/SimpleMBean.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/SimpleMBean.class
new file mode 100644
index 0000000..4734480
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/management/SimpleMBean.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomMessagingAdapter.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomMessagingAdapter.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomMessagingAdapter.class
new file mode 100644
index 0000000..85d0027
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomMessagingAdapter.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomTypeMarshaller.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomTypeMarshaller.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomTypeMarshaller.class
new file mode 100644
index 0000000..afced44
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomTypeMarshaller.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomUUIDGenerator.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomUUIDGenerator.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomUUIDGenerator.class
new file mode 100644
index 0000000..b886724
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/CustomUUIDGenerator.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DupeUUIDGenerator.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DupeUUIDGenerator.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DupeUUIDGenerator.class
new file mode 100644
index 0000000..51fd6bc
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DupeUUIDGenerator.class differ

http://git-wip-us.apache.org/repos/asf/flex-blazeds/blob/5be16a28/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DynamicDestinationAdapter.class
----------------------------------------------------------------------
diff --git a/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DynamicDestinationAdapter.class b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DynamicDestinationAdapter.class
new file mode 100644
index 0000000..4334796
Binary files /dev/null and b/attic/qa/apps/qa-regress/WEB-INF/classes/qa/messaging/DynamicDestinationAdapter.class differ


Mime
View raw message