ConfigValueInterceptor.java |
1 /** 2 * Distribution License: 3 * JSword is free software; you can redistribute it and/or modify it under 4 * the terms of the GNU Lesser General Public License, version 2.1 or later 5 * as published by the Free Software Foundation. This program is distributed 6 * in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even 7 * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 8 * See the GNU Lesser General Public License for more details. 9 * 10 * The License is available on the internet at: 11 * http://www.gnu.org/copyleft/lgpl.html 12 * or by writing to: 13 * Free Software Foundation, Inc. 14 * 59 Temple Place - Suite 330 15 * Boston, MA 02111-1307, USA 16 * 17 * © CrossWire Bible Society, 2014 - 2016 18 * 19 */ 20 package org.crosswire.jsword.book.sword; 21 22 /** 23 * Intercepts values from the configuration before these are widely distributed to the rest of the application. 24 * 25 * @see gnu.lgpl.License The GNU Lesser General Public License for details. 26 * @author Chris Burrell 27 */ 28 public interface ConfigValueInterceptor { 29 /** 30 * Intercepts a value before distribution to the rest of the JSword library 31 * @param bookName the initials of the book that is being intercepted 32 * @param configEntryType the configuration entry type, describing which field is being accessed 33 * @param value the value to be intercepted 34 * @return the new value, if different 35 */ 36 Object intercept(String bookName, ConfigEntryType configEntryType, Object value); 37 } 38