-, InterfaceInterceptor , . . VirtualMethodInterceptor, InterfaceInterceptor. , , TransparentProxyInterceptor. . .
, ( ). , , , 4 [MyHandler].
. , , , AbstractSerialDevice [MyHandler]. .
, , , . .
1
[MyHandler]
public interface IDevice
{ }
[MyHandler]
public interface ISerialDevice : IDevice
{ }
[MyHandler]
public interface IProtocolSerialDevice : ISerialDevice
{ }
[MyHandler]
public interface ICustomSerialDevice : IProtocolSerialDevice
{ }
2
[MyHandler]
public abstract class AbstractSerialDevice : ISerialDevice
{ }
3
public class CustomSerialDevice : AbstractProtocolSerialDevice, ICustomSerialDevice
{
[MyHandler]
public override void Connect()
{ base.Connect(); }
[MyHandler]
public override void WriteCommand()
{ base.WriteCommand(); }
[MyHandler]
public override void ExecuteProtocolCommand()
{ base.ExecuteProtocolCommand(); }
[MyHandler]
public void ExecuteMyCommand()
{ }
}
?