Program: 94243
Project: 94243
Buggy source:
private Map createProxyProperties(EndpointDescription endpointDescription,IRemoteServiceContainer rsContainer,IRemoteServiceReference rsReference,IRemoteService remoteService){
  Map resultProperties=new TreeMap<String,Object>(String.CASE_INSENSITIVE_ORDER);
  PropertiesUtil.copyNonReservedProperties(rsReference,resultProperties);
  PropertiesUtil.copyNonReservedProperties(endpointDescription.getProperties(),resultProperties);
  resultProperties.remove(org.eclipse.ecf.remoteservice.Constants.OBJECTCLASS);
  resultProperties.remove(org.eclipse.ecf.remoteservice.Constants.SERVICE_ID);
  Object intentsValue=PropertiesUtil.convertToStringPlusValue(endpointDescription.getIntents());
  if (intentsValue != null)   resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_INTENTS,intentsValue);
  String serviceImportedType=(String)endpointDescription.getProperties().get(org.eclipse.ecf.osgi.services.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED_VALUETYPE);
  if (serviceImportedType == null || serviceImportedType.equals(IRemoteService.class.getName()))   resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED,remoteService);
 else   resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED,new Boolean(true));
  String[] exporterSupportedConfigs=(String[])endpointDescription.getProperties().get(org.osgi.service.remoteserviceadmin.RemoteConstants.REMOTE_CONFIGS_SUPPORTED);
  String[] importedConfigs=getImportedConfigs(rsContainer.getContainer(),exporterSupportedConfigs);
  resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED_CONFIGS,importedConfigs);
  resultProperties.put(org.eclipse.ecf.osgi.services.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED_ENDPOINT_ID,endpointDescription.getProperties().get(org.osgi.service.remoteserviceadmin.RemoteConstants.ENDPOINT_ID));
  resultProperties.put(org.eclipse.ecf.osgi.services.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED_ENDPOINT_SERVICE_ID,endpointDescription.getProperties().get(org.osgi.service.remoteserviceadmin.RemoteConstants.ENDPOINT_SERVICE_ID));
  return resultProperties;
}

Fixed version (ground truth):
private Map createProxyProperties(EndpointDescription endpointDescription,IRemoteServiceContainer rsContainer,IRemoteServiceReference rsReference,IRemoteService remoteService){
  Map resultProperties=new TreeMap<String,Object>(String.CASE_INSENSITIVE_ORDER);
  PropertiesUtil.copyNonReservedProperties(rsReference,resultProperties);
  PropertiesUtil.copyNonReservedProperties(endpointDescription.getProperties(),resultProperties);
  resultProperties.remove(org.eclipse.ecf.remoteservice.Constants.OBJECTCLASS);
  resultProperties.remove(org.eclipse.ecf.remoteservice.Constants.SERVICE_ID);
  Object intentsValue=PropertiesUtil.convertToStringPlusValue(endpointDescription.getIntents());
  if (intentsValue != null)   resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_INTENTS,intentsValue);
  String serviceImportedType=(String)endpointDescription.getProperties().get(org.eclipse.ecf.osgi.services.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED_VALUETYPE);
  if (serviceImportedType == null || serviceImportedType.equals(IRemoteService.class.getName()))   resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED,remoteService);
 else   resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED,new Boolean(true));
  String[] exporterSupportedConfigs=(String[])endpointDescription.getProperties().get(org.osgi.service.remoteserviceadmin.RemoteConstants.REMOTE_CONFIGS_SUPPORTED);
  String[] importedConfigs=getImportedConfigs(rsContainer.getContainer(),exporterSupportedConfigs);
  resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_IMPORTED_CONFIGS,importedConfigs);
  String endpointId=endpointDescription.getId();
  resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.ENDPOINT_ID,endpointId);
  Long endpointServiceId=new Long(endpointDescription.getServiceId());
  resultProperties.put(org.osgi.service.remoteserviceadmin.RemoteConstants.ENDPOINT_SERVICE_ID,endpointServiceId);
  return resultProperties;
}