@Override
 public void delete(Record record) throws RepositoryException, InterruptedException {
   try {
     lilyProxy.delete(converter.convert(record.getId()), null, record.getAttributes());
   } catch (AvroRepositoryException e) {
     throw converter.convert(e);
   } catch (AvroGenericException e) {
     throw converter.convert(e);
   } catch (AvroRemoteException e) {
     throw handleAvroRemoteException(e);
   } catch (UndeclaredThrowableException e) {
     throw handleUndeclaredRecordThrowable(e);
   }
 }
 @Override
 public Record delete(RecordId recordId, List<MutationCondition> conditions)
     throws RepositoryException, InterruptedException {
   try {
     ByteBuffer record =
         lilyProxy.delete(converter.convert(recordId), converter.convert(null, conditions), null);
     return record == null ? null : converter.convertRecord(record);
   } catch (AvroRepositoryException e) {
     throw converter.convert(e);
   } catch (AvroGenericException e) {
     throw converter.convert(e);
   } catch (AvroRemoteException e) {
     throw handleAvroRemoteException(e);
   } catch (UndeclaredThrowableException e) {
     throw handleUndeclaredRecordThrowable(e);
   }
 }