1 package org.csc.phynixx.tutorial; 2 3 /* 4 * #%L 5 * phynixx-tutorial 6 * %% 7 * Copyright (C) 2014 Christoph Schmidt-Casdorff 8 * %% 9 * Licensed under the Apache License, Version 2.0 (the "License"); 10 * you may not use this file except in compliance with the License. 11 * You may obtain a copy of the License at 12 * 13 * http://www.apache.org/licenses/LICENSE-2.0 14 * 15 * Unless required by applicable law or agreed to in writing, software 16 * distributed under the License is distributed on an "AS IS" BASIS, 17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 * See the License for the specific language governing permissions and 19 * limitations under the License. 20 * #L% 21 */ 22 23 24 import org.csc.phynixx.connection.IAutoCommitAware; 25 import org.csc.phynixx.connection.IPhynixxConnection; 26 import org.csc.phynixx.connection.IXADataRecorderAware; 27 import org.csc.phynixx.connection.RequiresTransaction; 28 29 import java.io.File; 30 import java.io.IOException; 31 import java.util.List; 32 33 /** 34 * Created by Christoph Schmidt-Casdorff on 04.02.14. 35 */ 36 public interface TAEnabledUTFWriter extends IPhynixxConnection, IXADataRecorderAware, IAutoCommitAware { 37 38 39 String getConnectionId(); 40 41 /** 42 * resets the content of the file associated with die current transaction 43 * @throws IOException 44 */ 45 @RequiresTransaction 46 void resetContent() throws IOException; 47 48 /**writes a string to file 49 * 50 * @param value 51 * @return 52 * @throws IOException 53 */ 54 @RequiresTransaction 55 TAEnabledUTFWriter write(String value) throws IOException; 56 57 58 /** 59 * reads the content 60 * @return 61 */ 62 @RequiresTransaction 63 List<String> readContent() throws IOException; 64 }