001/** 002 * Copyright (c) 2011, Regents of the University of Colorado 003 * All rights reserved. 004 * 005 * Redistribution and use in source and binary forms, with or without 006 * modification, are permitted provided that the following conditions are met: 007 * 008 * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 009 * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 010 * Neither the name of the University of Colorado at Boulder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 011 * 012 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 013 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 014 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 015 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 016 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 017 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 018 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 019 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 020 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 021 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 022 * POSSIBILITY OF SUCH DAMAGE. 023 */ 024package org.cleartk.ml.encoder; 025 026import java.util.List; 027 028import org.cleartk.ml.CleartkProcessingException; 029import org.cleartk.ml.Feature; 030import org.cleartk.ml.encoder.features.FeatureEncoder; 031 032/** 033 * <br> 034 * Copyright (c) 2011, Regents of the University of Colorado <br> 035 * All rights reserved. 036 */ 037public class CleartkEncoderException extends CleartkProcessingException { 038 039 private static final String KEY_PREFIX = CleartkEncoderException.class.getName() + "."; 040 041 private static final long serialVersionUID = 1L; 042 043 public static CleartkEncoderException invalidFeatureVectorValue( 044 Throwable cause, 045 int index, 046 double value) { 047 String key = KEY_PREFIX + "invalidFeatureVectorValue"; 048 return new CleartkEncoderException( 049 cause, 050 CleartkProcessingException.DEFAULT_RESOURCE_BUNDLE, 051 key, 052 index, 053 value); 054 } 055 056 public static CleartkEncoderException invalidFeatureVectorValue(int index, double value) { 057 String key = KEY_PREFIX + "invalidFeatureVectorValue"; 058 return new CleartkEncoderException( 059 CleartkProcessingException.DEFAULT_RESOURCE_BUNDLE, 060 key, 061 index, 062 value); 063 } 064 065 public static CleartkEncoderException noMatchingEncoder( 066 Feature feature, 067 List<? extends FeatureEncoder<?>> encoders) { 068 String key = KEY_PREFIX + "noMatchingEncoder"; 069 return new CleartkEncoderException(DEFAULT_RESOURCE_BUNDLE, key, feature, encoders); 070 } 071 072 public CleartkEncoderException( 073 Throwable cause, 074 String resourceBundleName, 075 String messageKey, 076 Object... arguments) { 077 super(cause, resourceBundleName, messageKey, arguments); 078 } 079 080 public CleartkEncoderException(String resourceBundleName, String messageKey, Object... arguments) { 081 super(resourceBundleName, messageKey, arguments); 082 } 083 084 public CleartkEncoderException(Throwable cause) { 085 super(cause); 086 } 087}