3 using System.Collections;
\r
4 using System.Reflection;
\r
6 using System.Threading;
\r
8 namespace ${glPackageBaseCommonCBean} {
\r
11 * FetchNarrowing-Bean context. (referring to s2pager)
\r
13 * @author ${database.ClassAuthor}
\r
15 public static class ${glFetchNarrowingBeanContextName} {
\r
17 /** The thread-local for this. */
\r
18 private static LocalDataStoreSlot _fetchNarrowingBeanSlot = Thread.AllocateDataSlot();
\r
21 * Get fetch-narrowing-bean context on thread.
\r
23 * @return FetchNarrowing-bean. (Nullable)
\r
25 public static ${glFetchNarrowingBeanInterfaceName} GetFetchNarrowingBeanOnThread() {
\r
26 return (${glFetchNarrowingBeanInterfaceName})Thread.GetData(_fetchNarrowingBeanSlot);
\r
30 * Set fetch-narrowing-bean context on thread.
\r
32 * @param ${glAttachedCBArgsVariableName} FetchNarrowing-bean. (NotNull)
\r
34 public static void SetFetchNarrowingBeanOnThread(${glFetchNarrowingBeanInterfaceName} ${glAttachedCBArgsVariableName}) {
\r
35 if (${glAttachedCBArgsVariableName} == null) {
\r
36 String msg = "The argument[${glAttachedCBArgsVariableName}] must not be null.";
\r
37 throw new ArgumentNullException(msg);
\r
39 Thread.SetData(_fetchNarrowingBeanSlot, ${glAttachedCBArgsVariableName});
\r
43 * Clear fetch-narrowing-bean context on thread.
\r
45 public static void ClearFetchNarrowingBeanOnThread() {
\r
46 Thread.SetData(_fetchNarrowingBeanSlot, null);
\r
50 * Is existing fetch-narrowing-bean context on thread?
\r
52 * @return Determination.
\r
54 public static bool IsExistFetchNarrowingBeanOnThread() {
\r
55 return (Thread.GetData(_fetchNarrowingBeanSlot) != null);
\r
59 * Is the argument fetch-narrowing-bean?
\r
61 * @param dtoInstance Dto instance.
\r
62 * @return Determination.
\r
64 public static bool IsTheArgumentFetchNarrowingBean(Object dtoInstance) {
\r
65 if (dtoInstance is ${glFetchNarrowingBeanInterfaceName}) {
\r
73 * Is the type fetch-narrowing-bean?
\r
75 * @param dtoClass DtoClass.
\r
76 * @return Determination.
\r
78 public static bool IsTheTypeFetchNarrowingBean(Type dtoType) {
\r
79 if (typeof(${glFetchNarrowingBeanInterfaceName}).IsAssignableFrom(dtoType)) {
\r