commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mcucchi...@apache.org
Subject svn commit: r1187621 [1/3] - in /commons/proper/ognl/performance-analysis: ./ src/ src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/ src/main/java/org/apache/commons/ src/main/java/org/apache/commons/ognl/ src/main/java/org/apache/c...
Date Sat, 22 Oct 2011 01:20:55 GMT
Author: mcucchiara
Date: Sat Oct 22 01:20:52 2011
New Revision: 1187621

URL: http://svn.apache.org/viewvc?rev=1187621&view=rev
Log:
Added performance analysis

Added:
    commons/proper/ognl/performance-analysis/
    commons/proper/ognl/performance-analysis/.benchmarks.h2.db   (with props)
    commons/proper/ognl/performance-analysis/pom.xml   (with props)
    commons/proper/ognl/performance-analysis/src/
    commons/proper/ognl/performance-analysis/src/main/
    commons/proper/ognl/performance-analysis/src/main/java/
    commons/proper/ognl/performance-analysis/src/main/java/org/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FieldInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FindParameterTypesInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetConstructorsInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetDeclaredMethodsInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetMethodsInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/InvokeMethodInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/MethodParameterTypesInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PermissionInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PrimitiveDefaultInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/RepeatableInvocation.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseBean.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseGeneric.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseIndexed.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseObjectIndexed.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseSyntheticObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean1.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean2.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean3.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProvider.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderAccessor.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Component.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentSubclass.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Copy.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/CorrectedObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Cracker.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Entry.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/EvenOdd.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/FirstBean.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/FormComponentImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/FormImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GameGeneric.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GameGenericObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GenericCracker.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GenericObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GenericRoot.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GenericService.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GenericServiceImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/GetterMethods.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/IComponent.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/IContentProvider.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/IForm.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/IFormComponent.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ITreeContentProvider.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Indexed.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/IndexedMapObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/IndexedSetObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Inherited.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ListSource.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ListSourceImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/MenuItem.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Messages.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Model.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/MyMap.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/MyMapImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ObjectIndexed.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/OtherObjectIndexed.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/PersonGenericObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/PropertyHolder.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Root.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/SearchCriteria.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/SearchTab.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/SecondBean.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/SetterReturns.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Simple.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/SimpleEnum.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/SimpleNumeric.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/SubclassSyntheticObject.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/TestClass.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/TestImpl.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/TestInherited1.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/TestInherited2.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/TestModel.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/TreeContentProvider.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Two.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/runtime/
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/runtime/CommonsRuntimeWrapper.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/runtime/OldOgnlRuntimeWrapper.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/runtime/RuntimeWrapper.java   (with props)
    commons/proper/ognl/performance-analysis/src/main/resources/
    commons/proper/ognl/performance-analysis/src/main/resources/log4j.xml   (with props)
    commons/proper/ognl/performance-analysis/src/test/
    commons/proper/ognl/performance-analysis/src/test/java/
    commons/proper/ognl/performance-analysis/src/test/java/org/
    commons/proper/ognl/performance-analysis/src/test/java/org/apache/
    commons/proper/ognl/performance-analysis/src/test/java/org/apache/commons/
    commons/proper/ognl/performance-analysis/src/test/java/org/apache/commons/ognl/
    commons/proper/ognl/performance-analysis/src/test/java/org/apache/commons/ognl/performance/
    commons/proper/ognl/performance-analysis/src/test/java/org/apache/commons/ognl/performance/PerformanceCommonsOgnlTest.java   (with props)
    commons/proper/ognl/performance-analysis/src/test/java/org/apache/commons/ognl/performance/PerformanceOldOgnlTest.java   (with props)

Added: commons/proper/ognl/performance-analysis/.benchmarks.h2.db
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/.benchmarks.h2.db?rev=1187621&view=auto
==============================================================================
Binary file - no diff available.

Propchange: commons/proper/ognl/performance-analysis/.benchmarks.h2.db
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: commons/proper/ognl/performance-analysis/pom.xml
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/pom.xml?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/pom.xml (added)
+++ commons/proper/ognl/performance-analysis/pom.xml Sat Oct 22 01:20:52 2011
@@ -0,0 +1,100 @@
+<?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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
+
+  <groupId>org.apache.commons.ognltest</groupId>
+  <artifactId>ognltest</artifactId>
+  <version>1.0.0-SNAPSHOT</version>
+  <name>Apache Commons OGNL :: Test</name>
+  <packaging>jar</packaging>
+
+  <properties>
+  </properties>
+
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <version>2.9</version>
+        <configuration>
+          <argLine>-Xmx512m -Xms512m -XX:MaxDirectMemorySize=512m</argLine>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <dependencies>
+    <dependency>
+      <groupId>ognl</groupId>
+      <artifactId>ognl</artifactId>
+      <version>3.0.3</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-ognl</artifactId>
+      <version>4.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+      <version>1.6.1</version>
+      <type>jar</type>
+    </dependency>
+
+    <dependency>
+      <groupId>com.h2database</groupId>
+      <artifactId>h2</artifactId>
+      <version>1.3.158</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.carrotsearch</groupId>
+      <artifactId>junit-benchmarks</artifactId>
+      <version>0.3.0-SNAPSHOT</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>4.10</version>
+      <scope>test</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>ch.qos.logback</groupId>
+      <artifactId>logback-core</artifactId>
+      <version>0.9.26</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>ch.qos.logback</groupId>
+      <artifactId>logback-classic</artifactId>
+      <version>0.9.26</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+</project>

Propchange: commons/proper/ognl/performance-analysis/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FieldInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FieldInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FieldInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FieldInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,24 @@
+package org.apache.commons.ognl.performance.invocation;
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 16.28
+ */
+public class FieldInvocation extends RepeatableInvocation {
+    public FieldInvocation(RuntimeWrapper runtimeWrapper) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    public FieldInvocation(RuntimeWrapper runtimeWrapper, int times) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        getRuntime().getFields(c);
+    }
+
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FieldInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FindParameterTypesInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FindParameterTypesInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FindParameterTypesInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FindParameterTypesInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,29 @@
+package org.apache.commons.ognl.performance.invocation;
+
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+import java.lang.reflect.Method;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 16.37
+ */
+public class FindParameterTypesInvocation extends RepeatableInvocation {
+
+    public FindParameterTypesInvocation(RuntimeWrapper runtimeWrapper, int times) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    public FindParameterTypesInvocation(RuntimeWrapper runtimeWrapper) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        for (Method method : c.getMethods()) {
+            getRuntime().findParameterTypes(String.class, method);
+        }
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/FindParameterTypesInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetConstructorsInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetConstructorsInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetConstructorsInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetConstructorsInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,24 @@
+package org.apache.commons.ognl.performance.invocation;
+
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 16.21
+ */
+public class GetConstructorsInvocation extends RepeatableInvocation {
+    public GetConstructorsInvocation(RuntimeWrapper runtimeWrapper) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    public GetConstructorsInvocation(RuntimeWrapper runtimeWrapper, int times) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        getRuntime().getConstructors(c);
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetConstructorsInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetDeclaredMethodsInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetDeclaredMethodsInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetDeclaredMethodsInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetDeclaredMethodsInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,27 @@
+package org.apache.commons.ognl.performance.invocation;
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 15.57
+ */
+public class GetDeclaredMethodsInvocation
+    extends RepeatableInvocation {
+
+    public GetDeclaredMethodsInvocation( RuntimeWrapper runtimeWrapper ) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    public GetDeclaredMethodsInvocation( RuntimeWrapper runtimeWrapper, int times ) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        getRuntime().getDeclaredMethods(c, "class", false);
+        getRuntime().getDeclaredMethods(c, "class", true);
+    }
+
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetDeclaredMethodsInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetMethodsInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetMethodsInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetMethodsInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetMethodsInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,26 @@
+package org.apache.commons.ognl.performance.invocation;
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 15.57
+ */
+public class GetMethodsInvocation extends RepeatableInvocation {
+
+    public GetMethodsInvocation(RuntimeWrapper runtimeWrapper) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    public GetMethodsInvocation(RuntimeWrapper runtimeWrapper, int times) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        getRuntime().getMethods(c, false);
+        getRuntime().getMethods(c, true);
+    }
+
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/GetMethodsInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/InvokeMethodInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/InvokeMethodInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/InvokeMethodInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/InvokeMethodInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,29 @@
+package org.apache.commons.ognl.performance.invocation;
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+import java.lang.reflect.Method;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 16.45
+ */
+public class InvokeMethodInvocation extends RepeatableInvocation {
+    public InvokeMethodInvocation(RuntimeWrapper runtimeWrapper) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    public InvokeMethodInvocation(RuntimeWrapper runtimeWrapper, int times) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        Object o;
+        o = c.newInstance();
+
+        Method toString = c.getMethod("toString");
+        getRuntime().invokeMethod(o, toString, new Object[0]);
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/InvokeMethodInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/MethodParameterTypesInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/MethodParameterTypesInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/MethodParameterTypesInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/MethodParameterTypesInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,32 @@
+package org.apache.commons.ognl.performance.invocation;
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Method;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 16.35
+ */
+public class MethodParameterTypesInvocation extends RepeatableInvocation {
+
+    public MethodParameterTypesInvocation(RuntimeWrapper runtimeWrapper) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    public MethodParameterTypesInvocation(RuntimeWrapper runtimeWrapper, int times) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        for (Method method : c.getMethods()) {
+            getRuntime().getParameterTypes(method);
+        }
+        for (Constructor<?> constructor : c.getConstructors()) {
+            getRuntime().getParameterTypes(constructor);
+        }
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/MethodParameterTypesInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PermissionInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PermissionInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PermissionInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PermissionInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,31 @@
+package org.apache.commons.ognl.performance.invocation;
+
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+import java.lang.reflect.Method;
+
+/**
+ * User: mcucchiara
+ * Date: 18/10/11
+ * Time: 16.25
+ */
+public class PermissionInvocation extends RepeatableInvocation {
+
+    public PermissionInvocation(RuntimeWrapper runtimeWrapper) throws Exception {
+        super(runtimeWrapper);
+    }
+
+    public PermissionInvocation(RuntimeWrapper runtimeWrapper, int times) throws Exception {
+        super(runtimeWrapper, times);
+    }
+
+    @Override
+    protected void invoke(Class<?> c) throws Exception {
+        Method[] methods = c.getMethods();
+        for (Method method : methods) {
+            getRuntime().getPermission(method);
+        }
+    }
+
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PermissionInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PrimitiveDefaultInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PrimitiveDefaultInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PrimitiveDefaultInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PrimitiveDefaultInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,31 @@
+package org.apache.commons.ognl.performance.invocation;
+
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+/**
+ * User: Maurizio Cucchiara
+ * Date: 10/22/11
+ * Time: 1:02 AM
+ */
+public class PrimitiveDefaultInvocation
+    extends RepeatableInvocation
+{
+    public PrimitiveDefaultInvocation( RuntimeWrapper runtimeWrapper )
+        throws Exception
+    {
+        super( runtimeWrapper );
+    }
+
+    public PrimitiveDefaultInvocation( RuntimeWrapper runtimeWrapper, int times )
+        throws Exception
+    {
+        super( runtimeWrapper, times );
+    }
+
+    @Override
+    protected void invoke( Class<?> c )
+        throws Exception
+    {
+        getRuntime( ).getPrimitiveDefaultValue( c );
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/PrimitiveDefaultInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/RepeatableInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/RepeatableInvocation.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/RepeatableInvocation.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/RepeatableInvocation.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,138 @@
+package org.apache.commons.ognl.performance.invocation;
+
+import org.apache.commons.ognl.performance.objects.BaseBean;
+import org.apache.commons.ognl.performance.objects.BaseGeneric;
+import org.apache.commons.ognl.performance.objects.BaseIndexed;
+import org.apache.commons.ognl.performance.objects.BaseObjectIndexed;
+import org.apache.commons.ognl.performance.objects.BaseSyntheticObject;
+import org.apache.commons.ognl.performance.objects.Bean1;
+import org.apache.commons.ognl.performance.objects.Bean2;
+import org.apache.commons.ognl.performance.objects.Bean3;
+import org.apache.commons.ognl.performance.objects.BeanProvider;
+import org.apache.commons.ognl.performance.objects.BeanProviderAccessor;
+import org.apache.commons.ognl.performance.objects.BeanProviderImpl;
+import org.apache.commons.ognl.performance.objects.Component;
+import org.apache.commons.ognl.performance.objects.ComponentImpl;
+import org.apache.commons.ognl.performance.objects.ComponentSubclass;
+import org.apache.commons.ognl.performance.objects.Copy;
+import org.apache.commons.ognl.performance.objects.CorrectedObject;
+import org.apache.commons.ognl.performance.objects.Cracker;
+import org.apache.commons.ognl.performance.objects.Entry;
+import org.apache.commons.ognl.performance.objects.EvenOdd;
+import org.apache.commons.ognl.performance.objects.FirstBean;
+import org.apache.commons.ognl.performance.objects.FormComponentImpl;
+import org.apache.commons.ognl.performance.objects.FormImpl;
+import org.apache.commons.ognl.performance.objects.GameGeneric;
+import org.apache.commons.ognl.performance.objects.GameGenericObject;
+import org.apache.commons.ognl.performance.objects.GenericCracker;
+import org.apache.commons.ognl.performance.objects.GenericObject;
+import org.apache.commons.ognl.performance.objects.GenericRoot;
+import org.apache.commons.ognl.performance.objects.GenericService;
+import org.apache.commons.ognl.performance.objects.GenericServiceImpl;
+import org.apache.commons.ognl.performance.objects.GetterMethods;
+import org.apache.commons.ognl.performance.objects.IComponent;
+import org.apache.commons.ognl.performance.objects.IContentProvider;
+import org.apache.commons.ognl.performance.objects.IForm;
+import org.apache.commons.ognl.performance.objects.IFormComponent;
+import org.apache.commons.ognl.performance.objects.ITreeContentProvider;
+import org.apache.commons.ognl.performance.objects.Indexed;
+import org.apache.commons.ognl.performance.objects.IndexedMapObject;
+import org.apache.commons.ognl.performance.objects.IndexedSetObject;
+import org.apache.commons.ognl.performance.objects.Inherited;
+import org.apache.commons.ognl.performance.objects.ListSource;
+import org.apache.commons.ognl.performance.objects.ListSourceImpl;
+import org.apache.commons.ognl.performance.objects.MenuItem;
+import org.apache.commons.ognl.performance.objects.Messages;
+import org.apache.commons.ognl.performance.objects.Model;
+import org.apache.commons.ognl.performance.objects.MyMap;
+import org.apache.commons.ognl.performance.objects.MyMapImpl;
+import org.apache.commons.ognl.performance.objects.ObjectIndexed;
+import org.apache.commons.ognl.performance.objects.OtherObjectIndexed;
+import org.apache.commons.ognl.performance.objects.PersonGenericObject;
+import org.apache.commons.ognl.performance.objects.PropertyHolder;
+import org.apache.commons.ognl.performance.objects.Root;
+import org.apache.commons.ognl.performance.objects.SearchCriteria;
+import org.apache.commons.ognl.performance.objects.SearchTab;
+import org.apache.commons.ognl.performance.objects.SecondBean;
+import org.apache.commons.ognl.performance.objects.SetterReturns;
+import org.apache.commons.ognl.performance.objects.Simple;
+import org.apache.commons.ognl.performance.objects.SimpleEnum;
+import org.apache.commons.ognl.performance.objects.SimpleNumeric;
+import org.apache.commons.ognl.performance.objects.SubclassSyntheticObject;
+import org.apache.commons.ognl.performance.objects.TestClass;
+import org.apache.commons.ognl.performance.objects.TestImpl;
+import org.apache.commons.ognl.performance.objects.TestInherited1;
+import org.apache.commons.ognl.performance.objects.TestInherited2;
+import org.apache.commons.ognl.performance.objects.TestModel;
+import org.apache.commons.ognl.performance.objects.TreeContentProvider;
+import org.apache.commons.ognl.performance.objects.Two;
+import org.apache.commons.ognl.performance.runtime.RuntimeWrapper;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * User: Maurizio Cucchiara
+ * Date: 10/22/11
+ * Time: 12:20 AM
+ */
+public abstract class RepeatableInvocation
+{
+    private RuntimeWrapper runtimeWrapper;
+
+    private int times=1000;
+
+    private List<Class<?>> classes =
+        Arrays.asList( ComponentImpl.class, BaseObjectIndexed.class, TestInherited2.class, MenuItem.class,
+                       BaseIndexed.class, ListSourceImpl.class, GenericService.class, Copy.class, Inherited.class,
+                       MyMapImpl.class, GenericCracker.class, MyMap.class, SecondBean.class, SetterReturns.class,
+                       IContentProvider.class, FirstBean.class, CorrectedObject.class, BeanProviderImpl.class,
+                       TestClass.class, TestImpl.class, TreeContentProvider.class, Messages.class, Two.class,
+                       IndexedMapObject.class, SimpleNumeric.class, GameGeneric.class, Entry.class,
+                       SubclassSyntheticObject.class, SimpleEnum.class, Model.class, Simple.class,
+                       BaseSyntheticObject.class, ObjectIndexed.class, IComponent.class, SearchCriteria.class,
+                       FormImpl.class, TestInherited1.class, IndexedSetObject.class, SearchTab.class,
+                       GenericObject.class, GenericRoot.class, Bean1.class, FormComponentImpl.class,
+                       ComponentSubclass.class, IForm.class, OtherObjectIndexed.class, Cracker.class, Indexed.class,
+                       EvenOdd.class, PersonGenericObject.class, Bean2.class, GenericServiceImpl.class,
+                       IFormComponent.class, ListSource.class, PropertyHolder.class, Bean3.class, BaseGeneric.class,
+                       GetterMethods.class, BeanProviderAccessor.class, BeanProvider.class, GameGenericObject.class,
+                       ITreeContentProvider.class, TestModel.class, BaseBean.class, Component.class, Root.class );
+
+    public RepeatableInvocation( RuntimeWrapper runtimeWrapper )
+        throws Exception
+    {
+        this.runtimeWrapper = runtimeWrapper;
+        invoke( );
+
+    }
+
+    public RepeatableInvocation( RuntimeWrapper runtimeWrapper, int times )
+        throws Exception
+    {
+
+        this.runtimeWrapper = runtimeWrapper;
+        this.times = times;
+        invoke( );
+    }
+
+    private void invoke( )
+        throws Exception
+    {
+        for ( int i = 0; i < times; i++ )
+        {
+            for ( Class<?> c : classes )
+            {
+                invoke( c );
+            }
+        }
+    }
+
+    protected abstract void invoke( Class<?> c )
+        throws Exception;
+
+    protected RuntimeWrapper getRuntime( )
+    {
+        return runtimeWrapper;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/invocation/RepeatableInvocation.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseBean.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseBean.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseBean.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseBean.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,57 @@
+/*
+ * $Id: BaseBean.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ * Base class used to test inheritance class casting.
+ */
+public abstract class BaseBean
+{
+
+    public abstract String getName();
+
+    public boolean getActive()
+    {
+        return true;
+    }
+
+    public boolean isActive2()
+    {
+        return true;
+    }
+
+    public Two getTwo()
+    {
+        return new Two();
+    }
+
+    public String getMessage( String mes )
+    {
+        return "[" + mes + "]";
+    }
+
+    public boolean hasChildren( String name )
+    {
+        return name.length() > 2;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseBean.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseGeneric.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseGeneric.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseGeneric.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseGeneric.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,70 @@
+/*
+ * $Id: BaseGeneric.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+import java.io.Serializable;
+
+/**
+ * Used to test ognl handling of java generics.
+ */
+public class BaseGeneric<E extends GenericObject, I extends Serializable>
+{
+
+    E _value;
+
+    GenericService _service;
+
+    protected I[] ids;
+
+    public BaseGeneric()
+    {
+        _service = new GenericServiceImpl();
+    }
+
+    public void setIds( I[] ids )
+    {
+        this.ids = ids;
+    }
+
+    public I[] getIds()
+    {
+        return this.ids;
+    }
+
+    public String getMessage()
+    {
+        return "Message";
+    }
+
+    public E getValue()
+    {
+        return _value;
+    }
+
+    public GenericService getService()
+    {
+        return _service;
+    }
+
+    public String format( Object value )
+    {
+        return value.toString();
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseGeneric.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseIndexed.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseIndexed.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseIndexed.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseIndexed.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,32 @@
+/*
+ * $Id: BaseIndexed.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ * Class used to test inheritance.
+ */
+public class BaseIndexed
+{
+
+    public Object getLine( int index )
+    {
+        return "line:" + index;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseIndexed.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseObjectIndexed.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseObjectIndexed.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseObjectIndexed.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseObjectIndexed.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,65 @@
+/*
+ * $Id: BaseObjectIndexed.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+import java.util.*;
+
+public class BaseObjectIndexed
+    extends Object
+{
+    private Map attributes = new HashMap();
+
+    public BaseObjectIndexed()
+    {
+        super();
+    }
+
+    public Map getAttributes()
+    {
+        return attributes;
+    }
+
+    public Object getAttribute( String name )
+    {
+        return attributes.get( name );
+    }
+
+    public void setAttribute( String name, Object value )
+    {
+        attributes.put( name, value );
+    }
+
+    /* allow testing property name where types do not match */
+    public Object getOtherAttribute( String name )
+    {
+        return null;
+    }
+
+    public void setOtherAttribute( Object someObject, Object foo )
+    {
+        /* do nothing */
+    }
+
+    /* test whether get only is found */
+    public Object getSecondaryAttribute( Object name )
+    {
+        return attributes.get( name );
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseObjectIndexed.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseSyntheticObject.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseSyntheticObject.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseSyntheticObject.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseSyntheticObject.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,35 @@
+/*
+ * $Id: BaseSyntheticObject.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Used to test OGNL-136 use of synthetic methods.
+ */
+public abstract class BaseSyntheticObject
+{
+
+    protected List getList()
+    {
+        return new ArrayList();
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BaseSyntheticObject.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean1.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean1.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean1.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean1.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,30 @@
+/*
+ * $Id: Bean1.java 1182768 2011-10-13 10:29:34Z mcucchiara $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+public class Bean1
+{
+    private Bean2 bean2 = new Bean2();
+
+    public Bean2 getBean2()
+    {
+        return bean2;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean1.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean2.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean2.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean2.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean2.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,83 @@
+/*
+ * $Id: Bean2.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+public class Bean2
+    extends Object
+{
+    private Bean3 bean3 = new Bean3();
+
+    private boolean _pageBreakAfter = false;
+
+    public Long getId()
+    {
+        return 1l;
+    }
+
+    public Bean3 getBean3()
+    {
+        return bean3;
+    }
+
+    public long getMillis()
+    {
+        return 1000 * 60 * 2;
+    }
+
+    public boolean isCarrier()
+    {
+        return false;
+    }
+
+    public boolean isPageBreakAfter()
+    {
+        return _pageBreakAfter;
+    }
+
+    public void setPageBreakAfter( boolean value )
+    {
+        _pageBreakAfter = value;
+    }
+
+    public void togglePageBreakAfter()
+    {
+        _pageBreakAfter ^= true;
+    }
+
+    public boolean equals( Object o )
+    {
+        if ( this == o )
+            return true;
+        if ( o == null || getClass() != o.getClass() )
+            return false;
+
+        Bean2 bean2 = (Bean2) o;
+
+        if ( _pageBreakAfter != bean2._pageBreakAfter )
+            return false;
+
+        return true;
+    }
+
+    public int hashCode()
+    {
+        return ( _pageBreakAfter ? 1 : 0 );
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean2.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean3.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean3.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean3.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean3.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,110 @@
+/*
+ * $Id: Bean3.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class Bean3
+    extends Object
+{
+    private int value = 100;
+
+    private Map map;
+    {
+        map = new HashMap();
+        map.put( "foo", "bar" );
+        map.put( "bar", "baz" );
+    }
+
+    private String _nullValue;
+
+    private Object _indexValue;
+
+    public int getValue()
+    {
+        return value;
+    }
+
+    public void setValue( int value )
+    {
+        this.value = value;
+    }
+
+    public Object getIndexedValue( int index )
+    {
+        return _indexValue;
+    }
+
+    public void setIndexedValue( int index, Object value )
+    {
+        _indexValue = value;
+    }
+
+    public Map getMap()
+    {
+        return map;
+    }
+
+    public void setNullValue( String value )
+    {
+        _nullValue = value;
+    }
+
+    public String getNullValue()
+    {
+        return _nullValue;
+    }
+
+    /*
+     * (non-Javadoc)
+     * @see java.lang.Object#hashCode()
+     */
+    public int hashCode()
+    {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ( ( _indexValue == null ) ? 0 : _indexValue.hashCode() );
+        return result;
+    }
+
+    /*
+     * (non-Javadoc)
+     * @see java.lang.Object#equals(java.lang.Object)
+     */
+    public boolean equals( Object obj )
+    {
+        if ( this == obj )
+            return true;
+        if ( obj == null )
+            return false;
+        if ( getClass() != obj.getClass() )
+            return false;
+        final Bean3 other = (Bean3) obj;
+        if ( _indexValue == null )
+        {
+            if ( other._indexValue != null )
+                return false;
+        }
+        else if ( !_indexValue.equals( other._indexValue ) )
+            return false;
+        return true;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Bean3.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProvider.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProvider.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProvider.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProvider.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,46 @@
+/*
+ * $Id: BeanProvider.java 1184793 2011-10-16 11:03:46Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ * Test interface to be used with a custom propery accessor.
+ */
+public interface BeanProvider
+{
+
+    /**
+     * Gets a bean by name.
+     *
+     * @param name
+     * @return the related bean by name
+     */
+    Object getBean( String name );
+
+    /**
+     * Sets a new bean mapping.
+     *
+     * @param name
+     * @param bean
+     */
+    void setBean( String name, Object bean );
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderAccessor.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderAccessor.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderAccessor.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderAccessor.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,93 @@
+/*
+ * $Id: BeanProviderAccessor.java 1125931 2011-05-22 11:54:53Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+import org.apache.commons.ognl.ObjectPropertyAccessor;
+import org.apache.commons.ognl.OgnlContext;
+import org.apache.commons.ognl.OgnlException;
+import org.apache.commons.ognl.OgnlRuntime;
+import org.apache.commons.ognl.PropertyAccessor;
+import org.apache.commons.ognl.enhance.ExpressionCompiler;
+import org.apache.commons.ognl.enhance.UnsupportedCompilationException;
+
+import java.util.Map;
+
+/**
+ * Implementation of provider that works with {@link BeanProvider} instances.
+ */
+public class BeanProviderAccessor
+    extends ObjectPropertyAccessor
+    implements PropertyAccessor
+{
+    @Override
+    public Object getProperty( Map<String, Object> context, Object target, Object name )
+        throws OgnlException
+    {
+        BeanProvider provider = (BeanProvider) target;
+        String beanName = (String) name;
+
+        return provider.getBean( beanName );
+    }
+
+    /**
+     * Returns true if the name matches a bean provided by the provider. Otherwise invokes the super implementation.
+     **/
+
+    @Override
+    public boolean hasGetProperty( Map<String, Object> context, Object target, Object oname )
+        throws OgnlException
+    {
+        BeanProvider provider = (BeanProvider) target;
+        String beanName = ( (String) oname ).replaceAll( "\"", "" );
+
+        return provider.getBean( beanName ) != null;
+    }
+
+    @Override
+    public String getSourceAccessor( OgnlContext context, Object target, Object name )
+    {
+        BeanProvider provider = (BeanProvider) target;
+        String beanName = ( (String) name ).replaceAll( "\"", "" );
+
+        if ( provider.getBean( beanName ) != null )
+        {
+            context.setCurrentAccessor( BeanProvider.class );
+            context.setCurrentType( provider.getBean( beanName ).getClass() );
+
+            ExpressionCompiler.addCastString( context,
+                                              "(("
+                                                  + OgnlRuntime.getCompiler().getInterfaceClass( provider.getBean( beanName ).getClass() ).getName()
+                                                  + ")" );
+
+            return ".getBean(\"" + beanName + "\"))";
+        }
+
+        return super.getSourceAccessor( context, target, name );
+    }
+
+    @Override
+    public String getSourceSetter( OgnlContext context, Object target, Object name )
+    {
+        throw new UnsupportedCompilationException( "Can't set beans on BeanProvider." );
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderAccessor.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderImpl.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderImpl.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderImpl.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderImpl.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,50 @@
+/*
+ * $Id: BeanProviderImpl.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+import java.io.Serializable;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Implementation of {@link BeanProvider}.
+ */
+public class BeanProviderImpl
+    implements Serializable, BeanProvider
+{
+    private Map _map = new HashMap();
+
+    public BeanProviderImpl()
+    {
+    }
+
+    public Object getBean( String name )
+    {
+        return _map.get( name );
+    }
+
+    public void setBean( String name, Object bean )
+    {
+        _map.put( name, bean );
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/BeanProviderImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Component.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Component.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Component.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Component.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,78 @@
+/*
+ * $Id: Component.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+public class Component
+    extends Object
+{
+    private URLStorage toDisplay = new URLStorage();
+
+    private Page page = new Page();
+
+    public static class URLStorage
+        extends Object
+    {
+        private String pictureUrl = "http://www.picturespace.com/pictures/100";
+
+        public String getPictureUrl()
+        {
+            return pictureUrl;
+        }
+
+        public void setPictureUrl( String value )
+        {
+            pictureUrl = value;
+        }
+    }
+
+    public static class Page
+        extends Object
+    {
+        public Object createRelativeAsset( String value )
+        {
+            return "/toplevel/" + value;
+        }
+    }
+
+    public Component()
+    {
+        super();
+    }
+
+    public Page getPage()
+    {
+        return page;
+    }
+
+    public void setPage( Page value )
+    {
+        page = value;
+    }
+
+    public URLStorage getToDisplay()
+    {
+        return toDisplay;
+    }
+
+    public void setToDisplay( URLStorage value )
+    {
+        toDisplay = value;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Component.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentImpl.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentImpl.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentImpl.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentImpl.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,52 @@
+/*
+ * $Id: ComponentImpl.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ *
+ */
+public class ComponentImpl
+    implements IComponent
+{
+
+    String _clientId;
+
+    int _count = 0;
+
+    public String getClientId()
+    {
+        return _clientId;
+    }
+
+    public void setClientId( String id )
+    {
+        _clientId = id;
+    }
+
+    public int getCount( String index )
+    {
+        return _count;
+    }
+
+    public void setCount( String index, int count )
+    {
+        _count = count;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentSubclass.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentSubclass.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentSubclass.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentSubclass.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,40 @@
+/*
+ * $Id: ComponentSubclass.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ *
+ */
+public class ComponentSubclass
+    extends ComponentImpl
+{
+
+    int _count = 0;
+
+    public int getCount()
+    {
+        return _count;
+    }
+
+    public void setCount( int count )
+    {
+        _count = count;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/ComponentSubclass.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Copy.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Copy.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Copy.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Copy.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,32 @@
+/*
+ * $Id: Copy.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ *
+ */
+public class Copy
+{
+
+    public int size()
+    {
+        return 1;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Copy.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/CorrectedObject.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/CorrectedObject.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/CorrectedObject.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/CorrectedObject.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,45 @@
+/*
+ * $Id: CorrectedObject.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+public class CorrectedObject
+{
+    public CorrectedObject()
+    {
+    }
+
+    public void setStringValue( String value )
+    {
+    }
+
+    public String getStringValue()
+    {
+        return null;
+    }
+
+    public String getIndexedStringValue( String key )
+    {
+        return null;
+    }
+
+    public void setIndexedStringValue( String key, String value )
+    {
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/CorrectedObject.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Cracker.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Cracker.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Cracker.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Cracker.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,33 @@
+/*
+ * $Id: Cracker.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+import java.io.Serializable;
+
+/**
+ * Generic test object.
+ */
+public interface Cracker<T extends Serializable>
+{
+
+    T getParam();
+
+    void setParam( T param );
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Cracker.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Entry.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Entry.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Entry.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Entry.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,55 @@
+/*
+ * $Id: Entry.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ *
+ */
+public class Entry
+{
+
+    private int _size = 1;
+
+    public int size()
+    {
+        return _size;
+    }
+
+    public Copy getCopy()
+    {
+        return new Copy();
+    }
+
+    public boolean equals( Object o )
+    {
+        if ( this == o )
+            return true;
+        if ( o == null || getClass() != o.getClass() )
+            return false;
+
+        Entry entry = (Entry) o;
+        return _size == entry._size;
+    }
+
+    public int hashCode()
+    {
+        return _size;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/Entry.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/EvenOdd.java
URL: http://svn.apache.org/viewvc/commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/EvenOdd.java?rev=1187621&view=auto
==============================================================================
--- commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/EvenOdd.java (added)
+++ commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/EvenOdd.java Sat Oct 22 01:20:52 2011
@@ -0,0 +1,56 @@
+/*
+ * $Id: EvenOdd.java 1103095 2011-05-14 13:18:29Z simonetripodi $
+ * 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 org.apache.commons.ognl.performance.objects;
+
+/**
+ *
+ */
+public class EvenOdd
+{
+
+    private boolean even = true;
+
+    /**
+     * Returns "even" or "odd". Whatever it returns on one invocation, it will return the opposite on the next. By
+     * default, the first value returned is "even".
+     */
+    public String getNext()
+    {
+        String result = even ? "even" : "odd";
+
+        even = !even;
+
+        return result;
+    }
+
+    public boolean isEven()
+    {
+        return even;
+    }
+
+    /**
+     * Overrides the even flag.
+     */
+
+    public void setEven( boolean value )
+    {
+        even = value;
+    }
+}

Propchange: commons/proper/ognl/performance-analysis/src/main/java/org/apache/commons/ognl/performance/objects/EvenOdd.java
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message