<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def update_profiles(adapter):
 """ For all cases having vcf_path, update the profile string for the samples Args: adapter (MongoAdapter):
 Adapter to mongodb """


    for case in adapter.cases():

        #If the case has a vcf_path, get the profiles and update the
        #case with new profiled individuals.
        if case.get('profile_path'):

            profiles = get_profiles(adapter, case['profile_path'])
            profiled_individuals = deepcopy(case['individuals'])

            for individual in profiled_individuals:
                ind_id = individual['ind_id']
                try:
                    profile = profiles[ind_id]
                    individual['profile'] = profile

                except KeyError:
                    LOG.warning(f"sample IDs in vcf does not match for case {case['case_id']}")

            updated_case = deepcopy(case)

            updated_case['individuals'] = profiled_individuals

            adapter.add_case(updated_case, update=True)