commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jcar...@apache.org
Subject svn commit: r240386 [2/5] - in /jakarta/commons/sandbox/proxy/trunk: ./ src/java/org/apache/commons/proxy/ src/java/org/apache/commons/proxy/exception/ src/java/org/apache/commons/proxy/factory/ src/java/org/apache/commons/proxy/factory/cglib/ src/java...
Date Sat, 27 Aug 2005 03:52:30 GMT
Modified: jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr (original)
+++ jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr Fri Aug 26 20:51:56 2005
@@ -1,215 +1,215 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4" relativePaths="false">
-  <component name="AntConfiguration">
-    <defaultAnt bundledAnt="true" />
-    <buildFile url="file://$PROJECT_DIR$/build.xml">
-      <additionalClassPath>
-        <entry path="file://$PROJECT_DIR$/lib/build/junit/junit.jar" />
-      </additionalClassPath>
-      <antReference projectDefault="true" />
-      <customJdkName value="" />
-      <maximumHeapSize value="128" />
-      <properties />
-    </buildFile>
-  </component>
-  <component name="CodeStyleSettingsManager">
-    <option name="PER_PROJECT_SETTINGS" />
-    <option name="USE_PER_PROJECT_SETTINGS" value="false" />
-  </component>
-  <component name="CompilerConfiguration">
-    <option name="DEFAULT_COMPILER" value="Javac" />
-    <option name="CLEAR_OUTPUT_DIRECTORY" value="false" />
-    <option name="DEPLOY_AFTER_MAKE" value="0" />
-    <resourceExtensions>
-      <entry name=".+\.(properties|xml|html|dtd|tld)" />
-      <entry name=".+\.(gif|png|jpeg|jpg)" />
-    </resourceExtensions>
-    <wildcardResourcePatterns>
-      <entry name="?*.properties" />
-      <entry name="?*.xml" />
-      <entry name="?*.gif" />
-      <entry name="?*.png" />
-      <entry name="?*.jpeg" />
-      <entry name="?*.jpg" />
-      <entry name="?*.html" />
-      <entry name="?*.dtd" />
-      <entry name="?*.tld" />
-      <entry name="?*.conf" />
-    </wildcardResourcePatterns>
-  </component>
-  <component name="DataSourceManagerImpl" />
-  <component name="DependenciesAnalyzeManager">
-    <option name="myForwardDirection" value="false" />
-  </component>
-  <component name="DependencyValidationManager" />
-  <component name="EntryPointsManager">
-    <entry_points />
-  </component>
-  <component name="ExportToHTMLSettings">
-    <option name="PRINT_LINE_NUMBERS" value="false" />
-    <option name="OPEN_IN_BROWSER" value="false" />
-    <option name="OUTPUT_DIRECTORY" />
-  </component>
-  <component name="GUI Designer component loader factory" />
-  <component name="JavacSettings">
-    <option name="DEBUGGING_INFO" value="true" />
-    <option name="GENERATE_NO_WARNINGS" value="false" />
-    <option name="DEPRECATION" value="true" />
-    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
-    <option name="MAXIMUM_HEAP_SIZE" value="128" />
-  </component>
-  <component name="JavadocGenerationManager">
-    <option name="OUTPUT_DIRECTORY" />
-    <option name="OPTION_SCOPE" value="protected" />
-    <option name="OPTION_HIERARCHY" value="true" />
-    <option name="OPTION_NAVIGATOR" value="true" />
-    <option name="OPTION_INDEX" value="true" />
-    <option name="OPTION_SEPARATE_INDEX" value="true" />
-    <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
-    <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
-    <option name="OPTION_DEPRECATED_LIST" value="true" />
-    <option name="OTHER_OPTIONS" value="" />
-    <option name="HEAP_SIZE" />
-    <option name="OPEN_IN_BROWSER" value="true" />
-  </component>
-  <component name="JikesSettings">
-    <option name="JIKES_PATH" value="" />
-    <option name="DEBUGGING_INFO" value="true" />
-    <option name="DEPRECATION" value="true" />
-    <option name="GENERATE_NO_WARNINGS" value="false" />
-    <option name="IS_EMACS_ERRORS_MODE" value="true" />
-    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
-  </component>
-  <component name="Palette2">
-    <group name="Swing">
-      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false">
-        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
-      </item>
-      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false">
-        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
-      </item>
-      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false">
-        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
-      </item>
-      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false">
-        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
-      </item>
-      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
-        <initial-values>
-          <property name="text" value="Button" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
-        <initial-values>
-          <property name="text" value="RadioButton" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
-        <initial-values>
-          <property name="text" value="CheckBox" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
-        <initial-values>
-          <property name="text" value="Label" />
-        </initial-values>
-      </item>
-      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
-          <preferred-size width="150" height="-1" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
-          <preferred-size width="150" height="-1" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
-          <preferred-size width="150" height="-1" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
-      </item>
-      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false">
-        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false">
-        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
-          <preferred-size width="150" height="50" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false">
-        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
-          <preferred-size width="200" height="200" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false">
-        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
-          <preferred-size width="200" height="200" />
-        </default-constraints>
-      </item>
-      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
-      </item>
-      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false">
-        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
-      </item>
-    </group>
-  </component>
-  <component name="ProjectModuleManager">
-    <modules>
-      <module fileurl="file://$PROJECT_DIR$/commons-proxy.iml" filepath="$PROJECT_DIR$/commons-proxy.iml" />
-    </modules>
-  </component>
-  <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="true" project-jdk-name="1.5.0_04" />
-  <component name="RmicSettings">
-    <option name="IS_EANABLED" value="true" />
-    <option name="DEBUGGING_INFO" value="true" />
-    <option name="GENERATE_NO_WARNINGS" value="false" />
-    <option name="GENERATE_IIOP_STUBS" value="false" />
-    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
-  </component>
-  <component name="copyright">
-    <option name="body" value="/*&#10; *  Copyright $today.year The Apache Software Foundation&#10; *&#10; *  Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#10; *  you may not use this file except in compliance with the License.&#10; *  You may obtain a copy of the License at&#10; *&#10; *      http://www.apache.org/licenses/LICENSE-2.0&#10; *&#10; *  Unless required by applicable law or agreed to in writing, software&#10; *  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#10; *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&#10; *  See the License for the specific language governing permissions and&#10; *  limitations under the License.&#10; */" />
-    <option name="location" value="1" />
-    <option name="remove" value="true" />
-    <option name="replace" value="2" />
-  </component>
-  <component name="libraryTable" />
-  <component name="uidesigner-configuration">
-    <option name="INSTRUMENT_CLASSES" value="true" />
-    <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true" />
-  </component>
-  <UsedPathMacros />
-</project>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="false">
+  <component name="AntConfiguration">
+    <defaultAnt bundledAnt="true" />
+    <buildFile url="file://$PROJECT_DIR$/build.xml">
+      <additionalClassPath>
+        <entry path="file://$PROJECT_DIR$/lib/build/junit/junit.jar" />
+      </additionalClassPath>
+      <antReference projectDefault="true" />
+      <customJdkName value="" />
+      <maximumHeapSize value="128" />
+      <properties />
+    </buildFile>
+  </component>
+  <component name="CodeStyleSettingsManager">
+    <option name="PER_PROJECT_SETTINGS" />
+    <option name="USE_PER_PROJECT_SETTINGS" value="false" />
+  </component>
+  <component name="CompilerConfiguration">
+    <option name="DEFAULT_COMPILER" value="Javac" />
+    <option name="CLEAR_OUTPUT_DIRECTORY" value="false" />
+    <option name="DEPLOY_AFTER_MAKE" value="0" />
+    <resourceExtensions>
+      <entry name=".+\.(properties|xml|html|dtd|tld)" />
+      <entry name=".+\.(gif|png|jpeg|jpg)" />
+    </resourceExtensions>
+    <wildcardResourcePatterns>
+      <entry name="?*.properties" />
+      <entry name="?*.xml" />
+      <entry name="?*.gif" />
+      <entry name="?*.png" />
+      <entry name="?*.jpeg" />
+      <entry name="?*.jpg" />
+      <entry name="?*.html" />
+      <entry name="?*.dtd" />
+      <entry name="?*.tld" />
+      <entry name="?*.conf" />
+    </wildcardResourcePatterns>
+  </component>
+  <component name="DataSourceManagerImpl" />
+  <component name="DependenciesAnalyzeManager">
+    <option name="myForwardDirection" value="false" />
+  </component>
+  <component name="DependencyValidationManager" />
+  <component name="EntryPointsManager">
+    <entry_points />
+  </component>
+  <component name="ExportToHTMLSettings">
+    <option name="PRINT_LINE_NUMBERS" value="false" />
+    <option name="OPEN_IN_BROWSER" value="false" />
+    <option name="OUTPUT_DIRECTORY" />
+  </component>
+  <component name="GUI Designer component loader factory" />
+  <component name="JavacSettings">
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="DEPRECATION" value="true" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+    <option name="MAXIMUM_HEAP_SIZE" value="128" />
+  </component>
+  <component name="JavadocGenerationManager">
+    <option name="OUTPUT_DIRECTORY" />
+    <option name="OPTION_SCOPE" value="protected" />
+    <option name="OPTION_HIERARCHY" value="true" />
+    <option name="OPTION_NAVIGATOR" value="true" />
+    <option name="OPTION_INDEX" value="true" />
+    <option name="OPTION_SEPARATE_INDEX" value="true" />
+    <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
+    <option name="OPTION_DEPRECATED_LIST" value="true" />
+    <option name="OTHER_OPTIONS" value="" />
+    <option name="HEAP_SIZE" />
+    <option name="OPEN_IN_BROWSER" value="true" />
+  </component>
+  <component name="JikesSettings">
+    <option name="JIKES_PATH" value="" />
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="DEPRECATION" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="IS_EMACS_ERRORS_MODE" value="true" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+  </component>
+  <component name="Palette2">
+    <group name="Swing">
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false">
+        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false">
+        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+      </item>
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false">
+        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+        <initial-values>
+          <property name="text" value="Button" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="RadioButton" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="CheckBox" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="Label" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false">
+        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+    </group>
+  </component>
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/commons-proxy.iml" filepath="$PROJECT_DIR$/commons-proxy.iml" />
+    </modules>
+  </component>
+  <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="true" project-jdk-name="1.5.0_04" />
+  <component name="RmicSettings">
+    <option name="IS_EANABLED" value="true" />
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="GENERATE_IIOP_STUBS" value="false" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+  </component>
+  <component name="copyright">
+    <option name="body" value="/*&#10; *  Copyright $today.year The Apache Software Foundation&#10; *&#10; *  Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#10; *  you may not use this file except in compliance with the License.&#10; *  You may obtain a copy of the License at&#10; *&#10; *      http://www.apache.org/licenses/LICENSE-2.0&#10; *&#10; *  Unless required by applicable law or agreed to in writing, software&#10; *  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#10; *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&#10; *  See the License for the specific language governing permissions and&#10; *  limitations under the License.&#10; */" />
+    <option name="location" value="1" />
+    <option name="remove" value="true" />
+    <option name="replace" value="2" />
+  </component>
+  <component name="libraryTable" />
+  <component name="uidesigner-configuration">
+    <option name="INSTRUMENT_CLASSES" value="true" />
+    <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true" />
+  </component>
+  <UsedPathMacros />
+</project>
+

Propchange: jakarta/commons/sandbox/proxy/trunk/commons-proxy.ipr
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/project.properties
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/project.properties?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/project.properties (original)
+++ jakarta/commons/sandbox/proxy/trunk/project.properties Fri Aug 26 20:51:56 2005
@@ -1,11 +1,11 @@
-#$Id: project.properties$
-
-#enable subversion support
-maven.changelog.factory=org.apache.maven.svnlib.SvnChangeLogFactory
-
-#xdoc settings
-maven.xdoc.data=left
-
-#checkstyle settings
-#maven.checkstyle.properties=${basedir}/checkstyle.xml
-#maven.checkstyle.header.file=${basedir}/checkstyle.header.txt
+#$Id: project.properties$
+
+#enable subversion support
+maven.changelog.factory=org.apache.maven.svnlib.SvnChangeLogFactory
+
+#xdoc settings
+maven.xdoc.data=left
+
+#checkstyle settings
+#maven.checkstyle.properties=${basedir}/checkstyle.xml
+#maven.checkstyle.header.file=${basedir}/checkstyle.header.txt

Propchange: jakarta/commons/sandbox/proxy/trunk/project.properties
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/project.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/project.xml?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/project.xml (original)
+++ jakarta/commons/sandbox/proxy/trunk/project.xml Fri Aug 26 20:51:56 2005
@@ -1,313 +1,313 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!-- $Id: project.xml$ -->
-<project>
-    <pomVersion>3</pomVersion>
-    <id>commons-proxy</id>
-    <name>Commons Proxy</name>
-    <groupId>commons-proxy</groupId>
-    <currentVersion>0.1</currentVersion>
-    <organization>
-        <name>Apache Software Foundation</name>
-        <url>http://apache.org</url>
-        <logo>http://apache.org/images/asf_logo_wide.png</logo>
-    </organization>
-    <inceptionYear>2005</inceptionYear>
-    <package>org.apache.commons.proxy</package>
-    <logo>/images/logo.png</logo>
-    <shortDescription>Java library for dynamic proxying</shortDescription>
-    <url>http://jakarta.apache.org/commons/sandbox/proxy</url>
-    <issueTrackingUrl>http://issues.apache.org/bugzilla</issueTrackingUrl>
-    <siteAddress>cvs.apache.org</siteAddress>
-    <siteDirectory>/www/jakarta.apache.org/commons/sandbox/proxy/</siteDirectory>
-    <description><![CDATA[
-    <p>
-    Commons proxy is a java library for creating dynamic proxys.
-    </p>
-    <section name="Features">
-      <p>
-        Commons-proxy comes with the follwing features
-        <ul>
-          <li>simple and easy to use API</li>
-          <li>based on AOP Alliance</li>
-          <li>implementations using java.reflect.Proxy,cglib and javassist</li>
-          <li>really fast</li>
-        </ul>
-      </p>
-    </section>
-  ]]></description>
-
-    <repository>
-
-        <connection>scm:svn:http:svn.apache.org:repos/asf/jakarta/commons/sandbox/proxy:trunk</connection>
-
-        <developerConnection>
-            scm:svn:https:svn.apache.org:repos/asf/jakarta/commons/sandbox/proxy:trunk</developerConnection>
-
-        <url>http://svn.apache.org/viewcvs.cgi/jakarta/commons/sandbox/proxy/trunk/</url>
-    </repository>
-
-    <versions>
-        <version>
-            <id>0.1</id>
-            <name>0.1</name>
-            <tag>Version_0_1</tag>
-        </version>
-    </versions>
-
-    <branches>
-    </branches>
-
-    <mailingLists>
-        <mailingList>commons-dev@jakarta.apache.org</mailingList>
-    </mailingLists>
-
-    <developers>
-        <developer>
-            <name>James Carman</name>
-            <id>jcarman</id>
-            <email>james@carmanconsulting.com</email>
-            <organization>Carman Consulting, Inc.</organization>
-            <roles>
-                <role>admin</role>
-                <role>designer</role>
-                <role>developer</role>
-            </roles>
-            <url>http://www.carmanconsulting.com/</url>
-            <timezone>-5</timezone>
-        </developer>
-        <developer>
-            <name>Knut Wannheden</name>
-            <id>knut</id>
-            <email>knut@apache.org</email>
-            <roles>
-                <role>designer</role>
-                <role>developer</role>
-            </roles>
-            <timezone>+6</timezone>
-        </developer>
-        <developer>
-            <name>J&#246;rg Hohwiller</name>
-            <email>hohwille@users.sourceforge.net</email>
-            <organization/>
-            <roles>
-                <role>mavenizer</role>
-                <role>developer</role>
-            </roles>
-            <url></url>
-        </developer>
-    </developers>
-
-    <contributors>
-        <contributor>
-            <name>J&#246;rg Schaible</name>
-            <email>joerg.schaible@gmx.de</email>
-            <organization/>
-            <roles>
-                <role>advisor</role>
-                <role>designer</role>
-            </roles>
-            <url></url>
-        </contributor>
-    </contributors>
-
-    <licenses>
-        <license>
-            <name>ASL</name>
-            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
-            <distribution>repro</distribution>
-        </license>
-    </licenses>
-
-    <dependencies>
-        <dependency>
-            <groupId>cglib</groupId>
-            <artifactId>cglib-full</artifactId>
-            <version>2.0.2</version>
-            <url>http://cglib.sourceforge.net</url>
-            <properties>
-                <comment>code generation library</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>javassist</groupId>
-            <artifactId>javassist</artifactId>
-            <version>3.0</version>
-            <url>http://www.csg.is.titech.ac.jp/~chiba/javassist/</url>
-            <properties>
-                <comment>java programming assistant - library for bytecode maniplation</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>aopalliance</groupId>
-            <artifactId>aopalliance</artifactId>
-            <version>1.0</version>
-            <url>http://aopalliance.sourceforge.net/</url>
-            <properties>
-                <comment>AOP standard API</comment>
-            </properties>
-        </dependency>
-
-        <dependency>
-            <groupId>axis</groupId>
-            <artifactId>axis</artifactId>
-            <version>1.2.1</version>
-            <url>http://ws.apache.org/axis/index.html</url>
-            <properties>
-                <comment>XML remote procedure call API</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>axis</groupId>
-            <artifactId>axis-jaxrpc</artifactId>
-            <version>1.2.1</version>
-            <url>http://ws.apache.org/axis/index.html</url>
-            <properties>
-                <comment>XML remote procedure call API</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>axis</groupId>
-            <artifactId>axis-saaj</artifactId>
-            <version>1.2.1</version>
-            <url>http://ws.apache.org/axis/index.html</url>
-            <properties>
-                <comment>XML remote procedure call API</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>axis</groupId>
-            <artifactId>axis-wsdl4j</artifactId>
-            <version>1.5.1</version>
-            <url>http://ws.apache.org/axis/index.html</url>
-            <properties>
-                <comment>XML remote procedure call API</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>hessian</groupId>
-            <artifactId>hessian</artifactId>
-            <version>3.0.1</version>
-            <url>http://www.caucho.com/hessian/</url>
-            <properties>
-                <comment>binary webservices protocol</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>burlap</groupId>
-            <artifactId>burlap</artifactId>
-            <version>2.1.7</version>
-            <url>http://www.caucho.com/burlap/</url>
-            <properties>
-                <comment>library for building webservices really easy</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging</artifactId>
-            <version>1.0.4</version>
-            <url>http://jakarta.apache.org/commons/logging/</url>
-            <properties>
-                <comment>logging abstraction layer</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>commons-pool</groupId>
-            <artifactId>commons-pool</artifactId>
-            <version>1.2</version>
-            <url>http://jakarta.apache.org/commons/pool/</url>
-            <properties>
-                <comment>pooling API</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-            <version>3.1</version>
-            <url>http://jakarta.apache.org/commons/collections/</url>
-            <properties>
-                <comment>collection API</comment>
-            </properties>
-        </dependency>
-        <dependency>
-            <groupId>commons-discovery</groupId>
-            <artifactId>commons-discovery</artifactId>
-            <version>0.2</version>
-            <url>http://jakarta.apache.org/commons/discovery/</url>
-            <properties>
-                <comment>discovery API</comment>
-            </properties>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <nagEmailAddress>james@carmanconsulting.com</nagEmailAddress>
-        <sourceDirectory>${basedir}/src/java</sourceDirectory>
-        <unitTestSourceDirectory>${basedir}/src/test</unitTestSourceDirectory>
-        <integrationUnitTestSourceDirectory/>
-        <aspectSourceDirectory/>
-
-        <unitTest>
-            <includes>
-                <include>**/Test*.java</include>
-            </includes>
-            <excludes></excludes>
-            <resources>
-                <resource>
-                    <directory>${maven.src.dir}/test</directory>
-                    <includes>
-                        <include>**/*.dtd</include>
-                        <include>**/*.properties</include>
-                        <include>**/*.x*</include>
-                        <include>**/*.mf</include>
-                        <include>**/*.jar</include>
-                    </includes>
-                </resource>
-            </resources>
-        </unitTest>
-
-        <resources>
-            <resource>
-                <directory>${maven.src.dir}/java</directory>
-                <includes>
-                    <include>**/*.dtd</include>
-                    <include>**/*.properties</include>
-                    <include>**/*.x*</include>
-                </includes>
-            </resource>
-            <!--
-            <resource>
-              <directory>${maven.src.dir}/conf</directory>
-              <targetPath>BLOCK-INF</targetPath>
-              <includes>
-                <include>block.xml</include>
-              </includes>
-            </resource>
-            -->
-        </resources>
-        <jars></jars>
-    </build>
-
-    <reports>
-        <report>maven-changes-plugin</report>
-        <report>maven-changelog-plugin</report>
-        <report>maven-developer-activity-plugin</report>
-        <report>maven-file-activity-plugin</report>
-        <report>maven-checkstyle-plugin</report>
-        <report>maven-javadoc-plugin</report>
-        <report>maven-jdepend-plugin</report>
-        <report>maven-junit-report-plugin</report>
-        <report>maven-jxr-plugin</report>
-        <report>maven-license-plugin</report>
-        <report>maven-linkcheck-plugin</report>
-        <report>maven-tasklist-plugin</report>
-        <report>maven-faq-plugin</report>
-        <!--
-            <report>maven-pmd-plugin</report>
-            <report>maven-clover-plugin</report>
-            <report>maven-simian-plugin</report>
-            <report>maven-statcvs-plugin</report>
-            <report>maven-xhtml-plugin</report>
-        -->
-    </reports>
-
-</project>
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!-- $Id: project.xml$ -->
+<project>
+    <pomVersion>3</pomVersion>
+    <id>commons-proxy</id>
+    <name>Commons Proxy</name>
+    <groupId>commons-proxy</groupId>
+    <currentVersion>0.1</currentVersion>
+    <organization>
+        <name>Apache Software Foundation</name>
+        <url>http://apache.org</url>
+        <logo>http://apache.org/images/asf_logo_wide.png</logo>
+    </organization>
+    <inceptionYear>2005</inceptionYear>
+    <package>org.apache.commons.proxy</package>
+    <logo>/images/logo.png</logo>
+    <shortDescription>Java library for dynamic proxying</shortDescription>
+    <url>http://jakarta.apache.org/commons/sandbox/proxy</url>
+    <issueTrackingUrl>http://issues.apache.org/bugzilla</issueTrackingUrl>
+    <siteAddress>cvs.apache.org</siteAddress>
+    <siteDirectory>/www/jakarta.apache.org/commons/sandbox/proxy/</siteDirectory>
+    <description><![CDATA[
+    <p>
+    Commons proxy is a java library for creating dynamic proxys.
+    </p>
+    <section name="Features">
+      <p>
+        Commons-proxy comes with the follwing features
+        <ul>
+          <li>simple and easy to use API</li>
+          <li>based on AOP Alliance</li>
+          <li>implementations using java.reflect.Proxy,cglib and javassist</li>
+          <li>really fast</li>
+        </ul>
+      </p>
+    </section>
+  ]]></description>
+
+    <repository>
+
+        <connection>scm:svn:http:svn.apache.org:repos/asf/jakarta/commons/sandbox/proxy:trunk</connection>
+
+        <developerConnection>
+            scm:svn:https:svn.apache.org:repos/asf/jakarta/commons/sandbox/proxy:trunk</developerConnection>
+
+        <url>http://svn.apache.org/viewcvs.cgi/jakarta/commons/sandbox/proxy/trunk/</url>
+    </repository>
+
+    <versions>
+        <version>
+            <id>0.1</id>
+            <name>0.1</name>
+            <tag>Version_0_1</tag>
+        </version>
+    </versions>
+
+    <branches>
+    </branches>
+
+    <mailingLists>
+        <mailingList>commons-dev@jakarta.apache.org</mailingList>
+    </mailingLists>
+
+    <developers>
+        <developer>
+            <name>James Carman</name>
+            <id>jcarman</id>
+            <email>james@carmanconsulting.com</email>
+            <organization>Carman Consulting, Inc.</organization>
+            <roles>
+                <role>admin</role>
+                <role>designer</role>
+                <role>developer</role>
+            </roles>
+            <url>http://www.carmanconsulting.com/</url>
+            <timezone>-5</timezone>
+        </developer>
+        <developer>
+            <name>Knut Wannheden</name>
+            <id>knut</id>
+            <email>knut@apache.org</email>
+            <roles>
+                <role>designer</role>
+                <role>developer</role>
+            </roles>
+            <timezone>+6</timezone>
+        </developer>
+        <developer>
+            <name>J&#246;rg Hohwiller</name>
+            <email>hohwille@users.sourceforge.net</email>
+            <organization/>
+            <roles>
+                <role>mavenizer</role>
+                <role>developer</role>
+            </roles>
+            <url></url>
+        </developer>
+    </developers>
+
+    <contributors>
+        <contributor>
+            <name>J&#246;rg Schaible</name>
+            <email>joerg.schaible@gmx.de</email>
+            <organization/>
+            <roles>
+                <role>advisor</role>
+                <role>designer</role>
+            </roles>
+            <url></url>
+        </contributor>
+    </contributors>
+
+    <licenses>
+        <license>
+            <name>ASL</name>
+            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+            <distribution>repro</distribution>
+        </license>
+    </licenses>
+
+    <dependencies>
+        <dependency>
+            <groupId>cglib</groupId>
+            <artifactId>cglib-full</artifactId>
+            <version>2.0.2</version>
+            <url>http://cglib.sourceforge.net</url>
+            <properties>
+                <comment>code generation library</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>javassist</groupId>
+            <artifactId>javassist</artifactId>
+            <version>3.0</version>
+            <url>http://www.csg.is.titech.ac.jp/~chiba/javassist/</url>
+            <properties>
+                <comment>java programming assistant - library for bytecode maniplation</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>aopalliance</groupId>
+            <artifactId>aopalliance</artifactId>
+            <version>1.0</version>
+            <url>http://aopalliance.sourceforge.net/</url>
+            <properties>
+                <comment>AOP standard API</comment>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>axis</groupId>
+            <artifactId>axis</artifactId>
+            <version>1.2.1</version>
+            <url>http://ws.apache.org/axis/index.html</url>
+            <properties>
+                <comment>XML remote procedure call API</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>axis</groupId>
+            <artifactId>axis-jaxrpc</artifactId>
+            <version>1.2.1</version>
+            <url>http://ws.apache.org/axis/index.html</url>
+            <properties>
+                <comment>XML remote procedure call API</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>axis</groupId>
+            <artifactId>axis-saaj</artifactId>
+            <version>1.2.1</version>
+            <url>http://ws.apache.org/axis/index.html</url>
+            <properties>
+                <comment>XML remote procedure call API</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>axis</groupId>
+            <artifactId>axis-wsdl4j</artifactId>
+            <version>1.5.1</version>
+            <url>http://ws.apache.org/axis/index.html</url>
+            <properties>
+                <comment>XML remote procedure call API</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>hessian</groupId>
+            <artifactId>hessian</artifactId>
+            <version>3.0.1</version>
+            <url>http://www.caucho.com/hessian/</url>
+            <properties>
+                <comment>binary webservices protocol</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>burlap</groupId>
+            <artifactId>burlap</artifactId>
+            <version>2.1.7</version>
+            <url>http://www.caucho.com/burlap/</url>
+            <properties>
+                <comment>library for building webservices really easy</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging</artifactId>
+            <version>1.0.4</version>
+            <url>http://jakarta.apache.org/commons/logging/</url>
+            <properties>
+                <comment>logging abstraction layer</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>commons-pool</groupId>
+            <artifactId>commons-pool</artifactId>
+            <version>1.2</version>
+            <url>http://jakarta.apache.org/commons/pool/</url>
+            <properties>
+                <comment>pooling API</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>commons-collections</groupId>
+            <artifactId>commons-collections</artifactId>
+            <version>3.1</version>
+            <url>http://jakarta.apache.org/commons/collections/</url>
+            <properties>
+                <comment>collection API</comment>
+            </properties>
+        </dependency>
+        <dependency>
+            <groupId>commons-discovery</groupId>
+            <artifactId>commons-discovery</artifactId>
+            <version>0.2</version>
+            <url>http://jakarta.apache.org/commons/discovery/</url>
+            <properties>
+                <comment>discovery API</comment>
+            </properties>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <nagEmailAddress>james@carmanconsulting.com</nagEmailAddress>
+        <sourceDirectory>${basedir}/src/java</sourceDirectory>
+        <unitTestSourceDirectory>${basedir}/src/test</unitTestSourceDirectory>
+        <integrationUnitTestSourceDirectory/>
+        <aspectSourceDirectory/>
+
+        <unitTest>
+            <includes>
+                <include>**/Test*.java</include>
+            </includes>
+            <excludes></excludes>
+            <resources>
+                <resource>
+                    <directory>${maven.src.dir}/test</directory>
+                    <includes>
+                        <include>**/*.dtd</include>
+                        <include>**/*.properties</include>
+                        <include>**/*.x*</include>
+                        <include>**/*.mf</include>
+                        <include>**/*.jar</include>
+                    </includes>
+                </resource>
+            </resources>
+        </unitTest>
+
+        <resources>
+            <resource>
+                <directory>${maven.src.dir}/java</directory>
+                <includes>
+                    <include>**/*.dtd</include>
+                    <include>**/*.properties</include>
+                    <include>**/*.x*</include>
+                </includes>
+            </resource>
+            <!--
+            <resource>
+              <directory>${maven.src.dir}/conf</directory>
+              <targetPath>BLOCK-INF</targetPath>
+              <includes>
+                <include>block.xml</include>
+              </includes>
+            </resource>
+            -->
+        </resources>
+        <jars></jars>
+    </build>
+
+    <reports>
+        <report>maven-changes-plugin</report>
+        <report>maven-changelog-plugin</report>
+        <report>maven-developer-activity-plugin</report>
+        <report>maven-file-activity-plugin</report>
+        <report>maven-checkstyle-plugin</report>
+        <report>maven-javadoc-plugin</report>
+        <report>maven-jdepend-plugin</report>
+        <report>maven-junit-report-plugin</report>
+        <report>maven-jxr-plugin</report>
+        <report>maven-license-plugin</report>
+        <report>maven-linkcheck-plugin</report>
+        <report>maven-tasklist-plugin</report>
+        <report>maven-faq-plugin</report>
+        <report>maven-clover-plugin</report>
+        <!--
+            <report>maven-pmd-plugin</report>
+            <report>maven-simian-plugin</report>
+            <report>maven-statcvs-plugin</report>
+            <report>maven-xhtml-plugin</report>
+        -->
+    </reports>
+
+</project>

Propchange: jakarta/commons/sandbox/proxy/trunk/project.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java Fri Aug 26 20:51:56 2005
@@ -1,32 +1,32 @@
-/*
- *  Copyright 2005 The Apache Software Foundation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.commons.proxy;
-
-/**
- * Provides an object.
- *
- * @author James Carman
- * @version 1.0
- */
-public interface ObjectProvider<T>
-{
-    /**
-     * Returns an object.  Implementing classes should throw a {@link org.apache.commons.proxy.exception.ObjectProviderException ObjectProviderException} if
-     * any problems arise while constructing/finding the object. 
-     * @return an object
-     */
-    public T getObject();
-}
+/*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.commons.proxy;
+
+/**
+ * Provides an object.
+ *
+ * @author James Carman
+ * @version 1.0
+ */
+public interface ObjectProvider<T>
+{
+    /**
+     * Returns an object.  Implementing classes should throw a {@link org.apache.commons.proxy.exception.ObjectProviderException ObjectProviderException} if
+     * any problems arise while constructing/finding the object. 
+     * @return an object
+     */
+    public T getObject();
+}

Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ObjectProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java Fri Aug 26 20:51:56 2005
@@ -1,78 +1,78 @@
-/*
- *  Copyright 2005 The Apache Software Foundation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.commons.proxy;
-
-import org.aopalliance.intercept.MethodInterceptor;
-
-/**
- * A <code>ProxyFactory</code> essentially encapsulates a "proxying strategy."  All <code>commons-proxy</code> proxies are created using
- * a <code>ProxyFactory</code>.  So, to change the proxying strategy, simply provide a different <code>ProxyFactory</code>
- * implementation.
- *
- * @author James Carman
- * @version 1.0
- */
-public interface ProxyFactory
-{
-    /**
-     * Creates a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor} before
-     * eventually reaching the <code>target</code> object.
-     *
-     * @param classLoader     the class loader to use when generating the proxy
-     * @param target          the target object
-     * @param interceptor     the method interceptor
-     * @param proxyInterfaces the interfaces that the proxy should implement.
-     * @return a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor} before
-     *         eventually reaching the <code>target</code> object.
-     */
-    public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces );
-
-    /**
-     * Creates a proxy which passes through a {@link MethodInterceptor method interceptor} before
-     * eventually reaching the <code>target</code> object.  The proxy will be generated using the
-     * current thread's "context class loader."
-     *
-     * @param target          the target object
-     * @param interceptor     the method interceptor
-     * @param proxyInterfaces the interfaces that the proxy should implement
-     * @return a proxy which passes through a {@link MethodInterceptor method interceptor} before
-     *         eventually reaching the <code>target</code> object.
-     */
-    public Object createInterceptorProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces );
-
-    /**
-     * Creates a proxy which delegates to the object provided by the target
-     * object provider.  The proxy will be generated using the current thread's "context class loader."
-     *
-     * @param targetProvider  the target object provider
-     * @param proxyInterfaces the interfaces that the proxy should implement
-     * @return a proxy which delegates to the object provided by the target
-     *         object provider
-     */
-    public Object createProxy( ObjectProvider targetProvider, Class... proxyInterfaces );
-
-    /**
-     * Creates a proxy which delegates to the object provided by the target
-     * object provider.
-     *
-     * @param classLoader     the class loader to use when generating the proxy
-     * @param targetProvider  the target object provider
-     * @param proxyInterfaces the interfaces that the proxy should implement
-     * @return a proxy which delegates to the object provided by the target
-     *         object provider
-     */
-    public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces );
-}
+/*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.commons.proxy;
+
+import org.aopalliance.intercept.MethodInterceptor;
+
+/**
+ * A <code>ProxyFactory</code> essentially encapsulates a "proxying strategy."  All <code>commons-proxy</code> proxies are created using
+ * a <code>ProxyFactory</code>.  So, to change the proxying strategy, simply provide a different <code>ProxyFactory</code>
+ * implementation.
+ *
+ * @author James Carman
+ * @version 1.0
+ */
+public interface ProxyFactory
+{
+    /**
+     * Creates a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor} before
+     * eventually reaching the <code>target</code> object.
+     *
+     * @param classLoader     the class loader to use when generating the proxy
+     * @param target          the target object
+     * @param interceptor     the method interceptor
+     * @param proxyInterfaces the interfaces that the proxy should implement.
+     * @return a proxy which passes through a {@link org.aopalliance.intercept.MethodInterceptor method interceptor} before
+     *         eventually reaching the <code>target</code> object.
+     */
+    public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces );
+
+    /**
+     * Creates a proxy which passes through a {@link MethodInterceptor method interceptor} before
+     * eventually reaching the <code>target</code> object.  The proxy will be generated using the
+     * current thread's "context class loader."
+     *
+     * @param target          the target object
+     * @param interceptor     the method interceptor
+     * @param proxyInterfaces the interfaces that the proxy should implement
+     * @return a proxy which passes through a {@link MethodInterceptor method interceptor} before
+     *         eventually reaching the <code>target</code> object.
+     */
+    public Object createInterceptorProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces );
+
+    /**
+     * Creates a proxy which delegates to the object provided by the target
+     * object provider.  The proxy will be generated using the current thread's "context class loader."
+     *
+     * @param targetProvider  the target object provider
+     * @param proxyInterfaces the interfaces that the proxy should implement
+     * @return a proxy which delegates to the object provided by the target
+     *         object provider
+     */
+    public Object createProxy( ObjectProvider targetProvider, Class... proxyInterfaces );
+
+    /**
+     * Creates a proxy which delegates to the object provided by the target
+     * object provider.
+     *
+     * @param classLoader     the class loader to use when generating the proxy
+     * @param targetProvider  the target object provider
+     * @param proxyInterfaces the interfaces that the proxy should implement
+     * @return a proxy which delegates to the object provided by the target
+     *         object provider
+     */
+    public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces );
+}

Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/ProxyFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java Fri Aug 26 20:51:56 2005
@@ -1,45 +1,45 @@
-/*
- *  Copyright 2005 The Apache Software Foundation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.commons.proxy.exception;
-
-/**
- * <code>ObjectProvider</code> implementations should throw this exception type
- * to indicate that there was a problem creating/finding the object.
- * 
- * @author James Carman
- * @version 1.0
- */
-public class ObjectProviderException extends RuntimeException
-{
-    public ObjectProviderException()
-    {
-    }
-
-    public ObjectProviderException( String message )
-    {
-        super( message );
-    }
-
-    public ObjectProviderException( String message, Throwable cause )
-    {
-        super( message, cause );
-    }
-
-    public ObjectProviderException( Throwable cause )
-    {
-        super( cause );
-    }
-}
+/*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.commons.proxy.exception;
+
+/**
+ * <code>ObjectProvider</code> implementations should throw this exception type
+ * to indicate that there was a problem creating/finding the object.
+ * 
+ * @author James Carman
+ * @version 1.0
+ */
+public class ObjectProviderException extends RuntimeException
+{
+    public ObjectProviderException()
+    {
+    }
+
+    public ObjectProviderException( String message )
+    {
+        super( message );
+    }
+
+    public ObjectProviderException( String message, Throwable cause )
+    {
+        super( message, cause );
+    }
+
+    public ObjectProviderException( Throwable cause )
+    {
+        super( cause );
+    }
+}

Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ObjectProviderException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java Fri Aug 26 20:51:56 2005
@@ -1,45 +1,45 @@
-/*
- *  Copyright 2005 The Apache Software Foundation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.commons.proxy.exception;
-
-/**
- * A runtime exception type to be used by {@link org.apache.commons.proxy.ProxyFactory proxy factories} when a
- * problem occurs.
- * 
- * @author James Carman
- * @version 1.0
- */
-public class ProxyFactoryException extends RuntimeException
-{
-    public ProxyFactoryException()
-    {
-    }
-
-    public ProxyFactoryException( String message )
-    {
-        super( message );
-    }
-
-    public ProxyFactoryException( String message, Throwable cause )
-    {
-        super( message, cause );
-    }
-
-    public ProxyFactoryException( Throwable cause )
-    {
-        super( cause );
-    }
-}
+/*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.commons.proxy.exception;
+
+/**
+ * A runtime exception type to be used by {@link org.apache.commons.proxy.ProxyFactory proxy factories} when a
+ * problem occurs.
+ * 
+ * @author James Carman
+ * @version 1.0
+ */
+public class ProxyFactoryException extends RuntimeException
+{
+    public ProxyFactoryException()
+    {
+    }
+
+    public ProxyFactoryException( String message )
+    {
+        super( message );
+    }
+
+    public ProxyFactoryException( String message, Throwable cause )
+    {
+        super( message, cause );
+    }
+
+    public ProxyFactoryException( Throwable cause )
+    {
+        super( cause );
+    }
+}

Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/exception/ProxyFactoryException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java Fri Aug 26 20:51:56 2005
@@ -1,47 +1,47 @@
-/*
- *  Copyright 2005 The Apache Software Foundation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.commons.proxy.factory;
-
-import org.aopalliance.intercept.MethodInterceptor;
-import org.apache.commons.proxy.ProxyFactory;
-import org.apache.commons.proxy.ObjectProvider;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-/**
- * A helpful superclass for {@link org.apache.commons.proxy.ProxyFactory} implementations.
- * @author James Carman
- * @version 1.0
- */
-public abstract class AbstractProxyFactory implements ProxyFactory
-{
-    protected Log log = LogFactory.getLog( getClass() );
-
-    public void setLog( Log log )
-    {
-        this.log = log;
-    }
-    
-    public Object createInterceptorProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
-    {
-        return createInterceptorProxy( Thread.currentThread().getContextClassLoader(), target, interceptor, proxyInterfaces );
-    }
-
-    public Object createProxy( ObjectProvider targetProvider, Class... proxyInterfaces )
-    {
-        return createProxy( Thread.currentThread().getContextClassLoader(), targetProvider, proxyInterfaces );
-    }
+/*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.commons.proxy.factory;
+
+import org.aopalliance.intercept.MethodInterceptor;
+import org.apache.commons.proxy.ProxyFactory;
+import org.apache.commons.proxy.ObjectProvider;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * A helpful superclass for {@link org.apache.commons.proxy.ProxyFactory} implementations.
+ * @author James Carman
+ * @version 1.0
+ */
+public abstract class AbstractProxyFactory implements ProxyFactory
+{
+    protected Log log = LogFactory.getLog( getClass() );
+
+    public void setLog( Log log )
+    {
+        this.log = log;
+    }
+    
+    public Object createInterceptorProxy( Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
+    {
+        return createInterceptorProxy( Thread.currentThread().getContextClassLoader(), target, interceptor, proxyInterfaces );
+    }
+
+    public Object createProxy( ObjectProvider targetProvider, Class... proxyInterfaces )
+    {
+        return createProxy( Thread.currentThread().getContextClassLoader(), targetProvider, proxyInterfaces );
+    }
 }

Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/AbstractProxyFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java?rev=240386&r1=240385&r2=240386&view=diff
==============================================================================
--- jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java (original)
+++ jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java Fri Aug 26 20:51:56 2005
@@ -1,129 +1,129 @@
-/*
- *  Copyright 2005 The Apache Software Foundation
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.commons.proxy.factory.cglib;
-
-import net.sf.cglib.proxy.Dispatcher;
-import net.sf.cglib.proxy.Enhancer;
-import net.sf.cglib.proxy.MethodProxy;
-import org.aopalliance.intercept.MethodInterceptor;
-import org.aopalliance.intercept.MethodInvocation;
-import org.apache.commons.proxy.ObjectProvider;
-import org.apache.commons.proxy.factory.AbstractProxyFactory;
-
-import java.lang.reflect.AccessibleObject;
-import java.lang.reflect.Method;
-
-/**
- * A <a href="http://cglib.sourceforge.net/">CGLIB</a>-based {@link org.apache.commons.proxy.ProxyFactory}
- * implementation.
- * 
- * @author James Carman
- * @version 1.0
- */
-public class CglibProxyFactory extends AbstractProxyFactory
-{
-    public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
-    {
-        final Enhancer enhancer = new Enhancer();
-        enhancer.setClassLoader( classLoader );
-        enhancer.setInterfaces( proxyInterfaces );
-        enhancer.setCallback( new InterceptorBridge( target, interceptor ) );
-        return enhancer.create();
-    }
-
-    public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces )
-    {
-        final Enhancer enhancer = new Enhancer();
-        enhancer.setClassLoader( classLoader );
-        enhancer.setInterfaces( proxyInterfaces );
-        enhancer.setCallback( new ObjectProviderDispatcher( targetProvider ) );
-        return enhancer.create();
-    }
-
-    private class InterceptorBridge implements net.sf.cglib.proxy.MethodInterceptor
-    {
-        private final MethodInterceptor inner;
-        private final Object target;
-
-        public InterceptorBridge( Object target, MethodInterceptor inner )
-        {
-            this.inner = inner;
-            this.target = target;
-        }
-
-        public Object intercept( Object object, Method method, Object[] args, MethodProxy methodProxy ) throws Throwable
-        {
-            return inner.invoke( new MethodProxyMethodInvocation( target, method, args, methodProxy ) );
-        }
-    }
-
-    private class MethodProxyMethodInvocation implements MethodInvocation
-    {
-        private final MethodProxy methodProxy;
-        private final Method method;
-        private final Object[] args;
-        private final Object target;
-
-        public MethodProxyMethodInvocation( Object target, Method method, Object[] args, MethodProxy methodProxy )
-        {
-            this.target = target;
-            this.method = method;
-            this.methodProxy = methodProxy;
-            this.args = args;
-        }
-
-        public Method getMethod()
-        {
-            return method;
-        }
-
-        public Object[] getArguments()
-        {
-            return args;
-        }
-
-        public Object proceed() throws Throwable
-        {
-            return methodProxy.invoke( target, args );
-        }
-
-        public Object getThis()
-        {
-            return null;
-        }
-
-        public AccessibleObject getStaticPart()
-        {
-            return null;
-        }
-    }
-
-    private class ObjectProviderDispatcher implements Dispatcher
-    {
-        private final ObjectProvider objectProvider;
-
-        public ObjectProviderDispatcher( ObjectProvider objectProvider )
-        {
-            this.objectProvider = objectProvider;
-        }
-
-        public Object loadObject()
-        {
-            return objectProvider.getObject();
-        }
-    }
-
-}
+/*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.commons.proxy.factory.cglib;
+
+import net.sf.cglib.proxy.Dispatcher;
+import net.sf.cglib.proxy.Enhancer;
+import net.sf.cglib.proxy.MethodProxy;
+import org.aopalliance.intercept.MethodInterceptor;
+import org.aopalliance.intercept.MethodInvocation;
+import org.apache.commons.proxy.ObjectProvider;
+import org.apache.commons.proxy.factory.AbstractProxyFactory;
+
+import java.lang.reflect.AccessibleObject;
+import java.lang.reflect.Method;
+
+/**
+ * A <a href="http://cglib.sourceforge.net/">CGLIB</a>-based {@link org.apache.commons.proxy.ProxyFactory}
+ * implementation.
+ * 
+ * @author James Carman
+ * @version 1.0
+ */
+public class CglibProxyFactory extends AbstractProxyFactory
+{
+    public Object createInterceptorProxy( ClassLoader classLoader, Object target, MethodInterceptor interceptor, Class... proxyInterfaces )
+    {
+        final Enhancer enhancer = new Enhancer();
+        enhancer.setClassLoader( classLoader );
+        enhancer.setInterfaces( proxyInterfaces );
+        enhancer.setCallback( new InterceptorBridge( target, interceptor ) );
+        return enhancer.create();
+    }
+
+    public Object createProxy( ClassLoader classLoader, ObjectProvider targetProvider, Class... proxyInterfaces )
+    {
+        final Enhancer enhancer = new Enhancer();
+        enhancer.setClassLoader( classLoader );
+        enhancer.setInterfaces( proxyInterfaces );
+        enhancer.setCallback( new ObjectProviderDispatcher( targetProvider ) );
+        return enhancer.create();
+    }
+
+    private class InterceptorBridge implements net.sf.cglib.proxy.MethodInterceptor
+    {
+        private final MethodInterceptor inner;
+        private final Object target;
+
+        public InterceptorBridge( Object target, MethodInterceptor inner )
+        {
+            this.inner = inner;
+            this.target = target;
+        }
+
+        public Object intercept( Object object, Method method, Object[] args, MethodProxy methodProxy ) throws Throwable
+        {
+            return inner.invoke( new MethodProxyMethodInvocation( target, method, args, methodProxy ) );
+        }
+    }
+
+    private class MethodProxyMethodInvocation implements MethodInvocation
+    {
+        private final MethodProxy methodProxy;
+        private final Method method;
+        private final Object[] args;
+        private final Object target;
+
+        public MethodProxyMethodInvocation( Object target, Method method, Object[] args, MethodProxy methodProxy )
+        {
+            this.target = target;
+            this.method = method;
+            this.methodProxy = methodProxy;
+            this.args = args;
+        }
+
+        public Method getMethod()
+        {
+            return method;
+        }
+
+        public Object[] getArguments()
+        {
+            return args;
+        }
+
+        public Object proceed() throws Throwable
+        {
+            return methodProxy.invoke( target, args );
+        }
+
+        public Object getThis()
+        {
+            return null;
+        }
+
+        public AccessibleObject getStaticPart()
+        {
+            return null;
+        }
+    }
+
+    private class ObjectProviderDispatcher implements Dispatcher
+    {
+        private final ObjectProvider objectProvider;
+
+        public ObjectProviderDispatcher( ObjectProvider objectProvider )
+        {
+            this.objectProvider = objectProvider;
+        }
+
+        public Object loadObject()
+        {
+            return objectProvider.getObject();
+        }
+    }
+
+}

Propchange: jakarta/commons/sandbox/proxy/trunk/src/java/org/apache/commons/proxy/factory/cglib/CglibProxyFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message