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 }