void (@NotNull JsonObject descriptor, @Nullable ProjectSetProcessor.Context context) { Map<String, ProjectSetProcessor> processors = new HashMap<>(); for (ProjectSetProcessor extension : ProjectSetProcessor.EXTENSION_POINT_NAME.getExtensions()) { processors.put(extension.getId(), extension); } if (context == null) { context = new ProjectSetProcessor.Context(); } context.directoryName = ""; if (descriptor.get(ProjectSetProcessor.PROJECT) == null) { descriptor.add(ProjectSetProcessor.PROJECT, new JsonObject()); // open directory by default } runProcessor(processors, context, descriptor.entrySet().iterator()); }