def list(args):
    """Retrieves a list of metabolites by experiment ID, platform ID
    required parameters: 
    
    experimentID
    platformID
                                    
    :rtype: response json
    :return: Returns a response object from the webservice in the json format if success raises exception otherwise
    
    """
    # get list service url
    svc_url = svc.get_list_base_url()

    try:
        # execute request
        response = rh.build_payload(svc_url, args, 'list')
        print json.dumps(response)
        print '---'
    except ValueError as e:
        error_msg = "ValueError Exception:" + e.message
        log.error(error_msg, exc_info=True)
        raise Exception(error_msg)
    except requests.exceptions.HTTPError as e:
        error_msg = "HTTPError Exception:" + e.message
        log.error(error_msg, exc_info=True)
        raise Exception(error_msg)
    except ConnectionError as e:
        error_msg = "ConnectionError Exception:" + e.message
        log.error(error_msg, exc_info=True)
        raise Exception(error_msg)
    except Exception as e:
        error_msg = "GenericError Exception:" + e.message
        log.error(error_msg, exc_info=True)
        raise Exception(error_msg)
def get_metabolites_as_json(url, args):
    """ Retrieves all metabolites in json format
    return  platforms in json format
    
    :type url: string
    :param url: request url
    
    :type args: string
    :param args: request parameters
      
    :rtype: list
    :return: Returns list of Metabolite objects in json format if success raises exception otherwise
    
    """
    response = rh.build_payload(url, args, 'list')
    return response