docs: @Override
      public CaseFileInstance newCaseFileInstance(String deploymentId, String caseDefinition, Map<String, Object> data) {
          CaseDefinition def = caseRuntimeDataService.getCase(deploymentId, caseDefinition);
          if (def == null) {
              throw new CaseDefinitionNotFoundException("Case definition " + caseDefinition + " does not exist in deployment " + deploymentId);
          }
          CaseFileInstanceImpl caseFile = new CaseFileInstanceImpl(caseDefinition, data);
          caseFile.setupRoles(def.getCaseRoles());
          caseFile.setAccessRestrictions(def.getDataAccessRestrictions());
          
          return caseFile;
      }