1 package org.csc.phynixx.connection; 2 3 /* 4 * #%L 5 * phynixx-connection 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 /** 25 * 26 * maps the call of {@link IPhynixxManagedConnection#close()} to an implementation 27 * 28 * Its no interface to keep this strategy hidden 29 * Created by christoph on 22.02.14. 30 */ 31 abstract class CloseStrategy<C extends IPhynixxConnection> { 32 33 /** 34 * marks a connection a close from a transactional context. The implematations decides if it can be re-used or if it is destroyes 35 * @param managedConnection 36 */ 37 abstract void close(PhynixxManagedConnectionGuard<C> managedConnection); 38 39 40 }