1 /* 2 * Copyright 2012 Olivier Godineau 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 5 * use this file except in compliance with the License. You may obtain a copy of 6 * the License at http://www.apache.org/licenses/LICENSE-2.0 7 * 8 * Unless required by applicable law or agreed to in writing, software 9 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 10 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 11 * License for the specific language governing permissions and limitations under 12 * the License. 13 */ 14 package olg.csv.bean; 15 16 import olg.csv.base.Row; 17 import olg.csv.bean.parser.ParseException; 18 19 /** 20 * In reading process, product beans from rows. 21 * 22 * 23 * @author Olivier Godineau 24 * @param <B> 25 * dedicated bean the processor products 26 * 27 */ 28 public interface IBeanProcessor<B> { 29 30 /** 31 * Returns a new bean built from the given row. 32 * 33 * @param line 34 * list of String 35 * @return <code>null</code> if Row Argument is <code>null</code> or this 36 * transformer has no property transformer 37 * @throws olg.csv.bean.parser.ParseException 38 * if an error occurs during parsing String into Bean. 39 */ 40 B transform(Row line) throws ParseException; 41 42 }