docs: protected void processResources(InternalKieModule module, Collection<String> files,
      		KieContainer kieContainer, DeploymentUnit unit, DeployedUnitImpl deployedUnit, ReleaseId releaseId, Map<String, ProcessDescriptor> processes) {
          boolean processClasses = (((KieContainerImpl) kieContainer).getKieProject() instanceof KieModuleKieProject);
  	    for (String fileName : files) {
              if(isProcessFile(fileName)) {
                  ProcessAssetDesc process;
                  try {
                      String processString = new String(module.getBytes(fileName), "UTF-8");
                      String processId = getProcessId(processString);
                      ProcessDescriptor processDesriptor = processes.get(processId);
                      if (processDesriptor != null) {
                          process = processDesriptor.getProcess();
                          if (process == null) {
                              throw new IllegalArgumentException("Unable to read process " + fileName);
                          }
                          process.setEncodedProcessSource(Base64.encodeBase64String(processString.getBytes()));
                          process.setDeploymentId(unit.getIdentifier());
  
                          deployedUnit.addAssetLocation(process.getId(), process);
                          bpmn2Service.addProcessDefinition(unit.getIdentifier(), processId, processDesriptor, kieContainer);
                      }
                  } catch (UnsupportedEncodingException e) {
                      throw new IllegalArgumentException("Unsupported encoding while processing process " + fileName);
                  }
              } else if (fileName.matches(".+ftl$") || fileName.matches(".+form$") || fileName.matches( ".+frm$" )) {
                  try {
                      String formContent = new String(module.getBytes(fileName), "UTF-8");
                      if (fileName.indexOf( "/" ) != -1) fileName = fileName.substring( fileName.lastIndexOf( "/" ) + 1);
                      formManagerService.registerForm(unit.getIdentifier(), fileName, formContent);
                  } catch (UnsupportedEncodingException e) {
                  	throw new IllegalArgumentException("Unsupported encoding while processing form " + fileName);
                  }
              } else if( processClasses && fileName.matches(".+class$")) {
                  // Classes 1: classes from deployment added
                  String className = fileName.replaceAll("/", ".");
                  className = className.substring(0, fileName.length() - ".class".length());
                  Class deploymentClass = null;
                  try {
                      deploymentClass = kieContainer.getClassLoader().loadClass(className);
                  } catch (ClassNotFoundException cnfe) {
                      throw new IllegalArgumentException("Class " + className + " not found in the project");
                  } catch (NoClassDefFoundError e) {
                  	throw new IllegalArgumentException("Class " + className + " not found in the project");
  				}
                  addClassToDeployedUnit(deploymentClass, deployedUnit);
              } else if(fileName.matches(".+cmmn$")) {
                  ProcessAssetDesc process;
                  try {
                      String processString = new String(module.getBytes(fileName), "UTF-8");
                      String processId = getCaseId(processString);
                      ProcessDescriptor processDesriptor = processes.get(processId);
                      if (processDesriptor != null) {
                          process = processDesriptor.getProcess();
                          if (process == null) {
                              throw new IllegalArgumentException("Unable to read process " + fileName);
                          }
                          process.setEncodedProcessSource(Base64.encodeBase64String(processString.getBytes()));
                          process.setDeploymentId(unit.getIdentifier());
  
                          deployedUnit.addAssetLocation(process.getId(), process);
                          bpmn2Service.addProcessDefinition(unit.getIdentifier(), processId, processDesriptor, kieContainer);
                      }
                  } catch (UnsupportedEncodingException e) {
                      throw new IllegalArgumentException("Unsupported encoding while processing process " + fileName);
                  }
              }
          }
      }