Why is it a list argument now ? In __checkMaxInputData it is interpreted as integer:

def __checkMaxInputData( self, maxNumber ):
...
    if len( List.fromChar( varValue ) ) > maxNumber: