svn commit: rev 47447 - in avalon/trunk/central/laboratory/avalon-net/DynamicProxy: . src/DynamicProxy
[email protected] 29 Sep 2004 02:48:09 -0000
| Newsgroups | gmane.comp.jakarta.avalon.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: hammett
Date: Tue Sep 28 19:48:09 2004
New Revision: 47447
Added:
avalon/trunk/central/laboratory/avalon-net/DynamicProxy/DynamicProxy.build (contents, props changed)
Modified:
avalon/trunk/central/laboratory/avalon-net/DynamicProxy/src/DynamicProxy/ProxyGenerator.cs
Log:
Completed! Phew!
Added: avalon/trunk/central/laboratory/avalon-net/DynamicProxy/DynamicProxy.build
==============================================================================
--- (empty file)
+++ avalon/trunk/central/laboratory/avalon-net/DynamicProxy/DynamicProxy.build Tue Sep 28 19:48:09 2004
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding='iso-8859-1' ?>
+<!--
+ Copyright 2003-2004 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.
+-->
+<project name="dynamicproxy" default="build">
+
+ <property name="base.dir" value="." />
+ <property name="bin.dir" value="${base.dir}/bin" />
+ <property name="lib.dir" value="${base.dir}/lib" />
+ <property name="doc.dir" value="${base.dir}/doc" />
+ <property name="src.dir" value="${base.dir}/src" />
+
+ <property name="core.src.dir" value="${src.dir}/DynamicProxy" />
+ <property name="core.test.src.dir" value="${src.dir}/DynamicProxyTest" />
+ <property name="core.name" value="Apache.Avalon.DynamicProxy" />
+ <property name="core.assembly.name" value="${core.name}.dll" />
+ <property name="core.test.assembly.name" value="${core.name}.Test.dll" />
+
+ <property name="debug" value="false" />
+ <property name="optimize" value="true" />
+ <property name="version" value="1.0.0.2" />
+
+ <!-- find out where nunit.framework.dll is -->
+ <property name="nant.lib.dir"
+ value="${path::combine(nant::get-base-directory(), 'lib')}"
+ dynamic="true" />
+
+ <property name="nant.lib.family.dir"
+ value="${path::combine(nant.lib.dir,framework::get-family(framework::get-target-framework()))}"
+ dynamic="true" />
+
+ <property name="nant.lib.framework.dir"
+ value="${path::combine(nant.lib.family.dir, framework::get-version(framework::get-target-framework()))}"
+ dynamic="true" />
+
+ <property name="nunit.framework.dll"
+ value="${path::combine(nant.lib.framework.dir, 'nunit.framework.dll')}" />
+
+ <property name="nant.tasks.nunit2"
+ value="False"
+ unless="${property::exists('nant.tasks.nunit2')}" />
+
+ <target name="clean">
+ <delete dir="bin" failonerror="false" />
+ </target>
+
+ <target name="init" depends="clean">
+ <mkdir dir="bin" />
+ <!-- <copy file="${antlr.runtime.dll}" todir="build" /> -->
+ </target>
+
+ <target name="build" depends="init,core.tests.run" />
+
+ <target name="core.compile" depends="init">
+ <csc
+ doc="${bin.dir}/${core.name}.xml"
+ target="library"
+ debug="${debug}"
+ optimize="${optimize}"
+ output="${bin.dir}/${core.assembly.name}">
+
+ <sources basedir="${core.src.dir}" defaultexcludes="true">
+ <includes name="**/*.cs" />
+ </sources>
+ </csc>
+ </target>
+
+ <target name="core.tests.compile" depends="core.compile">
+ <csc
+ target="library"
+ debug="${debug}"
+ output="${bin.dir}/${core.test.assembly.name}">
+
+ <sources basedir="${core.test.src.dir}" defaultexcludes="true">
+ <includes name="**/*.cs" />
+ </sources>
+
+ <references>
+ <include name="${nunit.framework.dll}" />
+ <include name="${bin.dir}/${core.assembly.name}" />
+ </references>
+ </csc>
+ </target>
+
+ <target name="core.tests.run" depends="core.tests.compile">
+ <nunit2 haltonerror="true" failonerror="true" haltonfailure="true">
+ <formatter type="Plain" />
+ <test assemblyname="${bin.dir}/${core.test.assembly.name}" />
+ </nunit2>
+ </target>
+
+ <target name="documentation">
+ <ndoc failonerror="false">
+ <assemblies basedir="${bin.dir}">
+ <include name="${core.assembly.name}" />
+ </assemblies>
+ <documenters>
+ <documenter name="MSDN">
+ <property name="OutputDirectory" value="${doc.dir}\MSDN" />
+ <property name="HtmlHelpName" value="AspectSharp" />
+ <property name="IncludeFavorites" value="False" />
+ <property name="Title" value="AspectSharp - .NET AOP Implementation" />
+ <property name="SplitTOCs" value="False" />
+ <property name="DefaulTOC" value="AspectSharp.Framework" />
+ <property name="ShowVisualBasic" value="False" />
+ <property name="ShowMissingSummaries" value="True" />
+ <property name="ShowMissingRemarks" value="False" />
+ <property name="ShowMissingParams" value="True" />
+ <property name="ShowMissingReturns" value="True" />
+ <property name="ShowMissingValues" value="False" />
+ <property name="DocumentInternals" value="True" />
+ <property name="DocumentProtected" value="True" />
+ <property name="DocumentPrivates" value="False" />
+ <property name="DocumentEmptyNamespaces" value="False" />
+ <property name="IncludeAssemblyVersion" value="True" />
+ <property name="CopyrightText" value="Copyright 2004 Henry Conceição / Rafael Steil" />
+ <property name="CopyrightHref" value="" />
+ </documenter>
+ </documenters>
+ </ndoc>
+ </target>
+
+</project>
\ No newline at end of file
Modified: avalon/trunk/central/laboratory/avalon-net/DynamicProxy/src/DynamicProxy/ProxyGenerator.cs
==============================================================================
--- avalon/trunk/central/laboratory/avalon-net/DynamicProxy/src/DynamicProxy/ProxyGenerator.cs (original)
+++ avalon/trunk/central/laboratory/avalon-net/DynamicProxy/src/DynamicProxy/ProxyGenerator.cs Tue Sep 28 19:48:09 2004
@@ -30,12 +30,13 @@
/// </summary>
/// <remarks>
/// The <see cref="ProxyGenerator"/> should be used to generate a class
- /// implementing the specified interfaces. The class implementation will
- /// only call the internal <see cref="IInvocationHandler"/> instance.
+ /// implementing the specified interfaces. The dynamic implementation will
+ /// only calls the internal <see cref="IInvocationHandler"/> instance.
/// </remarks>
/// <remarks>
- /// This proxy implementation currently doesn't not supports ref and out arguments
+ /// Please note that this proxy implementation currently doesn't not supports ref and out arguments
/// in methods.
+ /// Also note that only virtual methods can be proxied in a class.
/// </remarks>
/// <example>
/// <code>