@@ -56,67 +56,16 @@ class ObjectStore(Store):
5656 """The underlying obstore instance."""
5757
5858 def __eq__ (self , value : object ) -> bool :
59- from obstore .store import (
60- AzureStore ,
61- GCSStore ,
62- HTTPStore ,
63- LocalStore ,
64- MemoryStore ,
65- S3Store ,
66- )
67-
6859 if not isinstance (value , ObjectStore ):
6960 return False
7061
71- if not isinstance ( self .store , type ( value .store )) :
62+ if self .read_only != value .read_only :
7263 return False
73- if not self .read_only == value .read_only :
64+
65+ if not isinstance (self .store , type (value .store )):
7466 return False
7567
76- match value .store :
77- case AzureStore ():
78- assert isinstance (self .store , AzureStore )
79- if (
80- (self .store .config != value .store .config )
81- or (self .store .client_options != value .store .client_options )
82- or (self .store .prefix != value .store .prefix )
83- or (self .store .retry_config != value .store .retry_config )
84- ):
85- return False
86- case GCSStore ():
87- assert isinstance (self .store , GCSStore )
88- if (
89- (self .store .config != value .store .config )
90- or (self .store .client_options != value .store .client_options )
91- or (self .store .prefix != value .store .prefix )
92- or (self .store .retry_config != value .store .retry_config )
93- ):
94- return False
95- case S3Store ():
96- assert isinstance (self .store , S3Store )
97- if (
98- (self .store .config != value .store .config )
99- or (self .store .client_options != value .store .client_options )
100- or (self .store .prefix != value .store .prefix )
101- or (self .store .retry_config != value .store .retry_config )
102- ):
103- return False
104- case HTTPStore ():
105- assert isinstance (self .store , HTTPStore )
106- if (
107- (self .store .url != value .store .url )
108- or (self .store .client_options != value .store .client_options )
109- or (self .store .retry_config != value .store .retry_config )
110- ):
111- return False
112- case LocalStore ():
113- assert isinstance (self .store , LocalStore )
114- if self .store .prefix != value .store .prefix :
115- return False
116- case MemoryStore ():
117- if self .store is not value .store :
118- return False # Two memory stores can't be equal because we can't pickle memory stores
119- return True
68+ return self .store == value .store
12069
12170 def __init__ (self , store : _UpstreamObjectStore , * , read_only : bool = False ) -> None :
12271 import obstore as obs
0 commit comments