Package nltk_lite :: Package contrib :: Package toolbox :: Module errors
[hide private]
[frames] | no frames]

Source Code for Module nltk_lite.contrib.toolbox.errors

  1  # Natural Language Toolkit: Shoebox Errors 
  2  # 
  3  # Copyright (C) 2001-2006 University of Pennsylvania 
  4  # Author: Stuart Robinson <Stuart.Robinson@mpi.nl> 
  5  # URL: <http://nltk.sf.net> 
  6  # For license information, see LICENSE.TXT 
  7   
  8  """ 
  9  This module provides Shoebox exceptions. 
 10  """ 
 11   
 12  # --------------------------------------------------------------------- 
 13  # CLASS:  ShoeboxError 
 14  # DESC:   ??? 
 15  # --------------------------------------------------------------------- 
 16   
17 -class ShoeboxError(Exception):
18 """ 19 This is the base class for all Shoebox errors. 20 """
21 - def __init__(self):
22 self._msg = ""
23 24 25 # --------------------------------------------- 26 # CLASS: ValidationError 27 # DESC: ??? 28 # --------------------------------------------- 29
30 -class NonUniqueEntryError(ShoeboxError):
31 """ 32 ??? 33 """
34 - def __init__(self) :
35 pass
36
37 -class ValidationError(ShoeboxError):
38
39 - def __init__(self):
40 pass
41
42 - def setField(self, field):
43 self._field = field
44
45 - def getField(self):
46 return self._field
47 48 49 # --------------------------------------------- 50 # CLASS: NoMetadataFound 51 # DESC: ??? 52 # --------------------------------------------- 53
54 -class NoMetadataFound(ValidationError):
55
56 - def __init__(self, field):
57 self._field = field
58 59
60 -class FieldError(ShoeboxError):
61
62 - def __init__(self):
63 pass
64
65 - def __str__(self) :
66 return self.get_message()
67 68
69 -class NonUniqueFieldError(FieldError):
70 """ 71 Error raised when an attempt is made to retrieve a unique field which has more than one value 72 """
73 - def __init__(self, entry):
74 self._entry = entry
75
76 - def setEntry(self, entry):
77 self._entry = entry
78
79 - def getEntry(self):
80 return self._entry
81 82 83 # --------------------------------------------- 84 # CLASS: BadFieldValue 85 # DESC: ??? 86 # --------------------------------------------- 87
88 -class BadFieldValueError(ValidationError, FieldError):
89 90 FIELD_VALUE_ERROR_RANGE_SET = '1' 91 FIELD_VALUE_ERROR_NO_WORD_WRAP = '2' 92 FIELD_VALUE_ERROR_EMPTY_VALUE = '3' 93 FIELD_VALUE_ERROR_SINGLE_WORD = '4' 94 95 errorTypes = { 96 '1': "Range Set", 97 '2': "No Word Wrap", 98 '3': "Empty Value", 99 '4': "Single Word" 100 } 101
102 - def __init__(self, errorType, entry, field, fmMetadata):
103 self._entry = entry 104 self._errorType = errorType 105 self._field = field 106 self._fmMetadata = fmMetadata
107
108 - def __str__(self):
109 e = self.getEntry() 110 f = self.getField() 111 typ = self.getErrorDescription() 112 s = "'%s' error in '\\%s' field of record %i!\nRecord:\n%s" % (typ, f.getMarker(), e.getNumber(), e.getRawText()) 113 return s
114
115 - def getFieldMarkerMetadata(self):
116 return self._fmMetadata
117
118 - def setFieldMarkerMetadata(self, fmMetadata):
119 self._fmMetadata = fmMetadata
120
121 - def getErrorDescription(self):
122 try: 123 return self.errorTypes[self.getErrorType()] 124 except: 125 return None
126
127 - def getErrorType(self):
128 return self._errorType
129
130 - def setErrorType(self, errorType):
131 self._errorType = errorType
132
133 - def getEntry(self):
134 return self._entry
135
136 - def setEntry(self, entry):
137 self._entry = entry
138