docs: def store(self, obj):
          """ Store 
          
          Store an object into the MongoDB storage for caching
          
          Args:
              obj (AtlasServiceBinding.Binding or AtlasServiceInstance.Instance): instance or binding
              
          Returns:
              ObjectId: MongoDB _id
          
          Raises:
              ErrStorageMongoConnection: Error during MongoDB communication.
              ErrStorageTypeUnsupported: Type unsupported.
              ErrStorageStore : Failed to store the binding or instance.
          """
          
          # query
          if type(obj) is AtlasServiceInstance.Instance:
              query = { "instance_id" : obj.instance_id, "database" : obj.get_dbname(), "cluster": obj.get_cluster(), "parameters" : obj.parameters }
          elif type(obj) is AtlasServiceBinding.Binding:
              query = { "binding_id" : obj.binding_id, "parameters" : obj.parameters, "instance_id": obj.instance.instance_id }
          else:
              raise ErrStorageTypeUnsupported(type(obj))
          
          # insert
          try:
              result = self.broker.insert_one(query)
          except:
              raise ErrStorageMongoConnection("Store Instance or Binding")
          
          if result is not None:
              # Flags the obj to provisioned
              obj.provisioned = True
              return result.inserted_id
          
          raise ErrStorageStore()