class ReclassificationPreparationUpdateDistributionHandler extends ActionHandler {

    @Override
    public ItemStatus execute(WorkerParameters param, HandlerIO handler)
        throws ProcessingException {

        try {

            // Load / parse & validate request
            ReclassificationOrders reclassificationOrders = loadReclassificationOrders(handler);

            // Prepare distributions
            prepareUpdates(reclassificationOrders, handler);

        } catch (ProcessingStatusException e) {
            LOGGER.error("Reclassification update distribution failed with status [" + e.getStatusCode() + "]", e);
            return buildItemStatus(RECLASSIFICATION_PREPARATION_UPDATE_DISTRIBUTION, e.getStatusCode(),
                e.getEventDetails());
        }

        LOGGER.info("Reclassification update distribution succeeded");

        return buildItemStatus(RECLASSIFICATION_PREPARATION_UPDATE_DISTRIBUTION, StatusCode.OK, null);
    }

    public  ReclassificationPreparationUpdateDistributionHandler();
    @VisibleForTesting  ReclassificationPreparationUpdateDistributionHandler(MetaDataClientFactory metaDataClientFactory);

}