01: /*
02: * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright
03: * notice. All rights reserved.
04: */
05: package com.tc.object.config.schema;
06:
07: import com.tc.config.schema.BaseNewConfigObject;
08: import com.tc.config.schema.context.ConfigContext;
09: import com.tc.config.schema.dynamic.BooleanConfigItem;
10: import com.terracottatech.config.DsoClientData;
11:
12: /**
13: * The standard implementation of {@link DSORuntimeLoggingOptions}.
14: */
15: public class StandardDSORuntimeLoggingOptions extends
16: BaseNewConfigObject implements DSORuntimeLoggingOptions {
17:
18: private final BooleanConfigItem logLockDebug;
19: private final BooleanConfigItem logFieldChangeDebug;
20: private final BooleanConfigItem logWaitNotifyDebug;
21: private final BooleanConfigItem logDistributedMethodDebug;
22: private final BooleanConfigItem logNewObjectDebug;
23: private final BooleanConfigItem logNonPortableDump;
24:
25: public StandardDSORuntimeLoggingOptions(ConfigContext context) {
26: super (context);
27: this .context.ensureRepositoryProvides(DsoClientData.class);
28:
29: this .logLockDebug = this .context
30: .booleanItem("debugging/runtime-logging/lock-debug");
31: this .logFieldChangeDebug = this .context
32: .booleanItem("debugging/runtime-logging/field-change-debug");
33: this .logWaitNotifyDebug = this .context
34: .booleanItem("debugging/runtime-logging/wait-notify-debug");
35: this .logDistributedMethodDebug = this .context
36: .booleanItem("debugging/runtime-logging/distributed-method-debug");
37: this .logNewObjectDebug = this .context
38: .booleanItem("debugging/runtime-logging/new-object-debug");
39: this .logNonPortableDump = this .context
40: .booleanItem("debugging/runtime-logging/non-portable-dump");
41: }
42:
43: public BooleanConfigItem logLockDebug() {
44: return this .logLockDebug;
45: }
46:
47: public BooleanConfigItem logFieldChangeDebug() {
48: return this .logFieldChangeDebug;
49: }
50:
51: public BooleanConfigItem logWaitNotifyDebug() {
52: return this .logWaitNotifyDebug;
53: }
54:
55: public BooleanConfigItem logDistributedMethodDebug() {
56: return this .logDistributedMethodDebug;
57: }
58:
59: public BooleanConfigItem logNewObjectDebug() {
60: return this .logNewObjectDebug;
61: }
62:
63: public BooleanConfigItem logNonPortableDump() {
64: return this.logNonPortableDump;
65: }
66:
67: }
|