01: /*
02: * The contents of this file are subject to the Sapient Public License
03: * Version 1.0 (the "License"); you may not use this file except in compliance
04: * with the License. You may obtain a copy of the License at
05: * http://carbon.sf.net/License.html.
06: *
07: * Software distributed under the License is distributed on an "AS IS" basis,
08: * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
09: * the specific language governing rights and limitations under the License.
10: *
11: * The Original Code is The Carbon Component Framework.
12: *
13: * The Initial Developer of the Original Code is Sapient Corporation
14: *
15: * Copyright (C) 2003 Sapient Corporation. All Rights Reserved.
16: */
17:
18: package org.sape.carbon.services.perflog;
19:
20: import org.sape.carbon.core.component.FunctionalInterface;
21:
22: /**
23: * Standard interface for performance logging services.
24: *
25: * Copyright 2002 Sapient
26: * @since carbon 1.0
27: * @author Tim Fennell, May 2002
28: * @version $Revision: 1.5 $($Author: dvoet $ / $Date: 2003/05/05 21:21:31 $)
29: */
30: public interface PerformanceLogger extends FunctionalInterface {
31: /**
32: * Notifies the log a tracked object has started execution.
33: *
34: * @param trackedObject object being tracked.
35: */
36: void start(Object trackedObject);
37:
38: /**
39: * Notifies the log a tracked object has completed execution.
40: *
41: * @param trackedObject object being tracked.
42: * @return the time the trackedObject took to execute
43: */
44: long end(Object trackedObject);
45: }
|