def __init__(self, series_id, connection=None, connection_string="", debug=False): # print "Series id: ", series_id self._connection = connection self._series_id = series_id self._filter_from_selection = False self._debug = debug if (connection_string is not ""): self._session_factory = SessionFactory(connection_string, debug) self._series_service = SeriesService(connection_string, debug) elif (factory is not None): self._session_factory = factory service_manager = ServiceManager() self._series_service = service_manager.get_series_service() else: # One or the other must be set print "Must have either a connection string or session factory" # TODO throw an exception self._edit_session = self._session_factory.get_session() if self._connection == None: series_service = SeriesService(connection_string, False) series = series_service.get_series_by_id(series_id) DataValues = [ (dv.id, dv.data_value, dv.value_accuracy, dv.local_date_time, dv.utc_offset, dv.date_time_utc, dv.site_id, dv.variable_id, dv.offset_value, dv.offset_type_id, dv.censor_code, dv.qualifier_id, dv.method_id, dv.source_id, dv.sample_id, dv.derived_from_id, dv.quality_control_level_id) for dv in series.data_values ] self._connection = sqlite3.connect( ":memory:", detect_types=sqlite3.PARSE_DECLTYPES) tmpCursor = self._connection.cursor() self.init_table(tmpCursor) tmpCursor.executemany( "INSERT INTO DataValuesEdit VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", DataValues) self._connection.commit() self._cursor = self._connection.cursor() self._populate_series()
def __init__(self, connection_string="", debug=False): self._session_factory = SessionFactory(connection_string, debug) self._edit_session = self._session_factory.get_session() self._debug = debug
def setup(self): self.connection_string = "sqlite:///:memory:" self.session_factory = SessionFactory(self.connection_string, echo=True)