MCPcopy
hub / github.com/spaceandtimefdn/SxT-Python-SDK / SXTMaterializedView

Class SXTMaterializedView

src/spaceandtime/sxtresource.py:1313–1397  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1311
1312
1313class SXTMaterializedView(SXTResource):
1314 __ri__: int
1315
1316 def __init__(self, name:str='', from_file:Path=None, default_user:SXTUser = None,
1317 private_key:str = '', new_keypair:bool = False, key_manager:SXTKeyManager = None,
1318 application_name:str = None, start_time:datetime = None,
1319 default_local_folder:Path = None,
1320 logger:logging.Logger = None, SpaceAndTime_parent:object = None) -> None:
1321 """--------------------
1322 Creates a new Space and Time Materialized View object.
1323
1324 Accepts a good number of settings during init, either individually (name, private_key,
1325 etc.) or use from_file to pass in Path to a save() file to reload previous config.
1326 Similarly, object parameters can be passed in individually (application_name, logger,
1327 key_manager, default_user) or pass in the SpaceAndTime_parent object, and those objects
1328 will be inherited automatically. The SpaceAndTime parameters are loaded first,
1329 overridden by anything in the from_file, overridden by individual parameters.
1330
1331 Args:
1332 name (str): Name of Schema.ViewName
1333 from_file (Path): Path location of a saved file to load from.
1334 default_user (SXTUser): User to use when no other user is specified.
1335 private_key (str): Private key for the Resource (not user), in Base64, Hex, or Binary.
1336 new_keypair (bool): If True, creates a new keypairs, overriding key_manager but not private_key (if set).
1337 key_manager (SXTKeyManager): Key manager object
1338 application_name (str): Name of the application, for logging and Space And Time query logging (if enabled).
1339 start_time (datetime): Starting time of the process (for uniformity across objects).
1340 default_local_folder (Path): default local path for saving / loading files.
1341 logger (Logger): Python Logger object, with which to log all activity.
1342 SpaceAndTime_parent (SpaceAndTime): parent SpaceAndTime class object to inherit default_user, key_manager, application_name, and logger.
1343 """
1344 self.resource_type = SXTResourceType.MATERIALIZED_VIEW
1345 self.__foname__ = 'mat_views'
1346 super().__init__(name, from_file, default_user, private_key, new_keypair, key_manager, application_name, start_time, default_local_folder, logger, SpaceAndTime_parent)
1347 self.__ri__ = 1440
1348 self.__allprops__.insert(2, 'refresh_interval')
1349 self.__with__= {"public_key":"{public_key}", "refresh_interval":"{refresh_interval}"}
1350 self.__existfunc__ = self.user.base_api.discovery_get_views
1351
1352 @property
1353 def matview_name(self) ->str:
1354 return self.resource_name
1355 @matview_name.setter
1356 def matview_name(self, value):
1357 self.resource_name = value
1358
1359 @property
1360 def refresh_interval(self) -> int:
1361 return self.__ri__
1362 @refresh_interval.setter
1363 def refresh_interval(self, value):
1364 if value >= 1440:
1365 self.__ri__ = value
1366 else:
1367 raise SxTArgumentError('Current limit to a Materialized View refresh is once every 24 hours // 1440 minutes', logger=self.logger)
1368
1369 @property
1370 def create_ddl_sample(self) -> str:

Callers 1

test_allFunction · 0.90

Calls

no outgoing calls

Tested by 1

test_allFunction · 0.72