diff options
| author | yo mama <pepper@scannerjammer.com> | 2015-09-15 20:36:02 -0700 |
|---|---|---|
| committer | yo mama <pepper@scannerjammer.com> | 2015-09-15 20:36:02 -0700 |
| commit | 95998e066b05b6f006e2497267801e93db347717 (patch) | |
| tree | 44bc98bf1363e86ca5a0856fbd552a863d598e27 | |
| parent | acc164568a215c3c5e2363855f712291b2a459e1 (diff) | |
ok need to check in about it
| -rw-r--r-- | Param/__init__.py | 23 | ||||
| -rw-r--r-- | Params/__init__.py | 46 |
2 files changed, 48 insertions, 21 deletions
diff --git a/Param/__init__.py b/Param/__init__.py index 4152587..eececb9 100644 --- a/Param/__init__.py +++ b/Param/__init__.py @@ -1,19 +1,18 @@ -import re -import os import time import sys -import urllib, urllib2 -from subprocess import Popen, PIPE -Request = urllib2.Request -urlencode = urllib.urlencode -urlopen = urllib2.urlopen -from Config import WORKING_DIR, MAX_SIZE, \ - SPECIAL_DOWNLOADERS, SPECIAL_DOWNLOADERS_MAX_SIZE, \ - BIN_IDENTIFY +from Config import WORKING_DIR + +from Param.Int import ParamInt +from Param.Raw import ParamRaw +from Param.Bool import ParamBool +from Param.Enum import ParamEnum +from Param.Json import ParamJson +from Param.Color import ParamColor +from Param.Float import ParamFloat +from Param.Img_url import ParamImg_url +from Param.String import ParamString -class BadParamError(Exception): - pass class Params(object): def __init__(self, classname="", **kwargs): diff --git a/Params/__init__.py b/Params/__init__.py index c748185..85c029d 100644 --- a/Params/__init__.py +++ b/Params/__init__.py @@ -1,11 +1,11 @@ import re import os -import time import sys -import urllib, urllib2 -from subprocess import Popen, PIPE from Param import * +class BadParamError(Exception): + pass + class Params(object): def __init__(self, **kwargs): for key, value in kwargs.items(): @@ -15,6 +15,13 @@ class Params(object): for key, value in vars(self).iteritems(): yield key, value + def _error_log(self, s, error=None, fatal=False): + message = "ERROR - BAD PARAM" + if fatal: message += "- [FATAL] -" + sys.stderr.write("{}:{} - {}\n".format(message, self._classname, s)) + if error: + sys.stderr.write("PARAM ERROR: {}\n".format(str(error))) + def err_warn(self, s, error=None): self._error_log(s, error=error); raise BadParamError("%s - %s" % (self._classname, s)) @@ -25,10 +32,31 @@ class Params(object): except AttributeError: return None - def define_params_from_definitions(self, definitions_array): - for item in definitions_array: - if type == 'str': - - - + def definitions_import(self, d_hash, classname=""): + value = None + for key in d_hash.keys(): + try: + if d_hash[key]['type'] == "bool": + instance = ParamBool(d_hash[key], classname=classname) + elif d_hash[key]['type'] == "color": + instance = ParamColor(d_hash[key], classname=classname) + elif d_hash[key]['type'] == "enum": + instance = ParamEnum(d_hash[key], enum_values=d_hash[key]['enum_values'], classname=classname) + elif d_hash[key]['type'] == "float": + instance = ParamFloat(d_hash[key], classname=classname) + elif d_hash[key]['type'] == "img_url": + instance = ParamImg_url(d_hash[key], classname=classname) + self.__setattr__(key, instance) + continue; + elif d_hash[key]['type'] == "int": + instance = ParamInt(d_hash[key], classname=classname) + elif d_hash[key]['type'] == "json": + instance = ParamJson(d_hash[key], classname=classname) + elif d_hash[key]['type'] == "raw": + instance = ParamRaw(d_hash[key], classname=classname) + elif d_hash[key]['type'] == "string": + instance = ParamString(d_hash[key], classname=classname) + self.__setattr__(key, instance.value) + except Exception as e: + self.err_warn("key: %s value: %s" % (key, str(d_hash[key])), error=str(e)) |
