<s> """<STR_LIT>""" <EOL> from __future__ import absolute_import <EOL> class BucketListingRef ( object ) : <EOL> """<STR_LIT>""" <EOL> class _BucketListingRefType ( object ) : <EOL> """<STR_LIT>""" <EOL> BUCKET = '<STR_LIT>' <EOL> OBJECT = '<STR_LIT:object>' <EOL> PREFIX = '<STR_LIT>' <EOL> @ property <EOL> def url_string ( self ) : <EOL> return self . _url_string <EOL> @ property <EOL> def type_name ( self ) : <EOL> return self . _ref_type <EOL> def IsBucket ( self ) : <EOL> return self . _ref_type == self . _BucketListingRefType . BUCKET <EOL> def IsObject ( self ) : <EOL> return self . _ref_type == self . _BucketListingRefType . OBJECT <EOL> def IsPrefix ( self ) : <EOL> return self . _ref_type == self . _BucketListingRefType . PREFIX <EOL> def __str__ ( self ) : <EOL> return self . _url_string <EOL> class BucketListingBucket ( BucketListingRef ) : <EOL> """<STR_LIT>""" <EOL> def __init__ ( self , storage_url , root_object = None ) : <EOL> """<STR_LIT>""" <EOL> super ( BucketListingBucket , self ) . __init__ ( ) <EOL> self . _ref_type = self . _BucketListingRefType . BUCKET <EOL> self . _url_string = storage_url . url_string <EOL> self . storage_url = storage_url <EOL> self . root_object = root_object <EOL> class BucketListingPrefix ( BucketListingRef ) : <EOL> """<STR_LIT>""" <EOL> def __init__ ( self , storage_url , root_object = None ) : <EOL> """<STR_LIT>""" <EOL> super ( BucketListingPrefix , self ) . __init__ ( ) <EOL> self . _ref_type = self . _BucketListingRefType . PREFIX <EOL> self . _url_string = storage_url . url_string <EOL> self . storage_url = storage_url <EOL> self . root_object = root_object <EOL> class BucketListingObject ( BucketListingRef ) : <EOL> """<STR_LIT>""" <EOL> def __init__ ( self , storage_url , root_object = None ) : <EOL> """<STR_LIT>""" <EOL> super ( BucketListingObject , self ) . __init__ ( ) <EOL> self . _ref_type = self . _BucketListingRefType . OBJECT <EOL> self . _url_string = storage_url . url_string <EOL> self . storage_url = storage_url <EOL> self . root_object = root_object </s>
