1 /* 2 * jDTAUS Core Utilities 3 * Copyright (C) 2005 Christian Schulte 4 * <cs@schulte.it> 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 19 * 20 */ 21 package org.jdtaus.core.io.util.test; 22 23 import java.io.IOException; 24 import org.jdtaus.core.io.StructuredFile; 25 import org.jdtaus.core.io.it.StructuredFileTest; 26 import org.jdtaus.core.io.util.MemoryFileOperations; 27 import org.jdtaus.core.io.util.ReadAheadFileOperations; 28 import org.jdtaus.core.io.util.StructuredFileOperations; 29 30 /** 31 * Testcase for {@code StructuredFileOperations} implementations. 32 * 33 * @author <a href="mailto:cs@schulte.it">Christian Schulte</a> 34 * @version $JDTAUS: StructuredFileOperationsReadAheadUnevenTest.java 8641 2012-09-27 06:45:17Z schulte $ 35 */ 36 public class StructuredFileOperationsReadAheadUnevenTest 37 extends StructuredFileTest 38 { 39 //--StructuredFileTest------------------------------------------------------ 40 41 /** {@code FileOperations} backing the {@code StructuredFile}. */ 42 private final MemoryFileOperations memOps = new MemoryFileOperations(); 43 44 /** {@code StructuredFile} implementation being tested. */ 45 private StructuredFileOperations structuredFile; 46 47 protected byte[] getStructuredData() 48 { 49 try 50 { 51 this.structuredFile.flush(); 52 return this.memOps.getData(); 53 } 54 catch ( IOException e ) 55 { 56 throw new AssertionError( e ); 57 } 58 } 59 60 protected StructuredFile getStructuredFile() 61 { 62 try 63 { 64 if ( this.structuredFile == null ) 65 { 66 this.structuredFile = new StructuredFileOperations( 67 StructuredFileTest.BLOCK_SIZE, 68 new ReadAheadFileOperations( this.memOps, 3 ) ); 69 70 } 71 72 return this.structuredFile; 73 } 74 catch ( IOException e ) 75 { 76 throw new AssertionError( e ); 77 } 78 } 79 80 //------------------------------------------------------StructuredFileTest-- 81 }