001 package org.kuali.common.jdbc.suppliers;
002
003 import org.kuali.common.jdbc.reader.SqlReader;
004 import org.kuali.common.util.Assert;
005
006 public final class SqlLocationContext {
007
008 public static final int DEFAULT_MAX_COUNT = 50;
009 public static final int DEFAULT_MAX_SIZE = 50 * 1024;
010
011 public SqlLocationContext(String encoding, SqlReader reader) {
012 this(encoding, reader, DEFAULT_MAX_COUNT, DEFAULT_MAX_SIZE);
013 }
014
015 public SqlLocationContext(String encoding, SqlReader reader, int maxCount, int maxSize) {
016 Assert.noBlanks(encoding);
017 Assert.noNulls(reader);
018 Assert.isTrue(maxCount > 0, "max count must be a positive integer");
019 Assert.isTrue(maxSize >= 0, "max size is negative");
020 this.encoding = encoding;
021 this.reader = reader;
022 this.maxCount = maxCount;
023 this.maxSize = maxSize;
024 }
025
026 private final String encoding;
027 private final SqlReader reader;
028 private final int maxCount;
029 private final int maxSize;
030
031 public String getEncoding() {
032 return encoding;
033 }
034
035 public SqlReader getReader() {
036 return reader;
037 }
038
039 public int getMaxCount() {
040 return maxCount;
041 }
042
043 public int getMaxSize() {
044 return maxSize;
045 }
046
047 }