001 /* 002 * Copyright 2002-2005 the original author or authors. 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 017 package org.jencks.factory; 018 019 /** 020 * This abstract class defines common properties for every 021 * kind of pool used by the connection manager of Geronimo. 022 * <p/> 023 * These properties are the following: 024 * - maxSize: the max size of the pool 025 * - minSize: the min size of the pool 026 * - blockingTimeoutMilliseconds: the blocking timeout of the pool 027 * in milliseconds 028 * - idleTimeoutMinutes: the idle timeout of the pool in minutes 029 * - matchOne: 030 * - matchAll: 031 * selectOneAssumeMatch: 032 * 033 * @author Thierry Templier 034 * @see PartitionedPoolFactoryBean 035 * @see SinglePoolFactoryBean 036 */ 037 public abstract class AbstractGeronimoPool { 038 039 protected int maxSize; 040 protected int minSize; 041 protected int blockingTimeoutMilliseconds; 042 protected int idleTimeoutMinutes; 043 protected boolean matchOne; 044 protected boolean matchAll; 045 protected boolean selectOneAssumeMatch; 046 047 public int getBlockingTimeoutMilliseconds() { 048 return blockingTimeoutMilliseconds; 049 } 050 051 public int getIdleTimeoutMinutes() { 052 return idleTimeoutMinutes; 053 } 054 055 public boolean isMatchAll() { 056 return matchAll; 057 } 058 059 public boolean isMatchOne() { 060 return matchOne; 061 } 062 063 public int getMaxSize() { 064 return maxSize; 065 } 066 067 public int getMinSize() { 068 return minSize; 069 } 070 071 public boolean isSelectOneAssumeMatch() { 072 return selectOneAssumeMatch; 073 } 074 075 /** 076 * Set the blocking timeout property in milliseconds. 077 */ 078 public void setBlockingTimeoutMilliseconds(int blockingTimeoutMilliseconds) { 079 this.blockingTimeoutMilliseconds = blockingTimeoutMilliseconds; 080 } 081 082 /** 083 * Set the idle timeout property in minutes. 084 */ 085 public void setIdleTimeoutMinutes(int idleTimeoutMinutes) { 086 this.idleTimeoutMinutes = idleTimeoutMinutes; 087 } 088 089 /** 090 * Set the match all property. 091 */ 092 public void setMatchAll(boolean matchAll) { 093 this.matchAll = matchAll; 094 } 095 096 /** 097 * Set the match one property. 098 */ 099 public void setMatchOne(boolean matchOne) { 100 this.matchOne = matchOne; 101 } 102 103 /** 104 * Set the max size property of the pool. 105 */ 106 public void setMaxSize(int maxSize) { 107 this.maxSize = maxSize; 108 } 109 110 /** 111 * Set the min size property of the pool. 112 */ 113 public void setMinSize(int minSize) { 114 this.minSize = minSize; 115 } 116 117 /** 118 * Set the select one assume mathc property. 119 */ 120 public void setSelectOneAssumeMatch(boolean selectOneAssumeMatch) { 121 this.selectOneAssumeMatch = selectOneAssumeMatch; 122 } 123 124 }