forked from nhibernate/nhibernate-core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathIProxyFactoryFactory.cs
39 lines (37 loc) · 1.32 KB
/
IProxyFactoryFactory.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
using NHibernate.Proxy;
namespace NHibernate.Bytecode
{
/// <summary>
/// An interface for factories of <see cref="IProxyFactory">proxy factory</see> instances.
/// </summary>
/// <remarks>
/// Currently used to abstract from the tupizer even if...
/// </remarks>
public interface IProxyFactoryFactory
{
/// <summary>
/// Build a proxy factory specifically for handling runtime
/// lazy loading.
/// </summary>
/// <returns> The lazy-load proxy factory. </returns>
IProxyFactory BuildProxyFactory();
/// <summary> Build a proxy factory for basic proxy concerns. The return
/// should be capable of properly handling newInstance() calls.
/// <p/>
/// Should build basic proxies essentially equivalent to JDK proxies in
/// terms of capabilities, but should be able to deal with abstract super
/// classes in addition to proxy interfaces.
/// <p/>
/// Must pass in either superClass or interfaces (or both).
///
/// </summary>
/// <param name="superClass">The abstract super class (or null if none).
/// </param>
/// <param name="interfaces">Interfaces to be proxied (or null if none).
/// </param>
/// <returns> The proxy class
/// </returns>
// TODO: H3.2
//BasicProxyFactory buildBasicProxyFactory(System.Type superClass, System.Type[] interfaces);
}
}