class SDNCChangeAssignTasks extends AbstractSDNCTask {

    public void changeModelVnf(BuildingBlockExecution execution) {
        try {
            GeneralBuildingBlock gBBInput = execution.getGeneralBuildingBlock();
            GenericVnf genericVnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID);
            ServiceInstance serviceInstance =
                    extractPojosForBB.extractByKey(execution, ResourceKey.SERVICE_INSTANCE_ID);
            SDNCRequest sdncRequest = new SDNCRequest();
            GenericResourceApiVnfOperationInformation req =
                    sdncVnfResources.changeModelVnf(genericVnf, serviceInstance, gBBInput.getCustomer(),
                            gBBInput.getCloudRegion(), gBBInput.getRequestContext(), buildCallbackURI(sdncRequest));
            sdncRequest.setSDNCPayload(req);
            sdncRequest.setTopology(SDNCTopology.VNF);
            execution.setVariable(SDNC_REQUEST, sdncRequest);
        } catch (Exception ex) {
            exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
        }
    }

}