Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(32)

Side by Side Diff: pkg/analyzer_experimental/lib/src/generated/instrumentation.dart

Issue 17932005: New analyzer_experimental snapshot. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Disable resolver tests Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // This code was auto-generated, is not intended to be edited, and is subject to 1 // This code was auto-generated, is not intended to be edited, and is subject to
2 // significant change. Please see the README file for more information. 2 // significant change. Please see the README file for more information.
3 library engine.instrumentation; 3 library engine.instrumentation;
4 import 'java_core.dart'; 4 import 'java_core.dart';
5 /** 5 /**
6 * The class `Instrumentation` implements support for logging instrumentation in formation. 6 * The class `Instrumentation` implements support for logging instrumentation in formation.
7 * 7 *
8 * Instrumentation information consists of information about specific operations . Those operations 8 * Instrumentation information consists of information about specific operations . Those operations
9 * can range from user-facing operations, such as saving the changes to a file, to internal 9 * can range from user-facing operations, such as saving the changes to a file, to internal
10 * operations, such as tokenizing source code. The information to be logged is g athered by[InstrumentationBuilder instrumentation builder], created by one of th e static methods on 10 * operations, such as tokenizing source code. The information to be logged is g athered by
11 * [InstrumentationBuilder], created by one of the static methods on
11 * this class such as [builder] or [builder]. 12 * this class such as [builder] or [builder].
12 * 13 *
13 * Note, however, that until an instrumentation logger is installed using the me thod[setLogger], all instrumentation data will be lost. 14 * Note, however, that until an instrumentation logger is installed using the me thod
15 * [setLogger], all instrumentation data will be lost.
14 * 16 *
15 * <b>Example</b> 17 * <b>Example</b>
16 * 18 *
17 * To collect metrics about how long it took to save a file, you would write som ething like the 19 * To collect metrics about how long it took to save a file, you would write som ething like the
18 * following: 20 * following:
21 *
19 * <pre> 22 * <pre>
20 * InstrumentationBuilder instrumentation = Instrumentation.builder(this.getClas s()); 23 * InstrumentationBuilder instrumentation = Instrumentation.builder(this.getClas s());
21 * // save the file 24 * // save the file
22 * instrumentation.metric("chars", fileLength).log(); 25 * instrumentation.metric("chars", fileLength).log();
23 * </pre> 26 * </pre>
24 * The `Instrumentation.builder` method creates a new [InstrumentationBuilderins trumentation builder] and records the time at which it was created. The[Instrume ntationBuilder#metric] appends the information specified by the 27 * The `Instrumentation.builder` method creates a new [InstrumentationBuilder
28 ] and records the time at which it was created. The
29 * [InstrumentationBuilder#metric] appends the information specified by the
25 * arguments and records the time at which the method is called so that the time to complete the 30 * arguments and records the time at which the method is called so that the time to complete the
26 * save operation can be calculated. The `log` method tells the builder that all of the data 31 * save operation can be calculated. The `log` method tells the builder that all of the data
27 * has been collected and that the resulting information should be logged. 32 * has been collected and that the resulting information should be logged.
33 *
28 * @coverage dart.engine.utilities 34 * @coverage dart.engine.utilities
29 */ 35 */
30 class Instrumentation { 36 class Instrumentation {
31 37
32 /** 38 /**
33 * A builder that will silently ignore all data and logging requests. 39 * A builder that will silently ignore all data and logging requests.
34 */ 40 */
35 static InstrumentationBuilder _NULL_INSTRUMENTATION_BUILDER = new Instrumentat ionBuilder_12(); 41 static InstrumentationBuilder _NULL_INSTRUMENTATION_BUILDER = new Instrumentat ionBuilder_13();
36 42
37 /** 43 /**
38 * An instrumentation logger that can be used when no other instrumentation lo gger has been 44 * An instrumentation logger that can be used when no other instrumentation lo gger has been
39 * configured. This logger will silently ignore all data and logging requests. 45 * configured. This logger will silently ignore all data and logging requests.
40 */ 46 */
41 static InstrumentationLogger _NULL_LOGGER = new InstrumentationLogger_13(); 47 static InstrumentationLogger _NULL_LOGGER = new InstrumentationLogger_14();
42 48
43 /** 49 /**
44 * The current instrumentation logger. 50 * The current instrumentation logger.
45 */ 51 */
46 static InstrumentationLogger _CURRENT_LOGGER = _NULL_LOGGER; 52 static InstrumentationLogger _CURRENT_LOGGER = _NULL_LOGGER;
47 53
48 /** 54 /**
49 * Create a builder that can collect the data associated with an operation. 55 * Create a builder that can collect the data associated with an operation.
56 *
50 * @param clazz the class performing the operation (not `null`) 57 * @param clazz the class performing the operation (not `null`)
51 * @return the builder that was created (not `null`) 58 * @return the builder that was created (not `null`)
52 */ 59 */
53 static InstrumentationBuilder builder(Type clazz) => _CURRENT_LOGGER.createBui lder(clazz.toString()); 60 static InstrumentationBuilder builder(Type clazz) => _CURRENT_LOGGER.createBui lder(clazz.toString());
54 61
55 /** 62 /**
56 * Create a builder that can collect the data associated with an operation. 63 * Create a builder that can collect the data associated with an operation.
64 *
57 * @param name the name used to uniquely identify the operation (not `null`) 65 * @param name the name used to uniquely identify the operation (not `null`)
58 * @return the builder that was created (not `null`) 66 * @return the builder that was created (not `null`)
59 */ 67 */
60 static InstrumentationBuilder builder2(String name) => _CURRENT_LOGGER.createB uilder(name); 68 static InstrumentationBuilder builder2(String name) => _CURRENT_LOGGER.createB uilder(name);
61 69
62 /** 70 /**
63 * Get the currently active instrumentation logger 71 * Get the currently active instrumentation logger
64 */ 72 */
65 static InstrumentationLogger get logger => _CURRENT_LOGGER; 73 static InstrumentationLogger get logger => _CURRENT_LOGGER;
66 74
67 /** 75 /**
68 * Return a builder that will silently ignore all data and logging requests. 76 * Return a builder that will silently ignore all data and logging requests.
77 *
69 * @return the builder (not `null`) 78 * @return the builder (not `null`)
70 */ 79 */
71 static InstrumentationBuilder get nullBuilder => _NULL_INSTRUMENTATION_BUILDER ; 80 static InstrumentationBuilder get nullBuilder => _NULL_INSTRUMENTATION_BUILDER ;
72 81
73 /** 82 /**
74 * Is this instrumentation system currently configured to drop instrumentation data provided to 83 * Is this instrumentation system currently configured to drop instrumentation data provided to
75 * it? 84 * it?
85 *
76 * @return 86 * @return
77 */ 87 */
78 static bool get isNullLogger => identical(_CURRENT_LOGGER, _NULL_LOGGER); 88 static bool get isNullLogger => identical(_CURRENT_LOGGER, _NULL_LOGGER);
79 89
80 /** 90 /**
81 * Set the logger that should receive instrumentation information to the given logger. 91 * Set the logger that should receive instrumentation information to the given logger.
92 *
82 * @param logger the logger that should receive instrumentation information 93 * @param logger the logger that should receive instrumentation information
83 */ 94 */
84 static void set logger(InstrumentationLogger logger2) { 95 static void set logger(InstrumentationLogger logger2) {
85 _CURRENT_LOGGER = logger2 == null ? _NULL_LOGGER : logger2; 96 _CURRENT_LOGGER = logger2 == null ? _NULL_LOGGER : logger2;
86 } 97 }
87 } 98 }
88 class InstrumentationBuilder_12 implements InstrumentationBuilder { 99 class InstrumentationBuilder_13 implements InstrumentationBuilder {
89 InstrumentationBuilder data(String name, bool value) => this; 100 InstrumentationBuilder data(String name, bool value) => this;
90 InstrumentationBuilder data2(String name, int value) => this; 101 InstrumentationBuilder data2(String name, int value) => this;
91 InstrumentationBuilder data3(String name, String value) => this; 102 InstrumentationBuilder data3(String name, String value) => this;
92 InstrumentationBuilder data4(String name, List<String> value) => this; 103 InstrumentationBuilder data4(String name, List<String> value) => this;
93 InstrumentationLevel get instrumentationLevel => InstrumentationLevel.OFF; 104 InstrumentationLevel get instrumentationLevel => InstrumentationLevel.OFF;
94 void log() { 105 void log() {
95 } 106 }
96 InstrumentationBuilder metric(String name, bool value) => this; 107 InstrumentationBuilder metric(String name, bool value) => this;
97 InstrumentationBuilder metric2(String name, int value) => this; 108 InstrumentationBuilder metric2(String name, int value) => this;
98 InstrumentationBuilder metric3(String name, String value) => this; 109 InstrumentationBuilder metric3(String name, String value) => this;
99 InstrumentationBuilder metric4(String name, List<String> value) => this; 110 InstrumentationBuilder metric4(String name, List<String> value) => this;
100 InstrumentationBuilder record(Exception exception) => this; 111 InstrumentationBuilder record(Exception exception) => this;
101 } 112 }
102 class InstrumentationLogger_13 implements InstrumentationLogger { 113 class InstrumentationLogger_14 implements InstrumentationLogger {
103 InstrumentationBuilder createBuilder(String name) => Instrumentation._NULL_INS TRUMENTATION_BUILDER; 114 InstrumentationBuilder createBuilder(String name) => Instrumentation._NULL_INS TRUMENTATION_BUILDER;
104 } 115 }
105 /** 116 /**
106 * The interface `InstrumentationBuilder` defines the behavior of objects used t o collect data 117 * The interface `InstrumentationBuilder` defines the behavior of objects used t o collect data
107 * about an operation that has occurred and record that data through an instrume ntation logger. 118 * about an operation that has occurred and record that data through an instrume ntation logger.
108 * 119 *
109 * For an example of using objects that implement this interface, see [Instrumen tation]. 120 * For an example of using objects that implement this interface, see [Instrumen tation].
121 *
110 * @coverage dart.engine.utilities 122 * @coverage dart.engine.utilities
111 */ 123 */
112 abstract class InstrumentationBuilder { 124 abstract class InstrumentationBuilder {
113 125
114 /** 126 /**
115 * Append the given data to the data being collected by this builder. The info rmation is declared 127 * Append the given data to the data being collected by this builder. The info rmation is declared
116 * to potentially contain data that is either user identifiable or contains us er intellectual 128 * to potentially contain data that is either user identifiable or contains us er intellectual
117 * property (but is not guaranteed to contain either). 129 * property (but is not guaranteed to contain either).
130 *
118 * @param name the name used to identify the data 131 * @param name the name used to identify the data
119 * @param value the value of the data to be collected 132 * @param value the value of the data to be collected
120 * @return this builder 133 * @return this builder
121 */ 134 */
122 InstrumentationBuilder data(String name, bool value); 135 InstrumentationBuilder data(String name, bool value);
123 136
124 /** 137 /**
125 * Append the given data to the data being collected by this builder. The info rmation is declared 138 * Append the given data to the data being collected by this builder. The info rmation is declared
126 * to potentially contain data that is either user identifiable or contains us er intellectual 139 * to potentially contain data that is either user identifiable or contains us er intellectual
127 * property (but is not guaranteed to contain either). 140 * property (but is not guaranteed to contain either).
141 *
128 * @param name the name used to identify the data 142 * @param name the name used to identify the data
129 * @param value the value of the data to be collected 143 * @param value the value of the data to be collected
130 * @return this builder 144 * @return this builder
131 */ 145 */
132 InstrumentationBuilder data2(String name, int value); 146 InstrumentationBuilder data2(String name, int value);
133 147
134 /** 148 /**
135 * Append the given data to the data being collected by this builder. The info rmation is declared 149 * Append the given data to the data being collected by this builder. The info rmation is declared
136 * to potentially contain data that is either user identifiable or contains us er intellectual 150 * to potentially contain data that is either user identifiable or contains us er intellectual
137 * property (but is not guaranteed to contain either). 151 * property (but is not guaranteed to contain either).
152 *
138 * @param name the name used to identify the data 153 * @param name the name used to identify the data
139 * @param value the value of the data to be collected 154 * @param value the value of the data to be collected
140 * @return this builder 155 * @return this builder
141 */ 156 */
142 InstrumentationBuilder data3(String name, String value); 157 InstrumentationBuilder data3(String name, String value);
143 158
144 /** 159 /**
145 * Append the given data to the data being collected by this builder. The info rmation is declared 160 * Append the given data to the data being collected by this builder. The info rmation is declared
146 * to potentially contain data that is either user identifiable or contains us er intellectual 161 * to potentially contain data that is either user identifiable or contains us er intellectual
147 * property (but is not guaranteed to contain either). 162 * property (but is not guaranteed to contain either).
163 *
148 * @param name the name used to identify the data 164 * @param name the name used to identify the data
149 * @param value the value of the data to be collected 165 * @param value the value of the data to be collected
150 * @return this builder 166 * @return this builder
151 */ 167 */
152 InstrumentationBuilder data4(String name, List<String> value); 168 InstrumentationBuilder data4(String name, List<String> value);
153 169
154 /** 170 /**
155 * Answer the [InstrumentationLevel] of this `InstrumentationBuilder`. 171 * Answer the [InstrumentationLevel] of this `InstrumentationBuilder`.
156 * @return one of [InstrumentationLevel#EVERYTHING], [InstrumentationLevel#MET RICS],[InstrumentationLevel#OFF] 172 *
173 * @return one of [InstrumentationLevel#EVERYTHING], [InstrumentationLevel#MET RICS],
174 * [InstrumentationLevel#OFF]
157 */ 175 */
158 InstrumentationLevel get instrumentationLevel; 176 InstrumentationLevel get instrumentationLevel;
159 177
160 /** 178 /**
161 * Log the data that has been collected. The instrumentation builder should no t be used after this 179 * Log the data that has been collected. The instrumentation builder should no t be used after this
162 * method is invoked. The behavior of any method defined on this interface tha t is used after this 180 * method is invoked. The behavior of any method defined on this interface tha t is used after this
163 * method is invoked is undefined. 181 * method is invoked is undefined.
164 */ 182 */
165 void log(); 183 void log();
166 184
167 /** 185 /**
168 * Append the given metric to the data being collected by this builder. The in formation is 186 * Append the given metric to the data being collected by this builder. The in formation is
169 * declared to contain only metrics data (data that is not user identifiable a nd does not contain 187 * declared to contain only metrics data (data that is not user identifiable a nd does not contain
170 * user intellectual property). 188 * user intellectual property).
189 *
171 * @param name the name used to identify the data 190 * @param name the name used to identify the data
172 * @param value the value of the data to be collected 191 * @param value the value of the data to be collected
173 * @return this builder 192 * @return this builder
174 */ 193 */
175 InstrumentationBuilder metric(String name, bool value); 194 InstrumentationBuilder metric(String name, bool value);
176 195
177 /** 196 /**
178 * Append the given metric to the data being collected by this builder. The in formation is 197 * Append the given metric to the data being collected by this builder. The in formation is
179 * declared to contain only metrics data (data that is not user identifiable a nd does not contain 198 * declared to contain only metrics data (data that is not user identifiable a nd does not contain
180 * user intellectual property). 199 * user intellectual property).
200 *
181 * @param name the name used to identify the data 201 * @param name the name used to identify the data
182 * @param value the value of the data to be collected 202 * @param value the value of the data to be collected
183 * @return this builder 203 * @return this builder
184 */ 204 */
185 InstrumentationBuilder metric2(String name, int value); 205 InstrumentationBuilder metric2(String name, int value);
186 206
187 /** 207 /**
188 * Append the given metric to the data being collected by this builder. The in formation is 208 * Append the given metric to the data being collected by this builder. The in formation is
189 * declared to contain only metrics data (data that is not user identifiable a nd does not contain 209 * declared to contain only metrics data (data that is not user identifiable a nd does not contain
190 * user intellectual property). 210 * user intellectual property).
211 *
191 * @param name the name used to identify the data 212 * @param name the name used to identify the data
192 * @param value the value of the data to be collected 213 * @param value the value of the data to be collected
193 * @return this builder 214 * @return this builder
194 */ 215 */
195 InstrumentationBuilder metric3(String name, String value); 216 InstrumentationBuilder metric3(String name, String value);
196 217
197 /** 218 /**
198 * Append the given metric to the data being collected by this builder. The in formation is 219 * Append the given metric to the data being collected by this builder. The in formation is
199 * declared to contain only metrics data (data that is not user identifiable a nd does not contain 220 * declared to contain only metrics data (data that is not user identifiable a nd does not contain
200 * user intellectual property). 221 * user intellectual property).
222 *
201 * @param name the name used to identify the data 223 * @param name the name used to identify the data
202 * @param value the value of the data to be collected 224 * @param value the value of the data to be collected
203 * @return this builder 225 * @return this builder
204 */ 226 */
205 InstrumentationBuilder metric4(String name, List<String> value); 227 InstrumentationBuilder metric4(String name, List<String> value);
206 228
207 /** 229 /**
208 * Append the given exception to the information being collected by this build er. The exception's 230 * Append the given exception to the information being collected by this build er. The exception's
209 * class name is captured using [metric]. Other aspects of the exception 231 * class name is captured using [metric]. Other aspects of the exception
210 * may contain either user identifiable or contains user intellectual property (but is not 232 * may contain either user identifiable or contains user intellectual property (but is not
211 * guaranteed to contain either) and thus are captured using the various data methods such as[data]. 233 * guaranteed to contain either) and thus are captured using the various data methods such as
234 * [data].
235 *
212 * @param exception the exception (may be `null`) 236 * @param exception the exception (may be `null`)
213 */ 237 */
214 InstrumentationBuilder record(Exception exception); 238 InstrumentationBuilder record(Exception exception);
215 } 239 }
216 /** 240 /**
217 * The instrumentation recording level representing (1) recording [EVERYTHING] r ecording of 241 * The instrumentation recording level representing (1) recording [EVERYTHING] r ecording of
218 * all instrumentation data, (2) recording only [METRICS] information, or (3) re cording 242 * all instrumentation data, (2) recording only [METRICS] information, or (3) re cording
219 * turned [OFF] in which case nothing is recorded. 243 * turned [OFF] in which case nothing is recorded.
244 *
220 * @coverage dart.engine.utilities 245 * @coverage dart.engine.utilities
221 */ 246 */
222 class InstrumentationLevel implements Comparable<InstrumentationLevel> { 247 class InstrumentationLevel implements Comparable<InstrumentationLevel> {
223 248
224 /** 249 /** Recording all instrumented information */
225 * Recording all instrumented information
226 */
227 static final InstrumentationLevel EVERYTHING = new InstrumentationLevel('EVERY THING', 0); 250 static final InstrumentationLevel EVERYTHING = new InstrumentationLevel('EVERY THING', 0);
228 251
229 /** 252 /** Recording only metrics */
230 * Recording only metrics
231 */
232 static final InstrumentationLevel METRICS = new InstrumentationLevel('METRICS' , 1); 253 static final InstrumentationLevel METRICS = new InstrumentationLevel('METRICS' , 1);
233 254
234 /** 255 /** Nothing recorded */
235 * Nothing recorded
236 */
237 static final InstrumentationLevel OFF = new InstrumentationLevel('OFF', 2); 256 static final InstrumentationLevel OFF = new InstrumentationLevel('OFF', 2);
238 static final List<InstrumentationLevel> values = [EVERYTHING, METRICS, OFF]; 257 static final List<InstrumentationLevel> values = [EVERYTHING, METRICS, OFF];
239 258
240 /// The name of this enum constant, as declared in the enum declaration. 259 /// The name of this enum constant, as declared in the enum declaration.
241 final String name; 260 final String name;
242 261
243 /// The position in the enum declaration. 262 /// The position in the enum declaration.
244 final int ordinal; 263 final int ordinal;
245 static InstrumentationLevel fromString(String str) { 264 static InstrumentationLevel fromString(String str) {
246 if (str == "EVERYTHING") { 265 if (str == "EVERYTHING") {
(...skipping 11 matching lines...) Expand all
258 } 277 }
259 int compareTo(InstrumentationLevel other) => ordinal - other.ordinal; 278 int compareTo(InstrumentationLevel other) => ordinal - other.ordinal;
260 int get hashCode => ordinal; 279 int get hashCode => ordinal;
261 String toString() => name; 280 String toString() => name;
262 } 281 }
263 /** 282 /**
264 * The interface `InstrumentationLogger` defines the behavior of objects that ar e used to log 283 * The interface `InstrumentationLogger` defines the behavior of objects that ar e used to log
265 * instrumentation data. 284 * instrumentation data.
266 * 285 *
267 * For an example of using objects that implement this interface, see [Instrumen tation]. 286 * For an example of using objects that implement this interface, see [Instrumen tation].
287 *
268 * @coverage dart.engine.utilities 288 * @coverage dart.engine.utilities
269 */ 289 */
270 abstract class InstrumentationLogger { 290 abstract class InstrumentationLogger {
271 291
272 /** 292 /**
273 * Create a builder that can collect the data associated with an operation ide ntified by the given 293 * Create a builder that can collect the data associated with an operation ide ntified by the given
274 * name. 294 * name.
295 *
275 * @param name the name used to uniquely identify the operation 296 * @param name the name used to uniquely identify the operation
276 * @return the builder that was created 297 * @return the builder that was created
277 */ 298 */
278 InstrumentationBuilder createBuilder(String name); 299 InstrumentationBuilder createBuilder(String name);
279 } 300 }
OLDNEW
« no previous file with comments | « pkg/analyzer_experimental/lib/src/generated/html.dart ('k') | pkg/analyzer_experimental/lib/src/generated/java_io.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698