Michael Pasternak has uploaded a new change for review.

Change subject: sdk: clean context on disconnect
......................................................................

sdk: clean context on disconnect

Change-Id: Ic1f8f8b035cd68cf411ae7f0802827d62cc6e537
Signed-off-by: Michael Pasternak <[email protected]>
---
M src/codegen/entrypoint/entrypoint.py
M src/ovirtsdk/api.py
M src/ovirtsdk/infrastructure/contextmanager.py
3 files changed, 20 insertions(+), 9 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine-sdk refs/changes/39/7439/1

diff --git a/src/codegen/entrypoint/entrypoint.py 
b/src/codegen/entrypoint/entrypoint.py
index 0bf2930..95b6d48 100644
--- a/src/codegen/entrypoint/entrypoint.py
+++ b/src/codegen/entrypoint/entrypoint.py
@@ -86,15 +86,15 @@
         # session:        
         if proxy and persistent_auth:
             try:
-                proxy.request(method='GET', 
+                proxy.request(method='GET',
                               url='/api',
                               headers={'Filter': filter_header},
                               last=True)
             except Exception:
                 pass
 
-        # Remove the proxy:
-        contextmanager._remove('proxy', force=True)
+        # Clear context
+        contextmanager._clear(force=True)
 
     def test(self, throw_exception=False):
         ''' test server connectivity '''
@@ -104,7 +104,7 @@
 
         if proxy:
             try :
-                proxy.request(method='GET', 
+                proxy.request(method='GET',
                               url='/api',
                               headers={'Filter': filter_header})
             except Exception, e:
diff --git a/src/ovirtsdk/api.py b/src/ovirtsdk/api.py
index 0839d1a..34f5a55 100644
--- a/src/ovirtsdk/api.py
+++ b/src/ovirtsdk/api.py
@@ -19,7 +19,7 @@
 ############ GENERATED CODE ############
 ########################################
 
-'''Generated at: 2012-08-23 14:04:09.405861'''
+'''Generated at: 2012-08-23 18:08:16.950916'''
 
 from ovirtsdk.infrastructure import contextmanager
 from ovirtsdk.infrastructure.connectionspool import ConnectionsPool
@@ -127,15 +127,15 @@
         # session:        
         if proxy and persistent_auth:
             try:
-                proxy.request(method='GET', 
+                proxy.request(method='GET',
                               url='/api',
                               headers={'Filter': filter_header},
                               last=True)
             except Exception:
                 pass
 
-        # Remove the proxy:
-        contextmanager._remove('proxy', force=True)
+        # Clear context
+        contextmanager._clear(force=True)
 
     def test(self, throw_exception=False):
         ''' test server connectivity '''
@@ -145,7 +145,7 @@
 
         if proxy:
             try :
-                proxy.request(method='GET', 
+                proxy.request(method='GET',
                               url='/api',
                               headers={'Filter': filter_header})
             except Exception, e:
diff --git a/src/ovirtsdk/infrastructure/contextmanager.py 
b/src/ovirtsdk/infrastructure/contextmanager.py
index 053e351..e8826ee 100644
--- a/src/ovirtsdk/infrastructure/contextmanager.py
+++ b/src/ovirtsdk/infrastructure/contextmanager.py
@@ -82,6 +82,17 @@
             else: return cache[key].val
         return None
 
+def _clear(force=False):
+    ''' 
+    removes all items from the cache
+    
+    @param force: force remove regardless cache mode
+    '''
+    with lock:
+        from ovirtsdk.infrastructure import contextmanager
+        for item in cache.keys():
+            contextmanager._remove(key=item, force=force)
+
 def _remove(key, force=False):
     ''' 
     removes the value from cache


--
To view, visit http://gerrit.ovirt.org/7439
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic1f8f8b035cd68cf411ae7f0802827d62cc6e537
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine-sdk
Gerrit-Branch: master
Gerrit-Owner: Michael Pasternak <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to