private void ensureFrameworkLoaded(final VirtualFile bridgeSupport) { String version = bridgeSupport.getParent().getName(); List<FrameworkInfo> frameworkInfos = ContainerUtil.newArrayList(); for (VirtualFile file : bridgeSupport.getChildren()) { final String name = file.getNameWithoutExtension(); if (RubyMotionUtil.getInstance().isIgnoredFrameworkName(name)) continue; if ("bridgesupport".equals(file.getExtension()) && file.getLength() > 0) { boolean isOSX = "osx".equals(file.getParent().getParent().getParent().getName()); frameworkInfos.add(new FrameworkInfo(name, version, isOSX, file.getPath())); } } myFrameworks.put(version, frameworkInfos); }
private synchronized void ensureFrameworksLoaded() { if (!myFrameworks.isEmpty()) { return; } VirtualFile rubyMotion = VirtualFileUtil.findFileBy(RubyMotionUtil.getInstance().getRubyMotionPath() + "/data/ios/"); rubyMotion = rubyMotion == null ? VirtualFileUtil.findFileBy( RubyMotionUtil.getInstance().getRubyMotionPath() + "/data/") : rubyMotion; loadSdks(rubyMotion); if (rubyMotion == null || !"ios".equals(rubyMotion.getName())) { return; } rubyMotion = VirtualFileUtil.findFileBy( RubyMotionUtil.getInstance().getRubyMotionPath() + "/data/android/"); loadSdks(rubyMotion); rubyMotion = VirtualFileUtil.findFileBy(RubyMotionUtil.getInstance().getRubyMotionPath() + "/data/osx/"); loadSdks(rubyMotion); }