1 package com.opencsv.bean;
2
3 public abstract class AbstractMappingStrategyBuilder<S, T extends MappingStrategy<S>> {
4 protected Class<? extends S> type;
5
6 /**
7 * Add type to the builder. Will be passed to the strategy when the build is called.
8 *
9 * @param type - class type
10 * @return builder with the class type set.
11 */
12 public AbstractMappingStrategyBuilder<S, T> withType(Class<? extends S> type) {
13 this.type = type;
14 return this;
15 }
16
17 /**
18 * Builds a new mapping strategy for parsing/writing.
19 * @return A new mapping strategy using the options selected
20 */
21 public abstract T build();
22 }