File Source: nulllogger.java
/*
P/P * Method: net.sourceforge.pebble.logging.NullLogger__static_init
*/
1 /*
2 * Copyright (c) 2003-2006, Simon Brown
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 *
8 * - Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 *
11 * - Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in
13 * the documentation and/or other materials provided with the
14 * distribution.
15 *
16 * - Neither the name of Pebble nor the names of its contributors may
17 * be used to endorse or promote products derived from this software
18 * without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30 * POSSIBILITY OF SUCH DAMAGE.
31 */
32 package net.sourceforge.pebble.logging;
33
34 import net.sourceforge.pebble.domain.Blog;
35
/*
P/P * Method: void net.sourceforge.pebble.logging.NullLogger(Blog)
*
* Postconditions:
* this.blog == blog
* init'ed(this.blog)
*/
36 import javax.servlet.http.HttpServletRequest;
37 import java.util.ArrayList;
38 import java.util.Calendar;
39
40 /**
41 * A no-op logger that can be used when Pebble logging isn't required, such
42 * as when something like Apache provides the necessary logging already.
43 *
44 * @author Simon Brown
45 */
46 public class NullLogger extends AbstractLogger {
47
48 /**
49 * Creates a new instance associated with the specified blog.
50 *
51 * @param blog a Blog instance
52 */
53 public NullLogger(Blog blog) {
54 super(blog);
55 }
56
57 /**
58 * Logs a HTTP request.
59 *
60 * @param request a HttpServletRequest
61 */
62 public void log(HttpServletRequest request, int status) {
/*
P/P * Method: void log(HttpServletRequest, int)
*/
63 }
64
65 /**
66 * Called to start this logger.
67 */
/*
P/P * Method: void start()
*/
68 public void start() {
69 }
70
71 /**
72 * Called to stop this logger.
73 */
/*
P/P * Method: void stop()
*/
74 public void stop() {
75 }
76
77 /**
78 * Gets a copy of the log file for a given year, month and day.
79 *
80 * @param year the year to get entries for
81 * @param month the month to get entries for
82 * @param day the day to get entries for
83 * @return a String containing the contents of the requested log file
84 */
/*
P/P * Method: String getLogFile(int, int, int)
*
* Postconditions:
* return_value == &""
*/
85 public String getLogFile(int year, int month, int day) {
86 return "";
87 }
88
89 /**
90 * Gets the log for a given year, month and day.
91 *
92 * @param year the year to get entries for
93 * @param month the month to get entries for
94 * @param day the day to get entries for
95 * @return a Log object
96 */
/*
P/P * Method: Log getLog(int, int, int)
*
* Preconditions:
* init'ed(this.blog)
*
* Postconditions:
* return_value == &new Log(getLog#1)
* new ArrayList(Log#1) num objects == 0
* new ArrayList(getLog#2) num objects == 1
* new Log(getLog#1) num objects == 1
* return_value.blog == this.blog
* init'ed(return_value.blog)
* return_value.logEntries == &new ArrayList(getLog#2)
*/
97 public Log getLog(int year, int month, int day) {
98 return new Log(blog, new ArrayList());
99 }
100
101 /**
102 * Gets the log summary information for the given year, month and day.
103 *
104 * @param year the year to get entries for
105 * @param month the month to get entries for
106 * @param day the day to get entries for
107 * @return a LogSummary object
108 */
/*
P/P * Method: LogSummary getLogSummary(int, int, int)
*
* Preconditions:
* month >= -231+1
* this.blog != null
*
* Presumptions:
* net.sourceforge.pebble.domain.Blog:getCalendar(...)@110 != null
*
* Postconditions:
* return_value == &new LogSummaryItem(getLogSummary#1)
* new LogSummaryItem(getLogSummary#1) num objects == 1
* return_value.blog == this.blog
* return_value.blog != null
* init'ed(return_value.date)
* return_value.totalRequests == 0
*/
109 public LogSummary getLogSummary(int year, int month, int day) {
110 Calendar cal = blog.getCalendar();
111 cal.set(Calendar.YEAR, year);
112 cal.set(Calendar.MONTH, month-1);
113 cal.set(Calendar.DAY_OF_MONTH, day);
114 int totalRequests = 0;
115
116 return new LogSummaryItem(blog, cal.getTime(), totalRequests);
117 }
118
119 }
SofCheck Inspector Build Version : 2.22510
| nulllogger.java |
2010-Jun-25 19:40:32 |
| nulllogger.class |
2010-Jul-19 20:23:38 |