question: private static List < Agent > prepareContributorsFromEmlAgents ( List < Agent > contacts , List < Agent > metadataProviders , List < Agent > associatedParties ) { List < Agent > ls = Lists . newArrayList ( ) ; for ( Agent contact : contacts ) { contact . setRole ( CONTACT_ROLE ) ; } ls . addAll ( contacts ) ; for ( Agent metadataProvider : metadataProviders ) { metadataProvider . setRole ( METADATA_PROVIDER_ROLE ) ; } ls . addAll ( metadataProviders ) ; ls . addAll ( associatedParties ) ; return ls ; }
target:  DataCite contributors are created from the combined set of EML contact, metadataProvider and associatedParty agents. MetadataProvider and Contact Agents don't have a role, so set. The role is converted to DataCite ContributorType in later processing.