You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by ha...@apache.org on 2004/11/19 05:46:18 UTC
svn commit: r104062 - in avalon/site/central/laboratory/castle: . dynamicproxy managedextensions microkernel
Author: hammett
Date: Thu Nov 18 20:46:16 2004
New Revision: 104062
Modified:
avalon/site/central/laboratory/castle/dynamicproxy/index.html
avalon/site/central/laboratory/castle/index.html
avalon/site/central/laboratory/castle/managedextensions/index.html
avalon/site/central/laboratory/castle/microkernel/index.html
Log:
Modified: avalon/site/central/laboratory/castle/dynamicproxy/index.html
==============================================================================
--- avalon/site/central/laboratory/castle/dynamicproxy/index.html (original)
+++ avalon/site/central/laboratory/castle/dynamicproxy/index.html Thu Nov 18 20:46:16 2004
@@ -1,124 +1,16 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle - DynamicProxy</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle - DynamicProxy</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle/dynamicproxy"><a class="homecategory" href="../../../../index.html">
- Home
- </a><a class="category" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="no-border"><span class="dummy" /><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../about/index.html">Welcome</a><a class="menuitem" href="../../../community/index.html">Community</a><a class="menuitem" href="../../../cop/index.html">Concepts</a><a class="menuitem" href="../../../resources/index.html">Resources</a><a class="menuitem" href="../../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../../dpml/index.html">DPML</a></div><a class="menuitem" href="../../studio/index.html">Studio</a><a class="menuitem" href="../../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../../castle/index.html">Castle</a></div><a class="menuitem" href="../microkernel/index.html">Microkernel</a><a class="menuitem" href="../managedextensions/index.html">Managed Extensions</a><a class="menuitem-selected" href="../dynamicproxy/index.html">DynamicProxy</a></div></div></div><div class="content">
-
- <div class="section"><span class="section-header">The project</span>
- <p>
- The DynamicProxy project was created to overcome the CLR's proxy (in)capabilities.
- There are proxies in the CLR world, but they can be considered a bit
- intrusive as it forces one to extend MarshalByRefObject or ContextBoundObject.
- </p>
- <p>
- You can use DynamicProxy to generate proxies on the fly for one or more interfaces
- (supporting concrete classes is on the plans as well)
- </p>
- </div>
-
- <div class="section"><span class="section-header">Source code</span>
- <p>
- The lastest version of source can be obtained from
- <a class="doclink" href="https://svn.apache.org/repos/asf/avalon/trunk/central/laboratory/avalon-net/DynamicProxy">Avalon Subversion repository</a>.
- </p>
- </div>
-
- <div class="section"><span class="section-header">Usage</span>
- <p>
- The DynamicProxy relies on Reflection.Emit to generate new classes that implements
- the specified interfaces and delegates to your implementation of IInvocationHandler.
- The usage is very simple. You only need to invoke ProxyGenerator.CreateProxy
- specifying the interfaces that will be behind the proxy and your implementation of
- IInvocationHandler:
- </p>
-<pre class="source">
-using Apache.Avalon.DynamicProxy;
-
-public interface IMyInterface
-{
- String Name
- {
- get;
- set;
- }
-
- void DoSomething(int x, int y);
-}
-
-public class YourProxyInvocationHandler : IInvocationHandler
-{
- public object Invoke(object proxy, MethodInfo method, params object[] arguments)
- {
- // do something before
-
- object returnVal = method.Invoke( realInstance, arguments );
-
- // do something after...
-
- return returnVal;
- }
-}
-
-object proxy = ProxyGenerator.CreateProxy(
- typeof(IMyInterface),
- new YourProxyInvocationHandler( new MyInterfaceImpl() ) );
-
-// proxy can be safely casted to IMyInterface
-
-IMyInterface inter = proxy as IMyInterface;
-
-</pre><div class="source-title"><span class="source-title" /></div>
- <p>
- You can also overrides the implementation of StandardInvocationHandler.
- </p>
-<pre class="source">
-public class YourProxyInvocationHandler : StandardInvocationHandler
-{
- protected override void PreInvoke(object proxy,
- MethodInfo method, params object[] arguments)
- {
- }
-
- protected override void PostInvoke(object proxy,
- MethodInfo method, ref object returnValue, params object[] arguments)
- {
- }
-}
-</pre><div class="source-title"><span class="source-title" /></div>
-
- <div class="subsection"><span class="subsection-header">Useful links</span>
- <p>
- If you'd like to learn more about proxies in .Net and other similar solutions
- to generate proxies on the fly, please follow these links:
- </p>
- <ul>
- <li>
- <a class="doclink" href="http://opensource.atlassian.com/confluence/spring/display/NET/Dynamic+Proxy?showComments=true">Dynamic Proxies in .NET</a>:
- Discussions and explanation about the possibilities of proxies.
- </li>
- <li>
- <a class="doclink" href="http://jroller.com/comments/hammett?anchor=java_like_proxies_in_net">Java like proxies in .Net</a>:
- Explanation of the problems which leaded to development of Avalon DynamicProxy.
- </li>
- </ul>
- </div>
-
- <div class="subsection"><span class="subsection-header">Thanks to</span>
- <ul>
- <li>
- Stefan Zobel - for his suggestion of using ldtoken
- </li>
- <li>
- <a class="doclink" href="http://www.springframework.net/">SpringFramework.Net</a>
- guys - for their interest and willingness to help
- </li>
- <li>
- <a class="doclink" href="http://aspectsharp.sourceforge.net/">AspectSharp project</a>
- - for sticking with it
- </li>
- </ul>
- </div>
-
- </div>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle - DynamicProxy</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle - DynamicProxy</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle/dynamicproxy"><a class="homecategory" href="../../../../index.html">
+ Home
+ </a><a class="category" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="no-border"><span class="dummy" /><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../about/index.html">Welcome</a><a class="menuitem" href="../../../community/index.html">Community</a><a class="menuitem" href="../../../cop/index.html">Concepts</a><a class="menuitem" href="../../../resources/index.html">Resources</a><a class="menuitem" href="../../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../../dpml/index.html">DPML</a></div><a class="menuitem" href="../../studio/index.html">Studio</a><a class="menuitem" href="../../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../../castle/index.html">Castle</a></div><a class="menuitem" href="../microkernel/index.html">Microkernel</a><a class="menuitem" href="../managedextensions/index.html">Managed Extensions</a><a class="menuitem-selected" href="../dynamicproxy/index.html">DynamicProxy</a></div></div></div><div class="content">
+
+ <div class="section"><span class="section-header">The project</span>
+ <p>
+ The DynamicProxy project was created to overcome the CLR's proxy (in)capabilities.
+ There are proxies in the CLR world, but they can be considered a bit
+ intrusive as it forces one to extend MarshalByRefObject or ContextBoundObject.
+ </p>
+ <p>DynamicProxy has moved to <a href="http://www.castleproject.org">http://www.castleproject.org</a></p>
+ </div>
+
</div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../../images/xml.gif" /></a></div></div></body></html>
Modified: avalon/site/central/laboratory/castle/index.html
==============================================================================
--- avalon/site/central/laboratory/castle/index.html (original)
+++ avalon/site/central/laboratory/castle/index.html Thu Nov 18 20:46:16 2004
@@ -1,42 +1,15 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle Container</title><link type="text/css" rel="stylesheet" href="../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle Container</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle"><a class="homecategory" href="../../../index.html">
- Home
- </a><a class="category" href="../../../planet/components/index.html">Planet</a><a class="category" href="../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../about/index.html">Welcome</a><a class="menuitem" href="../../community/index.html">Community</a><a class="menuitem" href="../../cop/index.html">Concepts</a><a class="menuitem" href="../../resources/index.html">Resources</a><a class="menuitem" href="../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../dpml/index.html">DPML</a></div><a class="menuitem" href="../studio/index.html">Studio</a><a class="menuitem" href="../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../castle/index.html">Castle</a></div><a class="menuitem" href="microkernel/index.html">Microkernel</a><a class="menuitem" href="managedextensions/index.html">Managed Extensions</a><a class="menuitem" href="dynamicproxy/index.html">DynamicProxy</a></div></div><div class="content">
-
- <div class="section"><span class="section-header">A container for CLI</span>
- <p>Avalon Castle is a lightweight
- container for the CLI (.Net and Mono) world. Although it can be viewed as
- a port of Avalon, it benefits from several features offered by the
- CLR.</p>
-
- <p>Other important difference of Castle container is its simplicity.
- Based on Microkernel pattern, the user can easily modify, extend or
- adapt it to match his requirements. No hard contracts, no obligations.
- Just good and old Inversion of Control and stills Avalon.</p>
- </div>
-
- <div class="section"><span class="section-header">Microkernel</span>
- <p>
- The Microkernel pattern allowed us to focus on a simple set of classes
- which constitutes the environment for managed components.
- </p>
- </div>
-
- <div class="section"><span class="section-header">DynamicProxy</span>
- <p>
- To overcome some limitations of CLR we had to develop common tools used
- by Avalon Castle. DynamicProxy is a simple implementation that act as the
- Java proxies - through Invocation handlers.
- </p>
- </div>
-
- <div class="section"><span class="section-header">ManagedExtensions</span>
- <p>
- If one needs a more powerfull container, allowing him to managed his components
- through some remote interface, he can use the managed extensions.
- In fact the ManagedExtensions can be viewed as a port of JMX for CLI.
- </p>
- </div>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle Container</title><link type="text/css" rel="stylesheet" href="../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle Container</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle"><a class="homecategory" href="../../../index.html">
+ Home
+ </a><a class="category" href="../../../planet/components/index.html">Planet</a><a class="category" href="../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../about/index.html">Welcome</a><a class="menuitem" href="../../community/index.html">Community</a><a class="menuitem" href="../../cop/index.html">Concepts</a><a class="menuitem" href="../../resources/index.html">Resources</a><a class="menuitem" href="../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../dpml/index.html">DPML</a></div><a class="menuitem" href="../studio/index.html">Studio</a><a class="menuitem" href="../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../castle/index.html">Castle</a></div><a class="menuitem" href="microkernel/index.html">Microkernel</a><a class="menuitem" href="managedextensions/index.html">Managed Extensions</a><a class="menuitem" href="dynamicproxy/index.html">DynamicProxy</a></div></div><div class="content">
+
+ <div class="section"><span class="section-header">A container for CLI</span>
+ <p>Avalon Castle is a lightweight
+ container for the CLI (.Net and Mono) world. Although it can be viewed as
+ a port of Avalon, it benefits from several features offered by the
+ CLR.</p>
+
+ <p>Castle has moved to <a href="http://www.castleproject.org">http://www.castleproject.org</a></p>
+
</div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../images/xml.gif" /></a></div></div></body></html>
Modified: avalon/site/central/laboratory/castle/managedextensions/index.html
==============================================================================
--- avalon/site/central/laboratory/castle/managedextensions/index.html (original)
+++ avalon/site/central/laboratory/castle/managedextensions/index.html Thu Nov 18 20:46:16 2004
@@ -1,130 +1,16 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle - Managed Extensions</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle - Managed Extensions</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle/managedextensions"><a class="homecategory" href="../../../../index.html">
- Home
- </a><a class="category" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../about/index.html">Welcome</a><a class="menuitem" href="../../../community/index.html">Community</a><a class="menuitem" href="../../../cop/index.html">Concepts</a><a class="menuitem" href="../../../resources/index.html">Resources</a><a class="menuitem" href="../../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../../dpml/index.html">DPML</a></div><a class="menuitem" href="../../studio/index.html">Studio</a><a class="menuitem" href="../../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../../castle/index.html">Castle</a></div><a class="menuitem" href="../microkernel/index.html">Microkernel</a><a class="menuitem-selected" href="../managedextensions/index.html">Managed Extensions</a><a class="menuitem" href="../dynamicproxy/index.html">DynamicProxy</a></div><a class="menuitem" href="lifecycle.html">Lifecycle</a><a class="menuitem" href="remoting.html">Remoting</a><a class="menuitem" href="invokers.html">Invokers</a></div></div><div class="content">
-
- <div class="section"><span class="section-header">The project</span>
- <p>
- ManagedExtensions is an attempt to give management capabilities to applications.
- Its relation to Castle Container is yet to be developed.
- </p>
- <p>
- Basically you have to approaches to choose: the server approach and the passive
- approach.
- </p>
- </div>
-
- <div class="section"><span class="section-header">Building a server</span>
- <p>
- If your application will be used to host others components, then you
- may build it as a server application. Just create a MServer concrete instance
- and register your managed components on it (or use it to create your components
- instances)
- </p>
-<pre class="source">
-using Apache.Avalon.Castle.ManagementExtensions;
-
-
-bool createNewAppDomain = false;
-MServer server = MServerFactory.CreateServer("logicaldomainname", createNewAppDomain);
-
-</pre><div class="source-title"><span class="source-title" /></div>
-
- <p>
- After setting up a MServer instance you can use it to register component instances,
- or create instances from it:
- </p>
-<pre class="source">
-/// <summary>
-/// Registers the specified managed object instance.
-/// </summary>
-/// <exception cref="InvalidDomainException">If domain name is not found.</exception>
-ManagedInstance RegisterManagedObject(Object instance, ManagedObjectName name);
-
-/// <summary>
-/// Instantiates the specified type using the server domain.
-/// </summary>
-Object Instantiate(String assemblyName, String typeName);
-</pre><div class="source-title"><span class="source-title" /></div>
- </div>
-
- <div class="section"><span class="section-header">Managed Components</span>
- <p>
- To expose your components as managed components you have two choices:
- <ul>
- <li>
- Use the ManagedComponent attribute
- </li>
- <li>
- Implement the MDynamicSupport interface
- </li>
- </ul>
- </p>
-<pre class="source">
-using Apache.Avalon.Castle.ManagementExtensions;
-
-<b>[ManagedComponent]</b>
-public class DummyHttpServer
-{
- protected bool started = false;
-
- public DummyHttpServer()
- {
- }
-
- <b>[ManagedAttribute]</b>
- public bool Started
- {
- get
- {
- return started;
- }
- set
- {
- started = value;
- }
- }
-
- <b>[ManagedOperation]</b>
- public void Start()
- {
- Started = true;
- }
-
- <b>[ManagedOperation]</b>
- public void StartAt(int time)
- {
- }
-
- <b>[ManagedOperation]</b>
- public void Stop()
- {
- Started = false;
- }
-}
-</pre><div class="source-title"><span class="source-title" /></div>
- </div>
-
- <div class="section"><span class="section-header">Source code</span>
- <p>
- The lastest version of source can be obtained from
- <a class="doclink" href="https://svn.apache.org/repos/asf/avalon/trunk/central/laboratory/avalon-net/Castle/CastleManagementExtensions">Avalon Subversion repository</a>
- (Test cases can be found <a class="doclink" href="https://svn.apache.org/repos/asf/avalon/trunk/central/laboratory/avalon-net/Castle/CastleManagementExtensionsTest">here</a>).
- </p>
- </div>
-
- <div class="section"><span class="section-header">Useful links</span>
- <p>
- If you'd like to learn more about Managed Extensions, please refer to:
- </p>
- <ul>
- <li>
- <a class="doclink" href="http://jroller.com/comments/hammett?anchor=management_extensions_for_net">
- Management Extensions for .Net</a>:
- Full explanation of what driven the development of Castle Managed Extensions.
- </li>
- </ul>
- </div>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle - Managed Extensions</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle - Managed Extensions</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle/managedextensions"><a class="homecategory" href="../../../../index.html">
+ Home
+ </a><a class="category" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="menu"><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../about/index.html">Welcome</a><a class="menuitem" href="../../../community/index.html">Community</a><a class="menuitem" href="../../../cop/index.html">Concepts</a><a class="menuitem" href="../../../resources/index.html">Resources</a><a class="menuitem" href="../../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../../dpml/index.html">DPML</a></div><a class="menuitem" href="../../studio/index.html">Studio</a><a class="menuitem" href="../../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../../castle/index.html">Castle</a></div><a class="menuitem" href="../microkernel/index.html">Microkernel</a><a class="menuitem-selected" href="../managedextensions/index.html">Managed Extensions</a><a class="menuitem" href="../dynamicproxy/index.html">DynamicProxy</a></div><a class="menuitem" href="lifecycle.html">Lifecycle</a><a class="menuitem" href="remoting.html">Remoting</a><a class="menuitem" href="invokers.html">Invokers</a></div></div><div class="content">
+
+ <div class="section"><span class="section-header">The project</span>
+ <p>
+ Management Extensions is an attempt to give management capabilities to applications.
+ </p>
+ <p>Management Extensions has moved to <a href="http://www.castleproject.org">http://www.castleproject.org</a></p>
+ </div>
+
+ </div>
+
</div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../../images/xml.gif" /></a></div></div></body></html>
Modified: avalon/site/central/laboratory/castle/microkernel/index.html
==============================================================================
--- avalon/site/central/laboratory/castle/microkernel/index.html (original)
+++ avalon/site/central/laboratory/castle/microkernel/index.html Thu Nov 18 20:46:16 2004
@@ -1,40 +1,17 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle - DynamicProxy</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle - DynamicProxy</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle/microkernel"><a class="homecategory" href="../../../../index.html">
- Home
- </a><a class="category" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="no-border"><span class="dummy" /><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../about/index.html">Welcome</a><a class="menuitem" href="../../../community/index.html">Community</a><a class="menuitem" href="../../../cop/index.html">Concepts</a><a class="menuitem" href="../../../resources/index.html">Resources</a><a class="menuitem" href="../../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../../dpml/index.html">DPML</a></div><a class="menuitem" href="../../studio/index.html">Studio</a><a class="menuitem" href="../../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../../castle/index.html">Castle</a></div><a class="menuitem-selected" href="../microkernel/index.html">Microkernel</a><a class="menuitem" href="../managedextensions/index.html">Managed Extensions</a><a class="menuitem" href="../dynamicproxy/index.html">DynamicProxy</a></div></div></div><div class="content">
-
- <div class="section"><span class="section-header">A container for CLI</span>
- <p>Avalon Castle is a lightweight
- container for the CLI (.Net and Mono) world. Although it can be viewed as
- a port of Avalon, it benefits from several features offered by the
- CLR.</p>
-
- <p>Other important difference of Castle container is its simplicity.
- Based on Microkernel pattern, the user can easily modify, extend or
- adapt it to match his requirements. No hard contracts, no obligations.
- Just good and old Inversion of Control and stills Avalon.</p>
- </div>
-
- <div class="section"><span class="section-header">More references</span>
- <p>
- There are plenty of documents, articles and blog entries about .Net and proxies,
- its benefits, its cons and its differences when compared to java implementation.
- </p>
- <div class="subsection"><span class="subsection-header">Useful links</span>
- <ul>
- <li>
- <a class="doclink" href="../../cop/index.html">Developing With Avalon</a>:
- An excellent white paper on the Avalon framework.
- Recommended reading!
- </li>
- <li>
- <a class="doclink" href="../../cop/index.html">An Introduction to COP</a>:
- An introduction to Component Oriented Programming and the
- core Avalon Framework.
- </li>
- </ul>
- </div>
- </div>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Avalon Castle - DynamicProxy</title><link type="text/css" rel="stylesheet" href="../../../../styles/style.css" /><meta content="text/html; charset=UTF-8" http-equiv="Content-type" /></head><body><table class="logobar"><tr><td class="panelleft"><img alt="link" src="../../../../images/feather.jpg" /></td><td class="panelmiddle"><div class="project">Avalon</div><div class="title">Avalon Castle - DynamicProxy</div></td><td class="panelright" /></tr></table><div class="categorybar" dir="/central/laboratory/castle/microkernel"><a class="homecategory" href="../../../../index.html">
+ Home
+ </a><a class="category" href="../../../../planet/components/index.html">Planet</a><a class="category" href="../../../../products/runtime/index.html">Products</a><a class="category-selected" href="../../../../central/about/index.html">Central</a></div><div class="menubar"><div class="no-border"><span class="dummy" /><div class="menu"><div class="menu"><div class="menu"><a class="menuitem" href="../../../about/index.html">Welcome</a><a class="menuitem" href="../../../community/index.html">Community</a><a class="menuitem" href="../../../cop/index.html">Concepts</a><a class="menuitem" href="../../../resources/index.html">Resources</a><a class="menuitem" href="../../../tools/index.html">Developer Tools</a><a class="menuitem-selected" href="../../../laboratory/index.html">Avalon Laboratory</a><a class="menuitem" href="../../../legacy/index.html">Legacy Content</a><a class="menuitem" href="../../../dpml/index.html">DPML</a></div><a class="menuitem" href="../../studio/index.html">Studio</a><a class="menuitem" href="../../discovery/index.html">Discovery</a><a class="menuitem-selected" href="../../castle/index.html">Castle</a></div><a class="menuitem-selected" href="../microkernel/index.html">Microkernel</a><a class="menuitem" href="../managedextensions/index.html">Managed Extensions</a><a class="menuitem" href="../dynamicproxy/index.html">DynamicProxy</a></div></div></div><div class="content">
+
+ <div class="section"><span class="section-header">A container for CLI</span>
+ <p>Avalon Castle is a lightweight
+ container for the CLI (.Net and Mono) world. Although it can be viewed as
+ a port of Avalon, it benefits from several features offered by the
+ CLR.</p>
+
+ <p>Castle has moved to <a href="http://www.castleproject.org">http://www.castleproject.org</a></p>
+
+ </div>
+
</div><div class="footer"><span class="copyright">Copyright 2004, The Apache Software Foundation All rights reserved.</span><div class="views"><a class="viewlink" id="xmllink" href=""><img src="../../../../images/xml.gif" /></a></div></div></body></html>
---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@avalon.apache.org
For additional commands, e-mail: cvs-help@avalon.apache.org