public int delete(String[] ids) throws ResourceException {
List<DeleteResult> results = null;
try {
results = sfSoap.delete(Arrays.asList(ids), sh);
} catch (com.sforce.soap.partner.UnexpectedErrorFault e) {
throw new ResourceException(e);
}
boolean allGood = true;
StringBuffer errorMessages = new StringBuffer();
for(int i = 0; i < results.size(); i++) {
DeleteResult result = results.get(i);
if(!result.isSuccess()) {
if(allGood) {
errorMessages.append("Error(s) executing DELETE: "); //$NON-NLS-1$
allGood = false;
}
List<com.sforce.soap.partner.Error> errors = result.getErrors();
if(null != errors && errors.size() > 0) {
for(int x = 0; x < errors.size(); x++) {
com.sforce.soap.partner.Error error = errors.get(x);
errorMessages.append(error.getMessage()).append(';');
}
}
}
}
if(!allGood) {
throw new ResourceException(errorMessages.toString());
}
return results.size();
}