1 //========================================================================
2 //Copyright 2004-2008 Mort Bay Consulting Pty. Ltd.
3 //------------------------------------------------------------------------
4 //Licensed under the Apache License, Version 2.0 (the "License");
5 //you may not use this file except in compliance with the License.
6 //You may obtain a copy of the License at
7 //http://www.apache.org/licenses/LICENSE-2.0
8 //Unless required by applicable law or agreed to in writing, software
9 //distributed under the License is distributed on an "AS IS" BASIS,
10 //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 //See the License for the specific language governing permissions and
12 //limitations under the License.
13 //========================================================================
14
15 package org.mortbay.io;
16
17 import java.text.DateFormatSymbols;
18 import java.util.Locale;
19
20 import org.mortbay.util.DateCache;
21
22 public class BufferDateCache extends DateCache
23 {
24 Buffer _buffer;
25 String _last;
26
27 public BufferDateCache()
28 {
29 super();
30 }
31
32 public BufferDateCache(String format, DateFormatSymbols s)
33 {
34 super(format,s);
35 }
36
37 public BufferDateCache(String format, Locale l)
38 {
39 super(format,l);
40 }
41
42 public BufferDateCache(String format)
43 {
44 super(format);
45 }
46
47 public synchronized Buffer formatBuffer(long date)
48 {
49 String d = super.format(date);
50 if (d==_last)
51 return _buffer;
52 _last=d;
53 _buffer=new ByteArrayBuffer(d);
54
55 return _buffer;
56 }
57 }