List of usage examples for org.apache.commons.collections.map SingletonMap SingletonMap
public SingletonMap()
null
to null
. From source file:gtu._work.ui.DirectoryCompareUI.java
/** * TODO//from w w w . ja va 2 s. co m */ private void totalScanFiles(EventObject event) { try { // ? final Map<String, Object> searchTextMap = new HashMap<String, Object>(); if (event != null && event.getSource() == searchText && // StringUtils.isNotBlank(searchText.getText()) && ((KeyEvent) event).getKeyCode() != 10)// { return; } else { String text = searchText.getText(); Matcher matcher = SEARCHTEXTPATTERN.matcher(text); if (matcher.matches()) { final String left = StringUtils.trim(matcher.group(1)); String operator = StringUtils.trim(matcher.group(2)); String condition = StringUtils.trim(matcher.group(3)); System.out.println("left = " + left); System.out.println("operator = " + operator); System.out.println("condition = " + condition); SearchTextEnum currentSearchType = null; for (SearchTextEnum e : SearchTextEnum.values()) { if (StringUtils.equals(e.name(), left)) { currentSearchType = e; break; } } Validate.notNull(currentSearchType, "??? : " + left); searchTextMap.put("currentSearchType", currentSearchType); searchTextMap.put("operator", operator); searchTextMap.put("condition", condition); } else if (event != null && event instanceof KeyEvent && ((KeyEvent) event).getKeyCode() == 10) { JCommonUtil._jOptionPane_showMessageDialog_error( "?:" + SEARCHTEXTPATTERN.pattern()); } } // ? final List<DiffMergeStatus> chkList = new ArrayList<DiffMergeStatus>(); A: for (DiffMergeStatus diff2 : DiffMergeStatus.values()) { for (int ii = 0; ii < diffMergeChkBox.length; ii++) { if (StringUtils.equals(diffMergeChkBox[ii].getText(), diff2.toString()) && diffMergeChkBox[ii].isSelected()) { chkList.add(diff2); continue A; } } } // ??? String extensionName = (String) extensionNameComboBox.getSelectedItem(); SingletonMap extensionNameMessageMap = new SingletonMap(); final SingletonMap extensionNameMap = new SingletonMap(); if (StringUtils.equals(EXTENSION_CUSTOM, extensionName)) { String result = JCommonUtil._jOptionPane_showInputDialog("???", EXTENSION_ALL); if (StringUtils.isNotBlank(result)) { String[] arry = result.split(",", -1); extensionNameMap.setValue(arry); extensionNameMessageMap.setValue(Arrays.toString(arry)); } else { extensionNameMap.setValue(new String[] { EXTENSION_ALL }); extensionNameMessageMap.setValue(EXTENSION_ALL); } } else { extensionNameMap.setValue(new String[] { extensionName }); extensionNameMessageMap.setValue(extensionName); } if (extensionNameCache == null) { extensionNameCache = new ExtensionNameCache(); extensionNameCache.extensionNameMap = extensionNameMap; extensionNameCache.extensionNameMessageMap = extensionNameMessageMap; } if (event != null && event.getSource() != extensionNameComboBox) { extensionNameMap.setValue(extensionNameCache.extensionNameMap.getValue()); extensionNameMessageMap.setValue(extensionNameCache.extensionNameMessageMap.getValue()); } FileSearch search = new FileSearch(DirectoryCompareUI.this) { @Override boolean isMatch(InfoObj infoObj) { boolean searchTextResult = true; if (searchTextMap.containsKey("currentSearchType") && searchTextMap.containsKey("operator") && searchTextMap.containsKey("condition")) { SearchTextEnum currentSearchType = (SearchTextEnum) searchTextMap.get("currentSearchType"); String operator = (String) searchTextMap.get("operator"); String condition = (String) searchTextMap.get("condition"); searchTextResult = currentSearchType.isMatch(infoObj, operator, condition); } boolean extensionNameResult = true; if (extensionNameMap.getValue() != null) { String[] extensionNameArray = (String[]) extensionNameMap.getValue(); if (StringUtils.indexOfAny(EXTENSION_ALL, extensionNameArray) == -1) { boolean findOk = false; for (String extension : extensionNameArray) { if ((infoObj.mainFile.isFile() && infoObj.mainFile.getName().toLowerCase().endsWith(extension)) || (infoObj.compareToFile.isFile() && infoObj.compareToFile.getName() .toLowerCase().endsWith(extension))) { findOk = true; break; } } if (!findOk) { extensionNameResult = false; } } } boolean chkListResult = chkList.contains(infoObj.status2); return chkListResult && extensionNameResult && searchTextResult; } }; search.execute(DirectoryCompareUI.this, // "?[?:" + StringUtils.defaultString(searchText.getText()) + "][??:" + extensionNameMessageMap.getValue() + "][:" + chkList + "]"); } catch (Exception ex) { JCommonUtil.handleException(ex, false); } }