private void processCatalogueDeleteReplicaResult(Sim_event ev)
    {
        if (ev == null) {
            return;
        }

        Object[] pack = (Object[]) ev.get_data();
        if (pack == null) {
            return;
        }

        String filename = (String) pack[0];         // get file name
        int msg = ((Integer) pack[1]).intValue();   // get result

        int eventSource = findEvent(waitingReplicaDeleteAck_, filename);
        ArrayList list = (ArrayList) catalogueHash_.get(filename);

        if (msg == DataGridTags.CTLG_DELETE_REPLICA_SUCCESSFUL)
        {
            list.remove(new Integer(eventSource));
            if (list.size() == 0) {
                catalogueHash_.remove(filename);
            }
        }

        if (!this.localRC_)
        {
            sendMessage(filename, DataGridTags.CTLG_DELETE_REPLICA_RESULT,
                        msg, eventSource);
        }
    }