View Javadoc

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  }