summaryrefslogtreecommitdiff
path: root/xml
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2014-06-10 18:12:50 -0700
committerTor Norbye <tnorbye@google.com>2014-06-10 18:12:57 -0700
commit9ea67227e8fdcf8ed37e65bb96e32767291d0f4f (patch)
treeb9d56f49fde137a6098f7cec1aebeda51af705ef /xml
parentc667c1f74abd96a2098520effdd5afdff7f0d34b (diff)
downloadidea-9ea67227e8fdcf8ed37e65bb96e32767291d0f4f.tar.gz
Snapshot idea/138.538 from git://git.jetbrains.org/idea/community.git
a18cb3f: fix CCE d7d596e: Groovy: Remove extra spaces after deleted statements. So no extra line feed in Introduce Variable appears 25032fc: Groovy traits : abstract trait methods are not clashing acf850e: IDEA-126013 fix SOE : maps and lists declared recursively should not fail type inference into recursion 75e06bf: clashing trait methods inspection 7ae9c94: TypesUtil.getQualifiedName(type) should return qname even if type is not resolved beaa518: GrClassReferenceType.rawType() should return raw type even if type is not resolved 2e95615: Groovy: don't use type.getCanonicalText() to infer type qualified name since it can lead to inferring of type parameters and wasting time 08c6e63: Skipping Ant "After Compilation" task if compilation completed with errors (IDEA-125901) 1856d07: SoftWrapModelImpl refactoring. Mocking SoftWrapPainter to make tests platform-independent. 6246ee2: unlock under finally 9ab9a99: corrected 'contains' for library scopes for files from library sources 2e7fcc7: Merge remote-tracking branch 'origin/master' 5928bf7: Merge remote-tracking branch 'origin/master' 718a6a5: removed explicit virtual file inequality 08cab53: Fixed shebang formatting (PY-12775). 24be689: http://ea.jetbrains.com/browser/ea_problems/57321 bf4c84d: http://ea.jetbrains.com/browser/ea_problems/57321 65944db: Merge remote-tracking branch 'origin/master' 5106fdd: better name: reuseActivation -> reuseToolWindowActivation e1c9f77: Merge pull request 191 from suman-ganta for IDEA-123890 b66574a: Karma auto-rerun tests shouldn't activate Run toolwindow 56409a9: Karma auto-rerun tests shouldn't activate Run toolwindow every time 880a4db: added test for SurroundWithQuotesAnnotationParameterValueFix that checks that char '\n' replaces by "\n" correctly f6a393d: lambda: fix parameter types comparing order (IDEA-126056) ccdc69a: method references: avoid double substitution (IDEA-126062) e05cddc: JavaFx SceneBuilder b-14 fix c4e8b2c: Merge remote-tracking branch 'origin/master' 879c23d: PY-13210 Unused star import in Django settings.py a4351eb: platform: profiling actions overhauled 5ec97cf: IDEA-81568 (ignore FS events from /private unless asked explicitly) 236752e: unused library: use existing graph instead of custom dependency analysis 2a1a7c8: IDEA-126047 - Git Clouds: show commit dialog on deploy d05243d: prefer junit/testng pattern configuration: detect multiple selection directly by context component (IDEA-126045) 27f10a6: check to prevent contradicted intersection type (IDEA-67600) 046b90c: IDEA-114252 WebStorm clipboard history conflicts with external clipboard manager (ClipMenu) Fix native hangup (steps: periodical "Paste action" update() for toolbar button during Drag&Drop in AppCode UI Designer) 885a24d: don't even schedule excluded files for update upon before contents changed events 122cd32: check for invaild file de3bf99: optimisation: reduce instances of DirectoryScope created e2efe2e: cleanup 000bd7a: cleanup 68a5b6e: performance 732238f: performance 2f08301: check for type param numbers in java 1.6 should not rise error if super methods have type params (IDEA-57338) 598f921: testdata for IDEA-61415 6deb5bb: testdata for IDEA-65473 9853fb6: suspicious removeAll: compare type arguments, not qualifiers 1dc83a9: Added ability to pass command-line args to Gradle on project sync/refresh. e61c327: fix binary compatibility ef92f2f: fix binary compatibility 40875a7: fix binary compatibility 79d53fd: IDEA-118400 Update Project dialog redesigned, IDEA-106435 ability to perform only update, IDEA-75768 checks saved for Update dialog d218629: Remove 'zen coding' from emmet support configurable 150b674: HTML: ignore unknown filters 2fac634: @NotNull 99d5348: Emmet CSS completion 2989429: EA-57291 (severity reduced as the real reason is logged earlier) 491dc5f: contract inference initial bc12a14: extract contract checking to a separatate inspection 75c4257: MethodContract.createConstraintArray 109906e: WEB-12316 PhpStorm performing awful when typing in HTML zones in PHP files 91b7c69: check file on updateExecutionPoint 1591844: WEB-11678 JavaScript debug: step into and step over do not change the line ec43ad0: Merge remote-tracking branch 'origin/master' e58ce76: try unnecessary module dependencies to support exported dependencies a9c8a08: IDEA-125568 (possible NPE in some test setup paths fixed) 2fdb004: Merge remote-tracking branch 'origin/master' 39cc27d: suggest to restart IDEA if user accepted to enable/disable plugins from startup notification (IDEA-121369) 693bbf6: encapsulate fields: preserve comments inside (IDEA-124747) fcaa3e2: add java specific debugger settings into common settings node 1a3c6c6: code cleanup optimization: run inspections over exactly one element 4c3bda0: Get rid of direct "dispose" call 539f90a: WI-23626 Breakpoint muting does not disable after run. Regression from 7.1.3 to EAP 8. ffcf607: junit: accept custom matcher descriptions (IDEA-125942) de7387f: provide remove assignment fix for silly assignment inspection (IDEA-125993) 54e38ee: IDEA-121664 Search Everywhere: results from different categories appear mixed 99adcfd: EA-55292 (NPE fixed) a87bf9b: Unneeded exception dropped 128b05b: Merge remote-tracking branch 'origin/master' abc4ba7: GWT builder: test added f76fea5: test added 30fe2c4: invoke 'save' after 'mark root' action to update iml files immediately 9f6fa54: registering output-to-buildTarget mapping instead of output-to-source mapping to address cases when multiple sources compile into the same output (e.g. Kotlin) f06f5a6: Handle '@' symbol in ssh username c142a3c: OC-9609 [Refactoring: common approach for Non-DumbAware mode in folding] +review CR-OC-1561 e4dbc27: fix problem with extending sorted set by one and attempting to increase random access capacity in case of value removal aa0e217: use more detailed path to file only when opened file name is not unique (IDEA-125958) fe72975: Marking DuplicateIndex as PsiDependentIndex to attempt to avoid problems with unsaved document indexing being asynchronously committed (EA-36001) 22db3a8: get rid of RowSorters to fix a few exceptions. New Plugin UI has its own table header without swing's row sorters e5541c8: deprecation inspection uses default serialization 24077b1: push 'change method return type' fix down when variable is checked 65ec59f: icon decoration for external annotations (IDEA-39633) 8f10d71: option to warn about members in deprecated classes (IDEA-112084) 27ec65a: optimize imports under progress (IDEA-125761) 14d3780: Cleanup (formatting) e5fcad3: revert (java: minor optimization) f8e2be2: do not recreate breakpoint highlighter if not requested implicitly, this fixes jumping breakpoints on several quick line insertions 44fc624: sql: better varchar and varchar2 completion b5d09fe: getEqualityObject() fixed for JS debugger dc3bd73: call applyInformation for all EditorBoundPass for each editor 47336a6: cleanup 67c4e4b: calculate default inspection name by trimming Inspection or InspectionBase 4a0d396: notnull a3f3988: cleanup c8337a2: cleanup 8ad9eb1: moved long-running tests into performance suite 395ae29: expand javadoc on PSI validity 48c2fc4: special PIEAE handling for NULL_PSI_ELEMENT (its getUserData throws exceptions) f3fe82e: IDEA-114252 WebStorm clipboard history conflicts with external clipboard manager (ClipMenu) 3d7f7d2: IDEA-125820 DOM Generator: problem with XML element names matching default/generated imports CR-IC-5549 eadc889: build initial foldings in background (improvements as per CR-IC-5531) 350760c: rename: detect "field would hide local" conflict (IDEA-125934) 0de6aa9: move: do not convert classes to files before move 35005bc: IDEA-125947 not initialized final field should not be raised on any refs from inner classes 62f7acd: plugins: take into account already installed plugins during dependencies check (IDEA-123767) a673a47: softReference to cache known plugin extensions 3995088: update info: link to the product home page (IDEA-124023) aa9a7b1: move: filter out nested dirs/files on actionPerformed, update should be fast (IDEA-111413) e887cc3: Merge remote-tracking branch 'origin/master' 24c1fab: fix thread crash in debug console after syntax error (PY-12600) 49b602b: java: minor optimization f5f8124: java: helper method for Kotlin e674dd1: fixed PY-13177 PyCharm hangs on adding incorrect interpreter (python3-pyinotify) 5c41c76: Maven: manifest generation fixes - use ApplicationNamesInfo#getFullProductName for "Created-By" attribute value, redundant code removed d2752f1: invalidNames is a bit confusing, let's use existingNames; also small cleanup 7b282c4: lots of EA-57109 - PIEAE: LeafPsiElement.invalid. attempt 2. cf78c48: External System + Gradle: support for running a task before launch of another configuration added. Related issue for Gradle: IDEA-113437 'Before Launch' should support running a Gradle task 6396cd8: IDEA-125900 (resolve of synthetic enum methods in class files fixed) bb35b26: Cleanup (cached value manager instead of boilerplate) 6f417af: reuse LocalQuickFix because several instances can be handled badly c44d318: IDEA-104484 Console ExceptionFilters are added twice for debugging java app e67157d: IDEA-125470 While in editor, wild re-displaying occurs when soft wraps are enabled 2de7658: folding model implementation cleanup c7a1fbb: fixed NPE in debuggers that do not use value markers 159a46b: JavaRearranger: fixed field caching in case of multiple classes in java file (IDEA-123733) b3f67525: Added scope and file mask filter to reformat directory/project/module dialogs (IDEA-59850) [CR-IC-5534] c3a1eb8: Merge remote-tracking branch 'origin/master' 9d5429e: remove variable: do not leave tailing loops/ifs (IDEA-124489) d6c14fb: Delete LightLexerTestCase 83abbd0: fixing OOME in tests fd0acc2: temp disable 6520348e0292c4bb47389cb12926dc83826796e7 22c687d: Merge remote-tracking branch 'origin/master' 9102909: use goto.nonProjectScopeDisabler EP to show/hide 'include non-project files' checkbox 0dca1c3: use goto.nonProjectScopeDisabler EP to show/hide non-project items checkbox def9b6f: EP to disable using Non-project scope for IDEs where this doesn't make sence 6520348: lots of EA-57109 - PIEAE: LeafPsiElement.invalid 1ecc94f: don't set Darcula UI in search text field if it's already set 2357251: rollback NPE fix (found the real problem) f52fccd: Cleanup (optimization; formatting) 5d85b2b: spped search by value in debugger trees 7e5f8a2: fixed VM leak in debugger tree listener 8771d61: fixed VM leak in object marks b9abbfb: template ConstructorInsertHandler test (IDEA-101429) 6713978: start type template if at least object was inferred 8540bac: RefCountHolder: allow referenced files' ast to be gc-ed during highlighting 716aa5a: generate name for save scheme dialog c86e3af: external annotation change should drop all psi cachedValues ae0bd0f: cleanup 26af3f5: implement equals and hashCode to make two LocalQuickFix instances equal if they refer to one and the same IntentionAction 0ade045: IDEA-125645 On breakpoint hit, opens file in new tab in "active" split -- even if file is already open in tab in "inactive" split 1881ceb: test — auto expressions: filter out expression contained unresolved local variable 3677585: IDEA-103523 MethodMayBeStaticInspection replace qualified usages by class name (reused MakeMethodStaticProcessor) 89905f6: don't hold reference to PsiFile 83bc4af: move AddSpaceInsertHandler.java to lang-impl 769a599: WEB-12348 Quick fixes not always working in Inspection window 18b220c: IDEA-90008 (editor files are refreshed elsewhere, no need to watch) 894818e: Cleanup (deprecated code dropped) aba3f2f: CreateSwitchIntention removed all operations with Document to exclude possible problems 4c6818a: removed from IdeaPlugin SurroundWithQoutesIntention 044671d: Merge remote-tracking branch 'origin/master' a109c22: IDEA-121370 Failed Gradle task doesn't block the dependent run configurations fbf4eb5: Merge remote-tracking branch 'origin/master' 89f5018: imports optimized baa6389: SurroundWithQuotesAnnotationParameter: intention replaced by quick fix to the corresponding error 5f7a426: no later runnable for anonymous class creation template 05d13a3: Get rid of needless filtering a8660f4: use "OS user" term cb71334: fix NPE on linux 930235e: notnull and remove unused field c7cd901: notnull 83d5484: Color & Fonts panel: generate new name when copy 6cc553f: cleanup fa4e0deb: remove unused class e291480: correct checking read-only status for CreateSwitchIntention cdd07a4: CreateSwitchIntention checks language level and that file is witable 11adc57: Cleanup (warning; unneeded reflection) b6b5bbd: start template when anonymous class is completed with Object params (need better heuristic) f9a561c: enable change type signature for anonymous classes d645cf9: optimize icon b393a47: IDEA-125825 Surround with quotes annotation parameter value intention f5f2f31: IDEA-99541 New run configuration type to run Ant Return back ProcessHandler.waitFor() for standard task execution (not Run Configuration) 4112da6: IDEA-125872 (avoid resetting mod. stamp) 4b93641: fix html parsing (big thanks to cdr) 0b6b37c: notnull 4ffddd7: IDEA-125829 ClassInheritorSearch should find traits 2fe5331: fix compilation 9ddfbc8: IDEA-125730 Declare explicit type: broken template should revert all its changes and move the caret back to the original position. 8f5e205: IDEA-125759 correct assert check 59aef31: IDEA-125781 ReadAction in GroovyTraitFieldSearcher d946471: IDEA-125730 correct item order in ChooseTypeExpression 9c99488: JS debugger in Chrome: support breakpoint conditions, better support for 'log evaluated expression', non-strict column number comparison 6b9f4a4: goto related localizations for properties files 3c06c05: fixed truncated object id ee5bba7: ResourceBundleEditor: subeditors without virtual spaces (part of IDEA-85572) 9e358f4: CR-IC-5505 (cleanup) 69b649e: Offer to launch vagrant on skeletons generation in popup balloon. 82b7f75: Merge remote-tracking branch 'origin/master' 86ada28: Don't show modal dialog about vagrant start from packages list (PY-12838). af40fe8: DataPointHolderConversionIntention not supports fields without initializer for conflicts escapings 0455ae8: NPE 02ca2bd: PsiBundle: fix typo in bundle name, cleanup cc8d259: don't cache language level in JavaDirectoryService 60cbfb0: allow to create java classes named pkg.Class (IDEA-125442, CR-IC-5537) b673277: ensure canonical module order in CE modules.xml 1388cfb: BaseElementAtCaretIntentionAction extends BaseElementAtCaretIntentionAction a777074: IDEA-125558 new debugger: double result in evaluate expression - updated fix add5377: reverted fix for IDEA-125558 5ad334b: AddJavadocIntention moved to "Declaration" category b4f899b: notnull dd53334: allow com.intellij.openapi.roots.impl.ModuleRootManagerImpl#getFileIndex to work in upsource a28c2f4: register ExternalResourceManagerExImpl 9aa5346: EA-53941 - assert: FileManagerImpl.getCachedPsiFile 3b946e3: Merge remote-tracking branch 'origin/master' 62eeced: show notification if power save mode is on on startup (IDEA-125847) d13982b: most specific: do not start java 8 algorithm for provided type args (IDEA-125855) 12a99d8: virtual array by selection rule (IDEA-125862) 610b0ba: IDEA-125820 DOM Generator: problem with XML element names matching default/generated imports 80199b4: DBE-19 0xDBE: edit description at Settings / Passwords 85c5cf1: Merge remote-tracking branch 'origin/master' 3efe19e: added help id for evaluate dialog 8456e04: IDEA-123787 "No live templates selected" label in multiple selection 9ce90b8: IDEA-124362 No scrollbar in Settings | Code Style | General c04939b: auto expressions: don't compute for nested values 56917b3: make it by default and look at the performance f30498b: Merge remote-tracking branch 'origin/master' adae926: Don't ask to start Vagrant in a modal dialog on skeleton generation (PY-12838). 1315295: watches in tasks 57f4bbf: IDEA-125462 Unable to execute simple platform test with IDEA Ultimate Plugin SDK 9a56986: do not evaluate values twice b7b995b: IDEA-54137 All alarms in RBE deleted. Save to file on focus change c3b697a: IDEA-39879 Background color and gutter stripe color for bookmarks should be configurable b893466: close editors only 08d3b73: NPE fixed 37cb86b6: fixed Color object icon renderer a1ecb55: fixed switching multiple suspended threads in java 0c7e893: correctly load old enabled state of debugger expressions 6847fc3: IDEA-119364 (not introduces case statements for enum) 673d730: wrong shortcut suggested in goto test popup (IDEA-125857) 6a73a71: IDEA-108141 reused code of FixDocCommentAction d03289c: IDEA-85274 Tasks: the detached editors are not affected by context change a375d1e: java: correct stub for enums compiled by Groovy c4edd41: aware of debugger communication error on break event fd6ccfc: IDEA-125678 ConvertInterfaceToClassIntention.moveExtendsToImplements improved 0b0873d: IDEA-58422 implemented in IPP ef6b09a: more possible reasons for non-physical file invalidation 745c9b0: IDEA-68916 "Zoom" for Mac OS 5372371: cleanup c1810c1: cleanup 24cc395: Merge remote-tracking branch 'origin/master' fd72f3e: javac 6 workaround (from IDEA-16723) 19af1ec: refactoring (following CR-IC-5531) 784512b: enum constants access inside enum constant initializers fixed (IDEA-125816) b1b3b1d: accept intersection types in foreach stmts (IDEA-125800) f1d927b: Mac: add app-title if project-title is empty 08f4caf: fix sorting 4559c7f: IDEA-123189 Project wizard: tree entries text cutoff 90bd11d: javadoc 6a6fa53: cleanup b8be4e2: IDEA-125805 (language level increase quickfix for switch on enum/string) 75a492a: Cleanup (less repeated checks; less parameter pinballing) b159632: testdata for IDEA-57388 656ce72: testdata for IDEA-67578 88a9ace: old inference: take only EQUALS bounds from sibling param (IDEA-119757) dc3b3a9: try 'generate missed tests' without names check (IDEA-125818) 1dfcabe: javadoc fix 9b09325: moved to psi, register more services f3cc359: register find usage providers a0f8840: moved to psi 25fe38e: javadoc fix 6f7574c: dfa: invalid type diagnostics (IDEA-125179) c9dff24: don't advertise Quick Definition when completion doesn't contain psi items (IDEA-87208) 43c06cfc: always use forward slashes in copy reference (IDEA-125292) 3dd0451: IDEA-125442 Strip .java from classname when creating new class 571196f: IDEA-125749 Create New Class Dialog - Pressing 'e' in Kind selects 'Interface' instead of 'Enum' 7a71a4d: External system: code cleanup a635296: fix popup width jumping 9ea2438: IDEA-125609 - Built-in Git SSH executable ignores IDEA http proxy settings f894389: IDEA-122962 - Clouds: perform connection test in background - auto-reload in CloudFoundry run configuration 494fbfe: renamed and more factories 309e1b1: provide empty quick fix factories for upsource b78b8d0: initialize and register stub serializers da59ab8: IDEA-125498 Search Everywhere: sometimes after navigation the list of search results reappears in the left corner of the screen 6549903: External System: IDEA-123031 Import sources and docs for module level libraries b8d02c9: isValid c59fbba: Reimplement parameter info test 50e11e6: fixed PY-13150 Pyramid run configuration fails when specifing '--reload' in additional option 320ecac: IDEA-39879 Background color and gutter stripe color for bookmarks should be configurable ab780e0: WEB-12346 Watches pane: Adding/removing variable not possible when dragged out 4cdca43: Merge remote-tracking branch 'origin/master' 347094c: Merge remote-tracking branch 'origin/master' b75e6ed: fixed tests ae2b6c6: testdata fixed 37b352f: changelist preselection for file fixed and refactored 982e039: fix rendering issues 4dbfccf: registry ui improvements 16ce85a: notnull 4568663: IDEA-114011 Github: work with HTTP, not only with HTTPS 8cb550e: ExternalResourceManagerImpl inlined, moved to psi ecff152: moved to core 2ff189c: removed "new in" which are not that new anymore 8787917: toString 6afd4f4: build initial foldings in background 9a121b2: EA-57104 - assert: PsiFileImpl.navigate 1080da4: IDEA-77640 Warn if the current subscription license will not work with the new version in the Update Info dialog 478fc87: test fixes and code unification fda1430: update inspection and quickfix 287c944: OC-9609 [Java doc only] +review CR-OC-1561 71594cc: OC-9609 broken based on AST-tree folding at project opening +review CR-OC-1561 80ea2b9: better name for static method newOne -> of b97e528: suppress contract validation for wrong Logger.assertTrue 5d8ee45: IDEA-112222 Validate @Contract annotation is related to the code b09762d: cache properties files by bundle name and module f25f58e: fix invalid PsiTreeUtil contract 97e0bde: remove unused VfsUtil.virtualToIFile 1f4d0df: notify BuildManager only if file events affect opened and watched projects (second part of IDEA-122685) c503439: quickfix for IDEA-125710 (Wrong selection behavior in file history window) 5318e0e: fix assertion / comments / better transformation policy of array of changes / sorted ints into bit set edeb5d2: testdata for IDEA-57290 b1b3964: testdata for IDEA-58692 af3e413: testdata for IDEA-24496 ae57176: provide 'place' language level for convertible check to allow types from old libraries to be casted to primitives (IDEA-117684) 2f6d5c9: testdata for IDEA-118362 f55b7ff: equality asymmetry fixed (IDEA-118533) fdcb20b: type distinct prover asymmetry fixed (IDEA-118533) 6b5c924: suspicious collections call: process removeAll (IDEA-108755) e9e9523: IDEA-125414 DB keys/indices to columns navigation 756b77b: accumulate index changes into array and convert it into bitset as needed 29f2788: track index info when encountering duplicated inputId 5803a5f: to Peter: addAll for emptySet doesn't work 61dbfe9: Merge remote-tracking branch 'origin/master' 95bc1fb: some more @MagicConstant c3c31bd: EA-57052 - assert: MasterKeyPasswordSafe.decryptPassword e761dd8: @NotNull'ed for EA-56831 - NPE: RemoteProcessSupport.release 9463bb3: Merge remote-tracking branch 'origin/master' ff49bd1: use VirtualFile.nameSequence for isProjectOrWorkspaceFile check 248d752: restore classes merge with fix of foreach processing fedbba7: Merge remote-tracking branch 'origin/master' a494959: WeakReference objects used for vfile->document mapping should not stay in memory forever 8110e0b: less allocations in FileBasedIndexImpl.getUnsavedDocuments 180df2c: completion: don't suggest true/false literals where boolean is not expected 76939c8: restore query mismatch inspection fffde12: new inference: mark erased for type params/raw types compatibility (IDEA-122932) a2615d0: new inference: accept raw equality 67daae0: leave capture during bound composition of unbounded wildcards (IDEA-125423) 01c9bba: old inference: ignore java 1.6 bug in new versions (IDEA-125744) b7ab465: old inference: choose child type between types in subtypes constraint (IDEA-118536) d311a4e: perform target.findUsages() if no psi found 98302cc: IDEA-125186 Shorten reference with an import even if there is a conflicting class from Groovy default packages d47756d: show initial value only for strings and primitive types 13986db: IDEA-125693 Creating a project in dir '~/Desktop/test' creates the project in the dir '/Applications/IntelliJ IDEA 13 CE.app/bin/test' ae7d190: NPE when using from UML 530189b: a little bit smarter methods matching 8150b8b: IDEA-125566 Start From Scratch: can't close Customize IDEA dialog ab7b2a0: IDEA-122962 - Clouds: perform connection test in background - auto-reload in frameworks 1a7ab39: restore (wrong) Logger.assertTrue contracts c12b68d: dumb-aware error dropping actions ac9d1e8: get java language level from the root model when pushers haven't finished yet bd93483: IDEA-125565 Start from Scratch: Customize IDEA dialog: UI Themes page looks bad on Linux 6ea44e9: Gradle: use module library level for local dependencies, update library name to contain groupId 7d4dae9: IDEA-125565 Start from Scratch: Customize IDEA dialog: UI Themes page looks bad on Linux fb173cc: IDEA-124461 New Module (Maven, Gradle) created in Empty project don't get the specified jdk be064c3: cleanup 89dc105: show mark for a stack frame executing a method from marked object f48b9fa: Merge remote-tracking branch 'origin/master' c4dc543: IDEA-125745 Controls on breakpoints dialog resize differently a105b5b: IDEA-125736 new debugger: disabled all exceptions breakpoint stops at every exception even in mute mode 5fd6a23: IDEA-124082 default changelist for Commit dialog fixed when 'commit directory' called 3a9e539: IDEA-124347 Master Password prompt strategy changed for mercurial authentication 74d52dd: introduce CvsFilePath to prevent public api changes a489967: fix typo f2c14b5: Start plugins wizard #30 for Mac OS X should be "native" keymap by default a16bfe6: External-system: IDEA-124927 Don't refresh projects on opening when auto-import is disabled 78ee0a2: IDEA-125551 Start From Scratch: Customize IDEA dialog: JBoss plugin should not appear in JavaFrameworks group e276bfa: unregistering obsolete service components fbb0f39: jasper validation tests: fixes and cleanup 0d5f295: clean up: - replaced 2 usages isAssociated method from ValueContainer with getValueAssociationPredicate() delegation - rewrote serialization of input ids to be independent from concrete input id set implementation via usage of int iterator - inlined saveInvalidateCommand in ValueContainermpl and added comments 7321069: ad text in 'go to' actions b57a8ca: get python language level from the root model when pushers haven't finished yet a30a74e8: fix dfa contract believing that nullable is always null 9c29b95: fix dfa contract IOOBE with varargs 31be027: relax time in MessageBusTest.testPostingPerformanceWithLowListenerDensityInHierarchy 4955009: remove mostly non-useful Integer.valueOf completion suggestions 41b974e: anonym -> lambda: disable if target SAM type is raw and methods are called on params with Object erasure (IDEA-125613) 032faad: EIAE 2f4d4fb: register container provider ba6e884: initialize file types 2f3db6a: UOE 73bfc96: NPE 3a8647f: reverted changes blocking inner classes in libraries to work b66623a: do not fail position manager if assert happened in one of the providers 6dc93a1: skip binary files earlier, no need to get psi for that 91f7c25: do not scan all files when trigram index is available 7d81587: register extension points 4489140: -contributor 5fe5352: rw detector 707e584: IDEA-125649 6a28780: notnull a7d14fe: IDEA-107588 (Mismatched query and update of collection - include Collections.addAll()) 39d4dfb: fix 'as Trait' result type b1e9f66: EA-57003 - NPE: WatchInplaceEditor.doOKAction 2d0aa2a: BlockMarkerCommentsInspection changes after review 98954e2: EA-57004 - NPE: XBreakpointManagerImpl.createBreakpointDefaults 3b09eea: fix compilation 40f7150: low priority 'create getters/setters' quickfixes a34a01d: duplicated code c6d539f: disable assert for Groovy clients 7459b0b: cleanup f008f98: IDEA-125584 Groovy: NPE at org.jetbrains.plugins.groovy.annotator.intentions.CreateMethodFromUsageFix.invokeImpl 93d7ac9: IDEA-125576 Groovy: 'Create trait' could be added to 'Create From Usage' 6975411: get rid of 'public' keyword in templates 53fbe15: IDEA-125556 New Groovy class dialog contains trait option IDEA-125577 new icons for Groovy traits 90ec82d: more diagnostics for gdsl scripts 60c7d6f: EA-57072 - IOOBE: EditorImpl.offsetToLogicalLine 5801886: External-system: IDEA-124927 Don't refresh projects on opening when auto-import is disabled 2b0a1b9: One more condition for go to actions history 3ab65e6: (EA-55107) case with empty parents in history fixed d67e9b4: IDEA-118279 create constructor params: apply cleanup 11d1e29: one test rewritten in Kotlin 9b3b90d: EA-56987 - NPE: DebuggerTreeNodeImpl.updateCaches 91005a8: added a separator above annotate action 32874b1: renamed to PropertiesPlugin.xml to avoid conflict inside upsource jar 05191a3: renamed to GroovyPlugin.xml to avoid conflict inside upsource jar 08caf4f: add to watches action should work from evaluate and inspect d85d443: more moves to groovy-psi fadd451: moved properties to properties-psi b9fa2ab: register folding builder in env ab8b582: moved to psi c1da4f3: moved away from openapi 4bf725a: moved away from java-impl 41f2d2c: moved to core 5366e96: moved to psi cf298fc: ensure editor is released in EDT 5b09e28: EA-57008 (pair was good enough) 1144d7b: extend java-class instead of groovy-class (to migrate to Kotlin) 3b85f7c: removing obsolete extension point 7ac28ba: remove outdated action id 53ddc21: Simplify condition in go to actions history 2807e38: rerun failed: include concrete class if containing is abstract (IDEA-125425) 9758f97: return inside finally: stop at lambda (IDEA-125605) b90111f: more reliable keeping of reference on stack (following CR-IC-5487) 203d7fb: remove unused code 75c7630: cleanup dc11403: cleanup 9d2b9ae: maven compiler tests to use external compiler only ff05505: standalone jps updated: load path variables specified in gant scripts 05c2f31: history for go to actions, initial 0918150: combine two classes into one to reduce duplication 806c8d2: more accurate collection query detection for method references 19bf6b9: add "stream" and "parallelStream" query names c0a470f: EA-57015 - SOE: AbstractTreeUi.access$ 48a01b0: add common actions to all variable views 0529ff5: NPE if a previous focus owner is null. d27fd1e: plugin updater: accept older plugin versions for broken plugins (IDEA-125646) eeca5a8: search for package everywhere again (IDEA-125688) 04a7434: EA-56966 - IAE: XRegularValuePresentation.<init> f1b4acc: Enabling dialog based implementation because of always on top regression. 5ef4a59: fixing java compilers configuration UI 7322427: EA-56894 - AIOOBE: AppCodeDesignerEditor.findModule - for AppCode designer module don't needed 05e2292: IDEA-125684 appearance of JTextField component in disabled state 4660916: IDEA-125500 Terminal is not locale aware e3c14f5: following review CR-IC-5487 80a7f69: IDEA-25183 80eba2a: IDEA-42954 Watches are not saved on restart of debug sessions d174c22: refactoring - following review #525 535844a: IDEA-104441 Wrong auto-completion of closed XML tags: handling unbalanced xml psi 220964b: BlockMarkerCommentInspection moved to java-analysis-impl 6c6a682: Shortcut Promoter initial dff9280: IDEA-93040 622c1df: NPE 8f1d011: reverted 31d0a47: moved to analysis a518606: moved to psi e0d0ffd: moved to core 282862d: moved to core 1ccdeb0: more moved to psi 5d21da5: added equals to LocalsControlFlowPolicy, notnull 15ecfbd: deleting old make implementation fa243c5: IdePlugin fixed 0427d8e: change default action 487d93d: remove useless source roots b5fb0b6: IDEA-100200 - Clouds: deployment to clouds ignores the http proxy settings - CloudBees cef9a6c: IDEA-71997 05b1763: deleting old make implementation 29b98db: deleting old make implementation f723b07: Tips added (PY-12484). de95451: Merge remote-tracking branch 'origin/master' 2d108ef: Tips updated (PY-12982). cc4b248: java: parsing of complex bounds in stub signatures fixed 66d70ab: Cleanup (unneeded concatenation) 259d59a: added dependency from devkit module to its jps-plugin cff9f70: JPS: added method to process modules and libraries in order 36e275f: Gradle: handling of project build classpath resolving errors related issues: http://youtrack.jetbrains.com/issue/IDEA-125592 http://youtrack.jetbrains.com/issue/IDEA-124839 6e512d0: [ review #701 ] introduce field where required to avoid multiple objects creation 98edcf4: Ruby highlighting lexer refactored for upsource core environment bbb4d67: removed jsf-iml c8b081a: DevKit: Goto EP declaration in plugin.xml (IDEA-86100) CR-IC-5473 c96948d: show initial value in "set value" editor 758adbb: make sure document reference is cached reliably 19cd6d5: show progress for editors opening 311406c: select only required editor in window 68aadaf: init foldings for all opened editors (otherwise saved folding state will not be restored for them) c0511af: remove dead code e5708cd: open editors in EDT ffcd49d: IDEA-41226 Reference debugger-marked objects in expressions 0034f61: Merge remote-tracking branch 'origin/master' a7e0137: externalization: suppress unused to .xml compatibility 0f8912f: enforce string copying (trim substring() result for java 6) 152503a: new exception creation without args: completely ignore exceptions with only no param constructor (IDEA-125660) d64d714: customizations: check group is included in correct root group; allow to invoke moved action group, e.g. Create Run Configurations group (IDEA-125484) aaa01e4: fix module leaks via CompilerTester 1551266: Added output folders to ModuleExtendedModel. 9874668: IDEA-104441 Wrong auto-completion of closed XML tags b71fe91: simplification & cleanup postfix templates 9835800: Maven: plexus-archiver lib added to licenses a7aa0df: lambda: extract parameters incompatibility check 0fac1ec: Merge remote-tracking branch 'origin/master' 5eeea43: PY-13084 Variables passed to url kwargs are not suggested to template 8a3ad93: hide lang-api refactoring actions if no handlers present 86d0ff8: Merge branch 'fix4' of https://github.com/krasa/intellij-community into fix4 6b46fcf: dfa: contracts validation should not exclude notnull validation 0212832: Better comments 463a90c: force check for update on exception from non-bundled plugin 4e95814: nullify: to run on pooled thread without progress 90b27a4: IDEA-122929 Hg: remove unrelated urls paths from pull/push dialog. e2e243b: CompositeFilter#forceUseAllFilters=false by default to restore previous behaviour Deprecated public fields in Filter#Result and getters to give warning about possible danger aa83182: Merge branch 'python-fixes' a9aaf0c: Maven: fix artifact layouts tests for added generated manifest.mf a1d93e0: Use union of types of members as iteration type for tuples 06a130f: Interpret tuple default parameter value as a weak type (PY-10967) 24b18f8: IDEA-119804 second click on item in watches panel should toggle edit mode a479d46: IDEA-81789 Expression Evaluation goes crazy when multiline expression is inserted 3f1d913: Merge remote-tracking branch 'origin/master' 1b010d0: PY-12981 django apps don't resolve when INSTALLED_APPS is set with '+=' 846b42a: Nullity annotations and explicit TypeEvalContext for PyUnionType.excludeNull() 5352177: IDEA-97915 Mercurial incoming/outgoing widgets updated e618345: EA-51820 check that root from mappings is a valid vcs root 2f5f8f9: IDEA-122562 - Warning from SettingsEditor#applyEditorTo prevents runconfig editor from closing 12272ec: cosmetic: "Remember on disk" -> "Save on disk" in all places ef5ae1c: ensure rename is performed inside project only, do not search for a package inside libraries! 0dd4ead: generate missed tests intention (IDEA-90247; IDEA-122790) 8ee7f6d: ignore setup/teardown generation when methods already exist and additional methods are not expected dc043ce: IDEA-121972 - Map help button of the Clouds page 71f507b: Cleanup 2322568: Don't suggest Python live templates inside parameter list (PY-12395) 9b96bc0: common style for expressions f9685fd: Don't suggest Python live templates in string literals (PY-12349) a554bba: Don't suggest Python live templates in comments (PY-13076) 511b7db: IDEA-125624 Run tool window does not have deployments list in debug mode 73dce39: Use 'Python' context for 'super' live template (PY-13080) 8e0bbd5: cover with tests ce036b5: IDEA-125129 I would like to reopen IDEA-117698: regression fixed 2475299: IDEA-61480 DocBook5: complains about xlink:href in <link> 2fd7151: IDEA-125557 Start From Scratch: on Darcula selecting as UI Theme in the Customize IDEA wisard it is applied incorrectly fa9f7fe: Fixed messy usage of colons in the Breakpoints window 6b7841e: format f3c2fa2: IDEA-117949 Xml editor doesn't treat xml namespace correctly 08c14cb: Cleanup (optimization) 298bf22: Cleanup (formatting) c026ff3: java: missing deprecated attribute on inner classes fixed 301b5e7: java: injected methods excluded from enum stub 06f261c: Maven: artifact's manifest generation support related issues: http://youtrack.jetbrains.com/issue/IDEA-82725 http://youtrack.jetbrains.com/issue/IDEA-91497 http://youtrack.jetbrains.com/issue/IDEA-47990 1913bdc: IDEA-119640 Problem with goto declaration of XML attribute defined in XSD: re-fixed, completion fixed ee89d4f: cleanup 560924a: Merge remote-tracking branch 'origin/master' 80dbfb5: byte code viewer in same colors as editor 7fea4ff: fix failing tests: OverrideImplementTest.testEnumConstant ImplementMethodsTest.runSingle(EnumConstantWithoutClassInitializer.java) 590e025: add example to postfix templates tree 9457946: cleanup 9307a77: better colors for ctrl + shift + a Change-Id: I63f543234051b4bfd5588e9307dad56cdff7aa1b
Diffstat (limited to 'xml')
-rw-r--r--xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconBuilder.java6
-rw-r--r--xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconRenderer.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/DomDocumentationProvider.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/DomNameSuggestionProvider.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/DomUsageTypeProvider.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/ElementPresentationManagerImpl.java4
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/EnumConverter.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/ModelMergerImpl.java30
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomCollectionProblemDescriptorImpl.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementAnnotationHolderImpl.java11
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementProblemDescriptorImpl.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptorImpl.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsErrorPanel.java14
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsHighlightingUtil.java2
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsProblemsHolderImpl.java15
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/DomHighlightingHelperImpl.java13
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/MockAnnotatingDomInspection.java6
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/highlighting/MockDomInspection.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/AbstractDomChildDescriptionImpl.java10
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/AddChildInvocation.java1
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/AddToCompositeCollectionInvocation.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildDescriptionImpl.java6
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildInvocationHandler.java15
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/CollectionChildDescriptionImpl.java12
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/CollectionElementInvocationHandler.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/ConvertAnnotationImpl.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextFactory.java1
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextImpl.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/ConverterManagerImpl.java4
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/CustomDomChildrenDescriptionImpl.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomAnnotator.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetDescriptionProvider.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetIconProvider.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomAnchorImpl.java8
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomApplicationComponent.java4
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomChildDescriptionImpl.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomDeclarationSearcher.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomDescriptorProvider.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomElementsNavigationManagerImpl.java8
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomFileElementImpl.java56
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomGenericInfoEx.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomImplUtil.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java38
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomManagerImpl.java29
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomMetaDataContributor.java4
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomReferenceContributor.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomRootInvocationHandler.java10
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomSemContributor.java10
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomServiceImpl.java11
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomTemplateRunnerImpl.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DynamicGenericInfo.java20
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/FileDescriptionCachedValueProvider.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/FixedChildDescriptionImpl.java6
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/GenericDomValueReference.java10
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java2
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/GetAttributeChildInvocation.java1
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/GetCollectionChildInvocation.java1
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/GetCompositeCollectionInvocation.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/GetFixedChildInvocation.java1
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/ImplementationClassCache.java2
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/IndexedElementInvocationHandler.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/InvocationCache.java15
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/MockDomFileDescription.java6
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/PhysicalDomParentStrategy.java8
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/PropertyAccessorInvocation.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/RootDomParentStrategy.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/SetInvocation.java1
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/StableInvocationHandler.java6
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfo.java22
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfoBuilder.java1
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/VirtualDomParentStrategy.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/model/gotosymbol/GoToSymbolProvider.java11
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionImpl.java9
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionsRegistrarImpl.java7
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/structure/DomStructureTreeElement.java10
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/stubs/DomStub.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/stubs/ElementStub.java3
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddDomElementActionGroup.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddElementInCollectionAction.java17
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/tree/actions/BaseDomTreeAction.java4
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/tree/actions/DeleteDomElement.java5
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/tree/actions/DomElementsToggleAction.java8
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/tree/actions/GotoDomElementDeclarationAction.java15
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/ui/DomUIFactoryImpl.java19
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/ui/EditorTextFieldControl.java18
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/ui/TextControl.java8
-rw-r--r--xml/dom-impl/src/com/intellij/xml/impl/dom/AbstractDomChildrenDescriptor.java20
-rw-r--r--xml/dom-impl/src/com/intellij/xml/impl/dom/DomAttributeXmlDescriptor.java16
-rw-r--r--xml/dom-impl/src/com/intellij/xml/impl/dom/DomElementXmlDescriptor.java21
-rw-r--r--xml/dom-openapi/src/com/intellij/patterns/DomElementPattern.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/patterns/DomPatterns.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/patterns/GenericDomValuePattern.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/AbstractConvertContext.java10
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/Converter.java7
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DomFileDescription.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DomIconProvider.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DomMetaData.java10
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DomResolveConverter.java10
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DomService.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DomTarget.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DomUtil.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/DummyEvaluatedXmlName.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ElementPresentationManager.java10
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/EvaluatedXmlNameImpl.java8
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/GenericDomValue.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/GenericValueUtil.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/HyphenNameStrategy.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/JavaMethod.java1
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/JavaNameStrategy.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/MergingFileDescription.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ModelMergerUtil.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ModuleContentRootSearchScope.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/NamedEnumUtil.java2
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ParentScopeProvider.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ResolvingConverter.java13
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/RootScopeProvider.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/TypeChooserManager.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/WrappingConverter.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/XmlName.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/actions/generate/AbstractDomGenerateProvider.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/actions/generate/DefaultGenerateElementProvider.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/converters/DelimitedListConverter.java10
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/converters/PathReferenceConverter.java18
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/converters/values/BooleanValueConverter.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/converters/values/CharacterValueConverter.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/converters/values/NumberValueConverter.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/highlighting/AddDomElementQuickFix.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/highlighting/BasicDomElementsInspection.java1
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptor.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementsInspection.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/highlighting/RemoveDomElementQuickFix.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/highlighting/ResolvingElementQuickFix.java14
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/model/DomModelCache.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/model/impl/BaseDomModelFactory.java15
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedMultipleDomModelFactory.java7
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedSimpleDomModelFactory.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelFactory.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelImpl.java7
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/model/impl/SimpleDomModelFactory.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/reflect/DomFixedChildDescription.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/tree/AbstractDomElementNode.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/tree/BaseDomElementNode.java12
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/tree/DomElementsGroupNode.java9
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/tree/DomFileElementNode.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeStructure.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeView.java9
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/tree/GenericValueNode.java8
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractDomElementComponent.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractTableView.java11
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/BaseControl.java16
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/BaseModifiableControl.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/BasicDomElementComponent.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/BigStringComponent.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanColumnInfo.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanControl.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanEnumControl.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/CaptionComponent.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/ChildGenericValueColumnInfo.java7
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/ComboControl.java23
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/ComboTableCellEditor.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/CommitAdapter.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/CommitablePanelUserActivityListener.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/CompositeCommittable.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java35
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionWrapper.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomColumnInfo.java4
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomFileEditor.java18
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomFixedWrapper.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomStringWrapper.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomTableView.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomUIFactory.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/DomUINavigationProvider.java5
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/ErrorableTableCellRenderer.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/GenericValueColumnInfo.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/MockDomElementsEditor.java10
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/StringColumnInfo.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/StripeTableCellRenderer.java3
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/UndoHelper.java7
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/actions/AddDomElementAction.java6
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/actions/DefaultAddAction.java7
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementAction.java8
-rw-r--r--xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementProvider.java3
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/DomBasicsTest.java4
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/DomChildrenTest.java4
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/DomConcurrencyStressTest.java4
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/DomExtensionsTest.java5
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/DomIncludesTest.java12
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/DomSaxParserTest.java17
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/ProxyTest.java1
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/impl/IncrementalUpdateEventsTest.java3
-rw-r--r--xml/dom-tests/tests/com/intellij/util/xml/impl/TreeIncrementalUpdateTest.java8
-rw-r--r--xml/impl/src/com/intellij/application/options/CodeStyleHtmlPanel.java19
-rw-r--r--xml/impl/src/com/intellij/application/options/CodeStyleXmlPanel.java16
-rw-r--r--xml/impl/src/com/intellij/application/options/HtmlCodeStyleMainPanel.java4
-rw-r--r--xml/impl/src/com/intellij/application/options/HtmlCodeStyleSettingsProvider.java5
-rw-r--r--xml/impl/src/com/intellij/application/options/TagListDialog.java4
-rw-r--r--xml/impl/src/com/intellij/application/options/XmlAutoImportOptionsProvider.java7
-rw-r--r--xml/impl/src/com/intellij/application/options/XmlCodeStyleSettingsProvider.java5
-rw-r--r--xml/impl/src/com/intellij/application/options/XmlSettings.java6
-rw-r--r--xml/impl/src/com/intellij/application/options/editor/WebEditorOptionsProvider.java9
-rw-r--r--xml/impl/src/com/intellij/codeInsight/actions/GenerateDTDAction.java9
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/DtdCompletionData.java8
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/ExtendedTagInsertHandler.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/XHtmlCompletionData.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/XmlAttributeInsertHandler.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/XmlCharFilter.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionContributor.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionData.java8
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/XmlSmartEnterProcessor.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/completion/XmlTagInsertHandler.java7
-rw-r--r--xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/AddSchemaPrefixIntention.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/InsertRequiredAttributeFix.java2
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/DtdSelectioner.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/EnterBetweenXmlTagsHandler.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/HtmlQuoteHandler.java8
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/HtmlSelectioner.java2
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlBasicWordSelectionFilter.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlCDATAContentSelectioner.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlCopyPastePreProcessor.java11
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlElementSelectioner.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlEqTypedHandler.java2
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlGtTypedHandler.java57
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlLineSelectioner.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlQuoteHandler.java6
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlSlashTypedHandler.java16
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagSelectioner.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/XmlTokenSelectioner.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/folding/impl/XmlElementSignatureProvider.java1
-rw-r--r--xml/impl/src/com/intellij/codeInsight/hint/TagDeclarationRangeHandler.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/hint/XmlImplementationTextSelectioner.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/hint/api/impls/XmlParameterInfoHandler.java24
-rw-r--r--xml/impl/src/com/intellij/codeInsight/intentions/XmlChooseColorIntentionAction.java5
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/XmlDefaultLiveTemplatesProvider.java3
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/emmet/EmmetParser.java5
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/emmet/XmlEmmetParser.java10
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java19
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/emmet/filters/BemEmmetFilter.java4
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGenerator.java37
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGeneratorImpl.java8
-rw-r--r--xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java143
-rw-r--r--xml/impl/src/com/intellij/featureStatistics/XmlProductivityFeatureProvider.java5
-rw-r--r--xml/impl/src/com/intellij/html/HtmlLineMarkerProvider.java4
-rw-r--r--xml/impl/src/com/intellij/javaee/EditLocationDialog.java6
-rw-r--r--xml/impl/src/com/intellij/javaee/ExternalResourceConfigurable.java30
-rw-r--r--xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java43
-rw-r--r--xml/impl/src/com/intellij/javaee/ExternalResourcesRootsProvider.java15
-rw-r--r--xml/impl/src/com/intellij/javaee/MapExternalResourceDialog.java6
-rw-r--r--xml/impl/src/com/intellij/javaee/NameLocationPair.java7
-rw-r--r--xml/impl/src/com/intellij/javaee/PsiExternalResourceNotifier.java5
-rw-r--r--xml/impl/src/com/intellij/lang/html/HtmlFormattingModelBuilder.java4
-rw-r--r--xml/impl/src/com/intellij/lang/xhtml/XhtmlFormattingModelBuilder.java4
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlAttributeValueRenameValidator.java3
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlElementRenameValidator.java13
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlEnclosingTagUnwrapper.java7
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlFormattingModel.java9
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlFormattingModelBuilder.java4
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlSurroundDescriptor.java4
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlUnwrapDescriptor.java5
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlWhiteSpaceFormattingStrategy.java4
-rw-r--r--xml/impl/src/com/intellij/lang/xml/XmlWordCompletionFilter.java5
-rw-r--r--xml/impl/src/com/intellij/openapi/options/colors/pages/HTMLColorsPage.java9
-rw-r--r--xml/impl/src/com/intellij/openapi/options/colors/pages/XMLColorsPage.java9
-rw-r--r--xml/impl/src/com/intellij/psi/filters/getters/HtmlAttributeValueGetter.java3
-rw-r--r--xml/impl/src/com/intellij/psi/filters/getters/XmlAttributeValueGetter.java3
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/AbstractSyntheticBlock.java7
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/AbstractXmlBlock.java7
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/AnotherLanguageBlockWrapper.java10
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/HtmlPolicy.java26
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/ReadOnlyBlock.java5
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/SyntheticBlock.java7
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/XmlBlock.java9
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/XmlPolicy.java22
-rw-r--r--xml/impl/src/com/intellij/psi/formatter/xml/XmlTagBlock.java11
-rw-r--r--xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/HtmlIdIndexer.java3
-rw-r--r--xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/CreateXmlElementIntentionAction.java7
-rw-r--r--xml/impl/src/com/intellij/refactoring/rename/RenameXmlAttributeProcessor.java4
-rw-r--r--xml/impl/src/com/intellij/refactoring/util/XmlNonCodeSearchElementDescriptionProvider.java4
-rw-r--r--xml/impl/src/com/intellij/vcsUtil/XmlVcsSelectionProvider.java3
-rw-r--r--xml/impl/src/com/intellij/xml/DefaultXmlNamespaceHelper.java6
-rw-r--r--xml/impl/src/com/intellij/xml/XmlFileTypeFactory.java3
-rw-r--r--xml/impl/src/com/intellij/xml/actions/validate/StdErrorReporter.java20
-rw-r--r--xml/impl/src/com/intellij/xml/actions/validate/TestErrorReporter.java5
-rw-r--r--xml/impl/src/com/intellij/xml/actions/validate/ValidateXmlAction.java7
-rw-r--r--xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaAction.java11
-rw-r--r--xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaDialog.java16
-rw-r--r--xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentAction.java14
-rw-r--r--xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentDialog.java9
-rw-r--r--xml/impl/src/com/intellij/xml/actions/xmlbeans/UIUtils.java10
-rw-r--r--xml/impl/src/com/intellij/xml/actions/xmlbeans/Xsd2InstanceUtils.java33
-rw-r--r--xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsLoaderComponent.java19
-rw-r--r--xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsPsiItem.java4
-rw-r--r--xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsXmlWrapper.java11
-rw-r--r--xml/impl/src/com/intellij/xml/breadcrumbs/XmlLanguageBreadcrumbsInfoProvider.java10
-rw-r--r--xml/impl/src/com/intellij/xml/config/ConfigFilesTreeBuilder.java5
-rw-r--r--xml/impl/src/com/intellij/xml/impl/XmlBraceMatcher.java13
-rw-r--r--xml/impl/src/com/intellij/xml/impl/schema/SchemaDefinitionsSearch.java6
-rw-r--r--xml/impl/src/com/intellij/xml/refactoring/XmlTagInplaceRenamer.java7
-rw-r--r--xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameDialog.java15
-rw-r--r--xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameHandler.java6
-rw-r--r--xml/impl/src/com/intellij/xml/util/ColorSampleLookupValue.java9
-rw-r--r--xml/impl/src/com/intellij/xml/util/XmlReferenceContributor.java16
-rw-r--r--xml/impl/src/com/intellij/xml/util/documentation/HtmlDocumentationProvider.java13
-rw-r--r--xml/impl/src/com/intellij/xml/util/documentation/XHtmlDocumentationProvider.java5
-rw-r--r--xml/impl/src/com/intellij/xml/util/documentation/XmlDocumentationProvider.java12
-rw-r--r--xml/openapi/src/com/intellij/xml/breadcrumbs/BreadcrumbsComponent.java29
-rw-r--r--xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngElementDescriptor.java6
-rw-r--r--xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngNSDescriptor.java4
-rw-r--r--xml/relaxng/src/org/intellij/html/RngHtml5MetaDataContributor.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/ApplicationLoader.java6
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/GotoSymbolContributor.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/RelaxNGReferenceContributor.java17
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/RngDocumentationProvider.java5
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/RngDomFileDescription.java17
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncCompletionData.java4
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypeEx.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypes.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncFileType.java5
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncHighlighter.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncParserDefinition.java10
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncTokenTypes.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/folding/RncFoldingBuilder.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncBlock.java9
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncFormattingModelBuilder.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/lexer/CompactSyntaxLexerAdapter.java10
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/PatternParsing.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/RncParser.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncDefine.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncGrammar.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncInclude.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncRef.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/PatternReference.java14
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncAnnotationImpl.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDeclImpl.java4
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDefineImpl.java17
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDivImpl.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDocument.java7
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncElementImpl.java4
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncExternalRefImpl.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileImpl.java6
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileReferenceImpl.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncGrammarImpl.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncIncludeImpl.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncNsDeclImpl.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncRefImpl.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/PsiFunction.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/RenameUtil.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigImpl.java11
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigPanel.java8
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceSchemaProvider.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedDtdOptions.java13
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedOptionsDialog.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedXsdOptions.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaAction.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaDialog.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaSettingsImpl.java8
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/convert/IdeaDriver.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/RngDomInspection.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/UnusedDefineInspection.java8
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/CommonAnnotationHolder.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/ModelAnnotator.java5
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineRenderer.java5
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineSearcher.java19
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverridingDefineRenderer.java6
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/AttributeFinder.java7
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/ChildElementFinder.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/CompositeDescriptor.java5
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/NamedPatternFilter.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RecursionSaveWalker.java5
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngElementDescriptor.java23
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngNsDescriptor.java14
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngXmlAttributeDescriptor.java14
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/DefinitionResolver.java6
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/RelaxIncludeIndex.java16
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/references/AddValueCondition.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueCondition.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueFunction.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/references/IdRefProvider.java8
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/references/ResolvingVisitor.java4
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/validation/MessageViewHelper.java7
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/validation/Psi2SaxAdapter.java6
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngParser.java6
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngSchemaValidator.java7
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/validation/ValidateAction.java16
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/Combine.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/RngDomVisitor.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/CreatePatternFix.java7
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/DefinitionReference.java6
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineImpl.java5
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineMetaData.java4
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDomElementBase.java4
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngGrammarImpl.java1
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngHrefConverter.java3
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngIncludeImpl.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngRefImpl.java2
-rw-r--r--xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java3
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractIndexTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractParsingTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/AttributeCompletionTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/ElementCompletionTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/ExternalRncParsingTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/HighlightingTestBase.java10
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RncCompletionTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RncExternalHighlightingTest.java2
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RncHighlightingTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RncIndexHighlightingTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RncRenameTest.java3
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RngCompletionTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RngHighlightingTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RngIndexHighlightingTest.java1
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RngRenameTest.java2
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlHighlightingTest.java3
-rw-r--r--xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlValidationTest.java3
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlBuilderTest.java18
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlDocumentationTest.java2
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlDtdTest.java4
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlEventsTest.java24
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlInsightTest.java4
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlPerformanceTest.java16
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlSchemaTest.java17
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlTagTest.java92
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlTagWriteTest.java6
-rw-r--r--xml/tests/src/com/intellij/codeInsight/XmlTestUtil.java19
-rw-r--r--xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java34
-rw-r--r--xml/tests/src/com/intellij/codeInsight/completion/XmlTypedHandlersTest.java10
-rw-r--r--xml/tests/src/com/intellij/codeInsight/daemon/XmlHighlightingTest.java38
-rw-r--r--xml/tests/src/com/intellij/codeInsight/daemon/quickFix/ExtractExternalResourceLinksTest.java17
-rw-r--r--xml/tests/src/com/intellij/html/MicrodataCompletionTest.java4
-rw-r--r--xml/tests/src/com/intellij/xml/XMLCatalogManagerTest.java4
-rw-r--r--xml/tests/src/com/intellij/xml/XmlFoldingTest.java4
-rw-r--r--xml/tests/src/com/intellij/xml/XmlNamespacesTest.java17
-rw-r--r--xml/tests/src/com/intellij/xml/XmlSchemaPrefixTest.java17
-rw-r--r--xml/tests/src/com/intellij/xml/XmlSmartCompletionTest.java21
-rw-r--r--xml/tests/src/com/intellij/xml/actions/GenerateXmlTagTest.java21
-rw-r--r--xml/tests/src/com/intellij/xml/actions/SplitTagActionTest.java16
-rw-r--r--xml/tests/testData/completion/InheritedAttr/library.xsd13
-rw-r--r--xml/tests/testData/completion/InheritedAttr/test.xml4
-rw-r--r--xml/tests/testData/completion/InheritedAttr/test.xsd15
-rw-r--r--xml/tests/testData/xml/DocBook5.xml5
-rw-r--r--xml/tests/testData/xml/qualified.xml5
-rw-r--r--xml/tests/testData/xml/qualified.xsd28
-rw-r--r--xml/xml-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlErrorQuickFixProvider.java (renamed from xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlErrorQuickFixProvider.java)2
-rw-r--r--xml/xml-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlNsPrefixAnnotator.java (renamed from xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlNsPrefixAnnotator.java)2
-rw-r--r--xml/xml-analysis-impl/src/com/intellij/codeInspection/EmptyXmlQuickFixFactory.java41
-rw-r--r--xml/xml-analysis-impl/src/com/intellij/codeInspection/htmlInspections/XmlWrongClosingTagNameInspection.java6
-rw-r--r--xml/xml-analysis-impl/src/com/intellij/lang/xml/XMLExternalAnnotator.java (renamed from xml/impl/src/com/intellij/lang/xml/XMLExternalAnnotator.java)2
-rw-r--r--xml/xml-analysis-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/IdRefReference.java4
-rw-r--r--xml/xml-psi-api/src/com/intellij/codeInspection/XmlSuppressionProvider.java4
-rw-r--r--xml/xml-psi-api/src/com/intellij/patterns/XmlAttributeValuePattern.java4
-rw-r--r--xml/xml-psi-api/src/com/intellij/patterns/XmlElementPattern.java5
-rw-r--r--xml/xml-psi-api/src/com/intellij/patterns/XmlFilePattern.java3
-rw-r--r--xml/xml-psi-api/src/com/intellij/patterns/XmlNamedElementPattern.java6
-rw-r--r--xml/xml-psi-api/src/com/intellij/patterns/XmlTagPattern.java10
-rw-r--r--xml/xml-psi-api/src/com/intellij/pom/xml/XmlChangeSet.java3
-rw-r--r--xml/xml-psi-api/src/com/intellij/psi/XmlRecursiveElementVisitor.java3
-rw-r--r--xml/xml-psi-api/src/com/intellij/psi/filters/position/NamespaceFilter.java2
-rw-r--r--xml/xml-psi-api/src/com/intellij/psi/xml/XmlElementDecl.java3
-rw-r--r--xml/xml-psi-api/src/com/intellij/psi/xml/XmlEntityDecl.java3
-rw-r--r--xml/xml-psi-api/src/com/intellij/xml/XmlSchemaProvider.java3
-rw-r--r--xml/xml-psi-api/src/com/intellij/xml/util/XmlTagUtil.java14
-rw-r--r--xml/xml-psi-impl/src/com/intellij/application/options/editor/XmlFoldingSettings.java (renamed from xml/impl/src/com/intellij/application/options/editor/XmlFoldingSettings.java)6
-rw-r--r--xml/xml-psi-impl/src/com/intellij/codeInsight/highlighting/XmlReadWriteAccessDetector.java (renamed from xml/impl/src/com/intellij/codeInsight/highlighting/XmlReadWriteAccessDetector.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaElementDescriptor.java7
-rw-r--r--xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaNSDescriptor.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/html/impl/util/MicrodataUtil.java (renamed from xml/impl/src/com/intellij/html/impl/util/MicrodataUtil.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/ide/highlighter/HtmlFileHighlighter.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/ide/highlighter/XmlFileHighlighter.java17
-rw-r--r--xml/xml-psi-impl/src/com/intellij/javaee/ExternalResourceManagerExImpl.java56
-rw-r--r--xml/xml-psi-impl/src/com/intellij/javaee/InternalResourceProvider.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/javaee/ProjectResources.java (renamed from xml/impl/src/com/intellij/javaee/ProjectResources.java)11
-rw-r--r--xml/xml-psi-impl/src/com/intellij/javaee/ResourceRegistrarImpl.java7
-rw-r--r--xml/xml-psi-impl/src/com/intellij/javaee/XMLCatalogManager.java8
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/XmlCodeFoldingBuilder.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/dtd/DTDParserDefinition.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/dtd/DtdSyntaxHighlighterFactory.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParser.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParserDefinition.java11
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/html/HtmlSyntaxHighlighterFactory.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xhtml/XHTMLParserDefinition.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xhtml/XhtmlSyntaxHighlighterFactory.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xml/XMLParserDefinition.java11
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xml/XmlCommenter.java (renamed from xml/impl/src/com/intellij/lang/xml/XmlCommenter.java)7
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xml/XmlFindUsagesProvider.java (renamed from xml/impl/src/com/intellij/lang/xml/XmlFindUsagesProvider.java)22
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xml/XmlFoldingBuilder.java (renamed from xml/impl/src/com/intellij/lang/xml/XmlFoldingBuilder.java)6
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xml/XmlSyntaxHighlighterFactory.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lang/xml/XmlTemplateTreePatcher.java2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lexer/HtmlHighlightingLexer.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lexer/XHtmlLexer.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/lexer/XmlHighlightingLexer.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectChangeSetImpl.java11
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectImpl.java (renamed from xml/impl/src/com/intellij/pom/xml/impl/XmlAspectImpl.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlAttributeSetImpl.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlDocumentChangedImpl.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlElementChangedImpl.java (renamed from xml/impl/src/com/intellij/pom/xml/impl/events/XmlElementChangedImpl.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildAddImpl.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildChangedImpl.java (renamed from xml/impl/src/com/intellij/pom/xml/impl/events/XmlTagChildChangedImpl.java)4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildRemovedImpl.java (renamed from xml/impl/src/com/intellij/pom/xml/impl/events/XmlTagChildRemovedImpl.java)4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagNameChangedImpl.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTextChangedImpl.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/XmlElementFactoryImpl.java (renamed from xml/impl/src/com/intellij/psi/XmlElementFactoryImpl.java)7
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/filters/TextContainFilter.java (renamed from xml/impl/src/com/intellij/psi/filters/TextContainFilter.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/filters/TextStartFilter.java (renamed from xml/impl/src/com/intellij/psi/filters/TextStartFilter.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTagFilter.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTextFilter.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/filters/position/RootTagFilter.java (renamed from xml/impl/src/com/intellij/psi/filters/position/RootTagFilter.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/filters/position/TargetNamespaceFilter.java2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/filters/position/XmlTokenTypeFilter.java2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlFilterLexer.java (renamed from xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlFilterLexer.java)6
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlIdIndexer.java (renamed from xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlIdIndexer.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlTodoIndexer.java (renamed from xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlTodoIndexer.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlFilterLexer.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlIdIndexer.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlTodoIndexer.java (renamed from xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlTodoIndexer.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlConditionalCommentInjector.java2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlDocumentImpl.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlEmbeddedContentImpl.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlTagImpl.java10
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/TemplateHtmlScriptContentProvider.java (renamed from xml/impl/src/com/intellij/psi/impl/source/html/TemplateHtmlScriptContentProvider.java)15
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlAttributeDescriptorImpl.java15
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlElementDescriptorImpl.java18
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlNSDescriptorImpl.java14
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/HtmlBuilderDriver.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/XmlParser.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeManipulator.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeManipulator.java)0
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeValueManipulator.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeValueManipulator.java)0
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlProcessingInstructionManipulator.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlProcessingInstructionManipulator.java)0
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTagManipulator.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTagManipulator.java)0
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTextManipulator.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTextManipulator.java)0
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTokenManipulator.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTokenManipulator.java)0
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/BasicAttributeValueReference.java6
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/DependentNSReference.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/DependentNSReference.java)18
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/SchemaReferencesProvider.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/TypeOrElementOrAttributeReference.java18
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URIReferenceProvider.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URIReferenceProvider.java)5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URLReference.java14
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/XmlValueReference.java (renamed from xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/XmlValueReference.java)9
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/HtmlFileElement.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/XmlFileElement.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlAttributeLiteralEscaper.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlCommentLiteralEscaper.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlTextLiteralEscaper.java6
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/LanguageXmlPsiPolicy.java17
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefix.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefixReference.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/TagNameReference.java11
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttlistDeclImpl.java8
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeDeclImpl.java20
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeReference.java12
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeValueImpl.java17
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlCommentImpl.java11
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlConditionalSectionImpl.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDeclImpl.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDoctypeImpl.java15
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDocumentImpl.java19
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementContentSpecImpl.java9
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementDeclImpl.java15
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementImpl.java10
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityCache.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityDeclImpl.java12
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityRefImpl.java10
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEnumeratedTypeImpl.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlMarkupDeclImpl.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlNotationDeclImpl.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlProcessingInstructionImpl.java6
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlPrologImpl.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTagValueImpl.java8
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java23
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/CDATAOnAnyEncodedPolicy.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/DefaultXmlPsiPolicy.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/EncodeEachSymbolPolicy.java (renamed from xml/impl/src/com/intellij/psi/impl/source/xml/behavior/EncodeEachSymbolPolicy.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/xml/XmlChildRole.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/psi/xml/XmlElementType.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/DefaultXmlExtension.java5
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/XmlChangeLocalityDetector.java (renamed from xml/impl/src/com/intellij/xml/XmlChangeLocalityDetector.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/XmlCoreEnvironment.java69
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/XmlPsiManager.java (renamed from xml/impl/src/com/intellij/xml/XmlPsiManager.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/actions/validate/ValidateXmlActionHandler.java9
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/BasicXmlAttributeDescriptor.java6
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/BaseXmlElementDescriptorImpl.java22
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlAttributeDescriptorImpl.java14
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlElementDescriptorImpl.java19
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlNSDescriptorImpl.java20
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlAttributeDescriptor.java15
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlElementDescriptor.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/ComplexTypeDescriptor.java11
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NamedObjectDescriptor.java8
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NullElementDescriptor.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/SchemaNSDescriptor.java9
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlAttributeDescriptorImpl.java57
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorByType.java8
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorImpl.java30
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlNSDescriptorImpl.java21
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XsdEnumerationDescriptor.java19
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/index/IndexedRelevantResource.java4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/index/SchemaTypeInfo.java (renamed from xml/impl/src/com/intellij/xml/index/SchemaTypeInfo.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/index/SchemaTypeInheritanceIndex.java (renamed from xml/impl/src/com/intellij/xml/index/SchemaTypeInheritanceIndex.java)4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/index/XmlIndex.java8
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/index/XmlTagNamesIndex.java (renamed from xml/impl/src/com/intellij/xml/index/XmlTagNamesIndex.java)0
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/index/XsdComplexTypeInfoBuilder.java (renamed from xml/impl/src/com/intellij/xml/index/XsdComplexTypeInfoBuilder.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/index/XsdTagNameBuilder.java (renamed from xml/impl/src/com/intellij/xml/index/XsdTagNameBuilder.java)4
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/ColorIconCache.java (renamed from xml/impl/src/com/intellij/xml/util/ColorIconCache.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/HTMLControls.java2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/HtmlFileNSInfoProvider.java (renamed from xml/impl/src/com/intellij/xml/util/HtmlFileNSInfoProvider.java)2
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/IncludedXmlText.java10
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/InclusionProvider.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/XmlApplicationComponent.java3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/XmlIconProvider.java (renamed from xml/impl/src/com/intellij/xml/util/XmlIconProvider.java)3
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/XmlNSDescriptorSequence.java63
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/XmlPrefixReferenceProvider.java (renamed from xml/impl/src/com/intellij/xml/util/XmlPrefixReferenceProvider.java)15
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/XmlPsiUtil.java16
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/XmlResourceResolver.java8
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java7
-rw-r--r--xml/xml-psi-impl/src/com/intellij/xml/util/documentation/CompositeAttributeTagDescriptor.java4
-rw-r--r--xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/AbstractXmlTagTreeElement.java1
-rw-r--r--xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/DtdFileTreeElement.java7
-rw-r--r--xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/XmlFileTreeElement.java2
-rw-r--r--xml/xml-structure-view-impl/src/com/intellij/lang/html/structureView/Html5SectionsProcessor.java5
620 files changed, 4175 insertions, 957 deletions
diff --git a/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconBuilder.java b/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconBuilder.java
index 350fe416980f..098a3e7f9377 100644
--- a/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconBuilder.java
+++ b/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconBuilder.java
@@ -57,6 +57,7 @@ import java.util.*;
public class NavigationGutterIconBuilder<T> {
@NonNls private static final String PATTERN = "&nbsp;&nbsp;&nbsp;&nbsp;{0}";
private static final NotNullFunction<PsiElement,Collection<? extends PsiElement>> DEFAULT_PSI_CONVERTOR = new NotNullFunction<PsiElement, Collection<? extends PsiElement>>() {
+ @Override
@NotNull
public Collection<? extends PsiElement> fun(final PsiElement element) {
return ContainerUtil.createMaybeSingletonList(element);
@@ -77,6 +78,7 @@ public class NavigationGutterIconBuilder<T> {
private NullableFunction<T,String> myNamer = ElementPresentationManager.namer();
private final NotNullFunction<T, Collection<? extends GotoRelatedItem>> myGotoRelatedItemProvider;
public static final NotNullFunction<DomElement,Collection<? extends PsiElement>> DEFAULT_DOM_CONVERTOR = new NotNullFunction<DomElement, Collection<? extends PsiElement>>() {
+ @Override
@NotNull
public Collection<? extends PsiElement> fun(final DomElement o) {
return ContainerUtil.createMaybeSingletonList(o.getXmlElement());
@@ -295,6 +297,7 @@ public class NavigationGutterIconBuilder<T> {
}
return new NotNullLazyValue<List<SmartPsiElementPointer>>() {
+ @Override
@NotNull
public List<SmartPsiElementPointer> compute() {
return calcPsiTargets(project, targets.create(), converter);
@@ -359,16 +362,19 @@ public class NavigationGutterIconBuilder<T> {
return !myEmpty;
}
+ @Override
@NotNull
public Icon getIcon() {
return myIcon;
}
+ @Override
@Nullable
public String getTooltipText() {
return myTooltipText;
}
+ @Override
public Alignment getAlignment() {
return myAlignment;
}
diff --git a/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconRenderer.java b/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconRenderer.java
index 84c47f2db646..e4651158fc2c 100644
--- a/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconRenderer.java
+++ b/xml/dom-impl/src/com/intellij/codeInsight/navigation/NavigationGutterIconRenderer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -58,12 +58,14 @@ public abstract class NavigationGutterIconRenderer extends GutterIconRenderer im
myPointers = pointers;
}
+ @Override
public boolean isNavigateAction() {
return true;
}
public List<PsiElement> getTargetElements() {
return ContainerUtil.mapNotNull(myPointers.getValue(), new NullableFunction<SmartPsiElementPointer, PsiElement>() {
+ @Override
public PsiElement fun(final SmartPsiElementPointer smartPsiElementPointer) {
return smartPsiElementPointer.getElement();
}
@@ -91,15 +93,18 @@ public abstract class NavigationGutterIconRenderer extends GutterIconRenderer im
return result;
}
+ @Override
@Nullable
public AnAction getClickAction() {
return new AnAction() {
+ @Override
public void actionPerformed(AnActionEvent e) {
navigate(e == null ? null : (MouseEvent)e.getInputEvent(), null);
}
};
}
+ @Override
public void navigate(@Nullable final MouseEvent event, @Nullable final PsiElement elt) {
final List<PsiElement> list = getTargetElements();
if (list.isEmpty()) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java b/xml/dom-impl/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java
index f11d5ada84e9..4f3a7cbc2237 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ import org.jetbrains.annotations.Nullable;
*/
public abstract class AbstractDomDeclarationSearcher extends PomDeclarationSearcher {
+ @Override
public void findDeclarationsAt(@NotNull PsiElement psiElement, int offsetInElement, Consumer<PomTarget> consumer) {
if (!(psiElement instanceof XmlToken)) return;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/DomDocumentationProvider.java b/xml/dom-impl/src/com/intellij/util/xml/DomDocumentationProvider.java
index 0daaf2d95612..086141f855b3 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/DomDocumentationProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/DomDocumentationProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,14 +29,17 @@ import java.util.List;
*/
public class DomDocumentationProvider implements DocumentationProvider {
+ @Override
public String getQuickNavigateInfo(final PsiElement element, PsiElement originalElement) {
return null;
}
+ @Override
public List<String> getUrlFor(final PsiElement element, final PsiElement originalElement) {
return null;
}
+ @Override
public String generateDoc(PsiElement element, final PsiElement originalElement) {
if (element instanceof PomTargetPsiElement) {
PomTarget target = ((PomTargetPsiElement)element).getTarget();
@@ -56,10 +59,12 @@ public class DomDocumentationProvider implements DocumentationProvider {
return ElementPresentationManager.getDocumentationForElement(domElement);
}
+ @Override
public PsiElement getDocumentationElementForLookupItem(final PsiManager psiManager, final Object object, final PsiElement element) {
return null;
}
+ @Override
public PsiElement getDocumentationElementForLink(final PsiManager psiManager, final String link, final PsiElement context) {
return null;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/DomNameSuggestionProvider.java b/xml/dom-impl/src/com/intellij/util/xml/DomNameSuggestionProvider.java
index b322d8fc37b8..31ac8c20a04c 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/DomNameSuggestionProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/DomNameSuggestionProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,6 +29,7 @@ import java.util.Set;
* @author Gregory.Shrago
*/
public class DomNameSuggestionProvider implements NameSuggestionProvider {
+ @Override
public SuggestedNameInfo getSuggestedNames(final PsiElement element, final PsiElement nameSuggestionContext, final Set<String> result) {
if (element instanceof PsiMetaOwner) {
final PsiMetaData psiMetaData = ((PsiMetaOwner)element).getMetaData();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/DomUsageTypeProvider.java b/xml/dom-impl/src/com/intellij/util/xml/DomUsageTypeProvider.java
index 17b61ba22aec..27a85c8d1ea2 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/DomUsageTypeProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/DomUsageTypeProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ import org.jetbrains.annotations.Nullable;
* @author Gregory.Shrago
*/
public class DomUsageTypeProvider implements UsageTypeProvider {
+ @Override
@Nullable
public UsageType getUsageType(PsiElement element) {
final PsiFile psiFile = element.getContainingFile();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/ElementPresentationManagerImpl.java b/xml/dom-impl/src/com/intellij/util/xml/ElementPresentationManagerImpl.java
index d1d370d15fac..28cb6c0bde2a 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/ElementPresentationManagerImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/ElementPresentationManagerImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,6 +30,7 @@ import java.util.List;
*/
public class ElementPresentationManagerImpl extends ElementPresentationManager {
+ @Override
@NotNull
public <T> Object[] createVariants(Collection<T> elements, Function<T, String> namer, int iconFlags) {
List<Object> result = new ArrayList<Object>(elements.size());
@@ -43,6 +44,7 @@ public class ElementPresentationManagerImpl extends ElementPresentationManager {
return result.toArray();
}
+ @Override
public Object createVariant(final Object variant, final String name, final PsiElement psiElement) {
final LookupElementBuilder builder;
if (psiElement != null) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/EnumConverter.java b/xml/dom-impl/src/com/intellij/util/xml/EnumConverter.java
index edb8521f914c..8f65646a524c 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/EnumConverter.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/EnumConverter.java
@@ -34,6 +34,7 @@ import java.util.HashSet;
*/
public class EnumConverter<T extends Enum> extends ResolvingConverter<T>{
private static final ConcurrentFactoryMap<Class,EnumConverter> ourCache = new ConcurrentFactoryMap<Class, EnumConverter>() {
+ @Override
@NotNull
protected EnumConverter create(final Class key) {
return new EnumConverter(key);
@@ -53,18 +54,22 @@ public class EnumConverter<T extends Enum> extends ResolvingConverter<T>{
return NamedEnumUtil.getEnumValueByElement(anEnum);
}
+ @Override
public final T fromString(final String s, final ConvertContext context) {
return s==null?null:(T)NamedEnumUtil.getEnumElementByValue((Class)myType, s);
}
+ @Override
public final String toString(final T t, final ConvertContext context) {
return t == null? null:getStringValue(t);
}
+ @Override
public String getErrorMessage(@Nullable final String s, final ConvertContext context) {
return CodeInsightBundle.message("error.unknown.enum.value.message", s);
}
+ @Override
@NotNull
public Collection<? extends T> getVariants(final ConvertContext context) {
final XmlElement element = context.getXmlElement();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/ModelMergerImpl.java b/xml/dom-impl/src/com/intellij/util/xml/ModelMergerImpl.java
index 6d6e95c4c8a9..7a2698038a8d 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/ModelMergerImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/ModelMergerImpl.java
@@ -45,6 +45,7 @@ public class ModelMergerImpl implements ModelMerger {
private static final Class<MergedObject> MERGED_OBJECT_CLASS = MergedObject.class;
private final ConcurrentFactoryMap<Method,List<Pair<InvocationStrategy,Class>>> myAcceptsCache = new ConcurrentFactoryMap<Method,List<Pair<InvocationStrategy,Class>>>() {
+ @Override
protected List<Pair<InvocationStrategy,Class>> create(final Method method) {
List<Pair<InvocationStrategy,Class>> result = new ArrayList<Pair<InvocationStrategy,Class>>();
for (int i = myInvocationStrategies.size() - 1; i >= 0; i--) {
@@ -59,10 +60,12 @@ public class ModelMergerImpl implements ModelMerger {
public ModelMergerImpl() {
addInvocationStrategy(Object.class, new InvocationStrategy<Object>() {
+ @Override
public boolean accepts(final Method method) {
return true;
}
+ @Override
public Object invokeMethod(final JavaMethod javaMethod, final Object proxy, final Object[] args, final List<Object> implementations)
throws IllegalAccessException, InvocationTargetException {
final Method method = javaMethod.getMethod();
@@ -72,10 +75,12 @@ public class ModelMergerImpl implements ModelMerger {
});
addInvocationStrategy(Object.class, new InvocationStrategy<Object>() {
+ @Override
public boolean accepts(final Method method) {
return Collection.class.isAssignableFrom(method.getReturnType());
}
+ @Override
public Object invokeMethod(final JavaMethod method, final Object proxy, final Object[] args, final List<Object> implementations)
throws IllegalAccessException, InvocationTargetException {
@@ -87,10 +92,12 @@ public class ModelMergerImpl implements ModelMerger {
addInvocationStrategy(Object.class, new InvocationStrategy<Object>() {
+ @Override
public boolean accepts(final Method method) {
return Object.class.equals(method.getDeclaringClass());
}
+ @Override
public Object invokeMethod(final JavaMethod method, final Object proxy, final Object[] args, final List<Object> implementations) {
@NonNls String methodName = method.getName();
if ("toString".equals(methodName)) {
@@ -114,10 +121,12 @@ public class ModelMergerImpl implements ModelMerger {
});
addInvocationStrategy(Object.class, new InvocationStrategy<Object>() {
+ @Override
public boolean accepts(final Method method) {
return "isValid".equals(method.getName());
}
+ @Override
public Object invokeMethod(final JavaMethod method, final Object proxy, final Object[] args, final List<Object> implementations)
throws IllegalAccessException, InvocationTargetException {
for (final Object implementation : implementations) {
@@ -130,10 +139,12 @@ public class ModelMergerImpl implements ModelMerger {
});
addInvocationStrategy(Object.class, new InvocationStrategy<Object>() {
+ @Override
public boolean accepts(final Method method) {
return void.class.equals(method.getReturnType());
}
+ @Override
public Object invokeMethod(final JavaMethod method, final Object proxy, final Object[] args, final List<Object> implementations)
throws IllegalAccessException, InvocationTargetException {
for (final Object t : implementations) {
@@ -144,10 +155,12 @@ public class ModelMergerImpl implements ModelMerger {
});
addInvocationStrategy(Object.class, new InvocationStrategy<Object>() {
+ @Override
public boolean accepts(final Method method) {
return MERGED_OBJECT_CLASS.equals(method.getDeclaringClass());
}
+ @Override
public Object invokeMethod(final JavaMethod method, final Object proxy, final Object[] args, final List<Object> implementations)
throws IllegalAccessException, InvocationTargetException {
assert "getImplementations".equals(method.getName());
@@ -156,10 +169,12 @@ public class ModelMergerImpl implements ModelMerger {
});
addInvocationStrategy(DomElement.class, new InvocationStrategy<DomElement>() {
+ @Override
public boolean accepts(final Method method) {
return DomInvocationHandler.ACCEPT_METHOD.equals(method);
}
+ @Override
public Object invokeMethod(final JavaMethod method, final DomElement proxy, final Object[] args, final List<DomElement> implementations)
throws IllegalAccessException, InvocationTargetException {
final DomElementVisitor visitor = (DomElementVisitor)args[0];
@@ -169,10 +184,12 @@ public class ModelMergerImpl implements ModelMerger {
});
addInvocationStrategy(DomElement.class, new InvocationStrategy<DomElement>() {
+ @Override
public boolean accepts(final Method method) {
return DomInvocationHandler.ACCEPT_CHILDREN_METHOD.equals(method);
}
+ @Override
public Object invokeMethod(final JavaMethod method, final DomElement proxy, final Object[] args, final List<DomElement> implementations)
throws IllegalAccessException, InvocationTargetException {
final DomElementVisitor visitor = (DomElementVisitor)args[0];
@@ -191,21 +208,25 @@ public class ModelMergerImpl implements ModelMerger {
return javaMethod.getMethod().getAnnotation(Intersect.class) != null;
}
+ @Override
public final <T> void addInvocationStrategy(Class<T> aClass, InvocationStrategy<T> strategy) {
myInvocationStrategies.add(Pair.<InvocationStrategy,Class>create(strategy, aClass));
}
+ @Override
public final <T> void addMergingStrategy(Class<T> aClass, MergingStrategy<T> strategy) {
myMergingStrategies.add(strategy);
myMergingStrategyClasses.add(aClass);
}
+ @Override
public <T> T mergeModels(final Class<T> aClass, final T... implementations) {
if (implementations.length == 1) return implementations[0];
final MergingInvocationHandler<T> handler = new MergingInvocationHandler<T>(aClass, Arrays.asList(implementations));
return _mergeModels(aClass, handler, implementations);
}
+ @Override
public <T> T mergeModels(final Class<T> aClass, final Collection<? extends T> implementations) {
return (T)mergeModels((Class)aClass, implementations.toArray());
}
@@ -232,7 +253,7 @@ public class ModelMergerImpl implements ModelMerger {
}
- private static final Map<Class<? extends Object>, Method> ourPrimaryKeyMethods = new HashMap<Class<? extends Object>, Method>();
+ private static final Map<Class<?>, Method> ourPrimaryKeyMethods = new HashMap<Class<?>, Method>();
public class MergingInvocationHandler<T> implements InvocationHandler {
private final Class<? super T> myClass;
@@ -262,6 +283,7 @@ public class ModelMergerImpl implements ModelMerger {
throw new AssertionError("impossible");
}
+ @Override
public Object invoke(Object proxy, final Method method, final Object[] args) throws Throwable {
try {
return findStrategy(proxy, method).invokeMethod(getJavaMethod(method), proxy, args, myImplementations);
@@ -300,7 +322,7 @@ public class ModelMergerImpl implements ModelMerger {
}
@Nullable
- private static Method getPrimaryKeyMethod(final Class<? extends Object> aClass) {
+ private static Method getPrimaryKeyMethod(final Class<?> aClass) {
Method method = ourPrimaryKeyMethods.get(aClass);
if (method == null) {
if (ourPrimaryKeyMethods.containsKey(aClass)) return null;
@@ -332,6 +354,7 @@ public class ModelMergerImpl implements ModelMerger {
if (returnType.isInterface()) {
final List<Object> orderedPrimaryKeys = new SmartList<Object>();
final FactoryMap<Object, List<Set<Object>>> map = new FactoryMap<Object, List<Set<Object>>>() {
+ @Override
@NotNull
protected List<Set<Object>> create(final Object key) {
orderedPrimaryKeys.add(key);
@@ -339,6 +362,7 @@ public class ModelMergerImpl implements ModelMerger {
}
};
final FactoryMap<Object, int[]> counts = new FactoryMap<Object, int[]>() {
+ @Override
@NotNull
protected int[] create(final Object key) {
return new int[implementations.size()];
@@ -402,7 +426,7 @@ public class ModelMergerImpl implements ModelMerger {
final int index,
final List<Object> results,
final boolean singleValuedInvocation,
- final boolean intersect) throws IllegalAccessException, InvocationTargetException {
+ final boolean intersect) {
final Object primaryKey = getPrimaryKey(o, singleValuedInvocation);
if (primaryKey != null || singleValuedInvocation) {
final List<Set<Object>> list = map.get(primaryKey);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomCollectionProblemDescriptorImpl.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomCollectionProblemDescriptorImpl.java
index e6ea34fe2852..9cdfb7f98f10 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomCollectionProblemDescriptorImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomCollectionProblemDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -47,6 +47,7 @@ public class DomCollectionProblemDescriptorImpl extends DomElementProblemDescrip
return super.toString() + "; " + myChildDescription;
}
+ @Override
public DomCollectionChildDescription getChildDescription() {
return myChildDescription;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementAnnotationHolderImpl.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementAnnotationHolderImpl.java
index 55b140a05ff4..4673dfcf1a52 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementAnnotationHolderImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementAnnotationHolderImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -49,11 +49,13 @@ public class DomElementAnnotationHolderImpl extends SmartList<DomElementProblemD
return myOnTheFly;
}
+ @Override
@NotNull
public DomElementProblemDescriptor createProblem(@NotNull DomElement domElement, @Nullable String message, LocalQuickFix... fixes) {
return createProblem(domElement, HighlightSeverity.ERROR, message, fixes);
}
+ @Override
@NotNull
public DomElementProblemDescriptor createProblem(@NotNull DomElement domElement,
DomCollectionChildDescription childDescription,
@@ -61,11 +63,13 @@ public class DomElementAnnotationHolderImpl extends SmartList<DomElementProblemD
return addProblem(new DomCollectionProblemDescriptorImpl(domElement, message, HighlightSeverity.ERROR, childDescription));
}
+ @Override
@NotNull
public final DomElementProblemDescriptor createProblem(@NotNull DomElement domElement, HighlightSeverity highlightType, String message) {
return createProblem(domElement, highlightType, message, LocalQuickFix.EMPTY_ARRAY);
}
+ @Override
public DomElementProblemDescriptor createProblem(@NotNull final DomElement domElement,
final HighlightSeverity highlightType,
final String message,
@@ -73,6 +77,7 @@ public class DomElementAnnotationHolderImpl extends SmartList<DomElementProblemD
return createProblem(domElement, highlightType, message, null, fixes);
}
+ @Override
public DomElementProblemDescriptor createProblem(@NotNull final DomElement domElement,
final HighlightSeverity highlightType,
final String message,
@@ -81,6 +86,7 @@ public class DomElementAnnotationHolderImpl extends SmartList<DomElementProblemD
return addProblem(new DomElementProblemDescriptorImpl(domElement, message, highlightType, textRange, null, fixes));
}
+ @Override
public DomElementProblemDescriptor createProblem(@NotNull DomElement domElement,
ProblemHighlightType highlightType,
String message,
@@ -89,11 +95,13 @@ public class DomElementAnnotationHolderImpl extends SmartList<DomElementProblemD
return addProblem(new DomElementProblemDescriptorImpl(domElement, message, HighlightSeverity.ERROR, textRange, highlightType, fixes));
}
+ @Override
@NotNull
public DomElementResolveProblemDescriptor createResolveProblem(@NotNull GenericDomValue element, @NotNull PsiReference reference) {
return addProblem(new DomElementResolveProblemDescriptorImpl(element, reference, getQuickFixes(element, reference)));
}
+ @Override
@NotNull
public Annotation createAnnotation(@NotNull DomElement element, HighlightSeverity severity, @Nullable String message) {
final XmlElement xmlElement = element.getXmlElement();
@@ -110,6 +118,7 @@ public class DomElementAnnotationHolderImpl extends SmartList<DomElementProblemD
return myAnnotations;
}
+ @Override
public int getSize() {
return size();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementProblemDescriptorImpl.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementProblemDescriptorImpl.java
index 9cc9ec96ad8f..37c52eea91e8 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementProblemDescriptorImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementProblemDescriptorImpl.java
@@ -92,26 +92,31 @@ public class DomElementProblemDescriptorImpl implements DomElementProblemDescrip
myHighlightType = highlightType;
}
+ @Override
@NotNull
public DomElement getDomElement() {
return myDomElement;
}
+ @Override
@NotNull
public HighlightSeverity getHighlightSeverity() {
return mySeverity;
}
+ @Override
@NotNull
public String getDescriptionTemplate() {
return myMessage == null ? "" : myMessage;
}
+ @Override
@NotNull
public LocalQuickFix[] getFixes() {
return myFixes;
}
+ @Override
@NotNull
public final List<Annotation> getAnnotations() {
if (myAnnotations == null) {
@@ -120,6 +125,7 @@ public class DomElementProblemDescriptorImpl implements DomElementProblemDescrip
return myAnnotations;
}
+ @Override
public void highlightWholeElement() {
final PsiElement psiElement = getPsiElement();
if (psiElement instanceof XmlAttributeValue) {
@@ -230,6 +236,7 @@ public class DomElementProblemDescriptorImpl implements DomElementProblemDescrip
return null;
}
+ @Override
@Nullable
public ProblemHighlightType getHighlightType() {
return myHighlightType;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptorImpl.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptorImpl.java
index cf61ef35a186..e9b436ef40af 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptorImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,16 +40,19 @@ class DomElementResolveProblemDescriptorImpl extends DomElementProblemDescriptor
myReference = reference;
}
+ @Override
@NotNull
public PsiReference getPsiReference() {
return myReference;
}
+ @Override
@NotNull
public GenericDomValue getDomElement() {
return (GenericDomValue)super.getDomElement();
}
+ @Override
@NotNull
protected Pair<TextRange, PsiElement> computeProblemRange() {
final PsiReference reference = myReference;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsErrorPanel.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsErrorPanel.java
index 9a40ed5446cb..b4a3502f223a 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsErrorPanel.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsErrorPanel.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -68,12 +68,14 @@ public class DomElementsErrorPanel extends JPanel implements CommittablePanel, H
addUpdateRequest();
domManager.addDomEventListener(new DomChangeAdapter() {
+ @Override
protected void elementChanged(DomElement element) {
addUpdateRequest();
}
}, this);
}
+ @Override
public void updateHighlighting() {
updatePanel();
}
@@ -105,8 +107,10 @@ public class DomElementsErrorPanel extends JPanel implements CommittablePanel, H
private void addUpdateRequest() {
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
myAlarm.addRequest(new Runnable() {
+ @Override
public void run() {
if (myProject.isOpen() && !myProject.isDisposed()) {
updatePanel();
@@ -117,23 +121,28 @@ public class DomElementsErrorPanel extends JPanel implements CommittablePanel, H
});
}
+ @Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
myErrorStripeRenderer.paint(this, g, new Rectangle(0, 0, getWidth(), getHeight()));
}
+ @Override
public void dispose() {
myAlarm.cancelAllRequests();
}
+ @Override
public JComponent getComponent() {
return this;
}
+ @Override
public void commit() {
}
+ @Override
public void reset() {
updatePanel();
}
@@ -149,6 +158,7 @@ public class DomElementsErrorPanel extends JPanel implements CommittablePanel, H
PsiDocumentManager.getInstance(xmlFile.getProject()).getDocument(xmlFile), xmlFile);
}
+ @Override
protected DaemonCodeAnalyzerStatus getDaemonCodeAnalyzerStatus(boolean fillErrorsCount, SeverityRegistrar severityRegistrar) {
final DaemonCodeAnalyzerStatus status = super.getDaemonCodeAnalyzerStatus(fillErrorsCount, severityRegistrar);
if (status != null && isInspectionCompleted()) {
@@ -179,6 +189,7 @@ public class DomElementsErrorPanel extends JPanel implements CommittablePanel, H
protected boolean isInspectionCompleted() {
return ContainerUtil.and(myDomElements, new Condition<DomElement>() {
+ @Override
public boolean value(final DomElement element) {
return myAnnotationsManager.getHighlightStatus(element) == DomHighlightStatus.INSPECTIONS_FINISHED;
}
@@ -187,6 +198,7 @@ public class DomElementsErrorPanel extends JPanel implements CommittablePanel, H
protected boolean isErrorAnalyzingFinished() {
return ContainerUtil.and(myDomElements, new Condition<DomElement>() {
+ @Override
public boolean value(final DomElement element) {
return myAnnotationsManager.getHighlightStatus(element).compareTo(DomHighlightStatus.ANNOTATORS_FINISHED) >= 0;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsHighlightingUtil.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsHighlightingUtil.java
index 06cfcd327156..6fb09e193270 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsHighlightingUtil.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsHighlightingUtil.java
@@ -43,6 +43,7 @@ public class DomElementsHighlightingUtil {
public static ProblemDescriptor createProblemDescriptors(final InspectionManager manager, final DomElementProblemDescriptor problemDescriptor) {
final ProblemHighlightType type = getProblemHighlightType(problemDescriptor);
return createProblemDescriptors(problemDescriptor, new Function<Pair<TextRange, PsiElement>, ProblemDescriptor>() {
+ @Override
public ProblemDescriptor fun(final Pair<TextRange, PsiElement> s) {
return manager
.createProblemDescriptor(s.second, s.first, problemDescriptor.getDescriptionTemplate(), type, true, problemDescriptor.getFixes());
@@ -68,6 +69,7 @@ public class DomElementsHighlightingUtil {
public static Annotation createAnnotation(final DomElementProblemDescriptor problemDescriptor) {
return createProblemDescriptors(problemDescriptor, new Function<Pair<TextRange, PsiElement>, Annotation>() {
+ @Override
public Annotation fun(final Pair<TextRange, PsiElement> s) {
String text = problemDescriptor.getDescriptionTemplate();
if (StringUtil.isEmpty(text)) text = null;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsProblemsHolderImpl.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsProblemsHolderImpl.java
index a9f70bcc8ad1..02d494e123f4 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsProblemsHolderImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomElementsProblemsHolderImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -45,6 +45,7 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
private final Function<DomElement, List<DomElementProblemDescriptor>> myDomProblemsGetter =
new Function<DomElement, List<DomElementProblemDescriptor>>() {
+ @Override
public List<DomElementProblemDescriptor> fun(final DomElement s) {
final Map<Class<? extends DomElementsInspection>, List<DomElementProblemDescriptor>> map = myCachedErrors.get(s);
return map != null ? ContainerUtil.concat(map.values()) : Collections.<DomElementProblemDescriptor>emptyList();
@@ -54,11 +55,13 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
private final DomFileElement myElement;
private static final Factory<Map<Class<? extends DomElementsInspection>,List<DomElementProblemDescriptor>>> CONCURRENT_HASH_MAP_FACTORY = new Factory<Map<Class<? extends DomElementsInspection>, List<DomElementProblemDescriptor>>>() {
+ @Override
public Map<Class<? extends DomElementsInspection>, List<DomElementProblemDescriptor>> create() {
return new ConcurrentHashMap<Class<? extends DomElementsInspection>, List<DomElementProblemDescriptor>>();
}
};
private static final Factory<List<DomElementProblemDescriptor>> SMART_LIST_FACTORY = new Factory<List<DomElementProblemDescriptor>>() {
+ @Override
public List<DomElementProblemDescriptor> create() {
return new SmartList<DomElementProblemDescriptor>();
}
@@ -79,6 +82,7 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
myPassedInspections.add(inspectionClass);
}
+ @Override
public final boolean isInspectionCompleted(@NotNull final DomElementsInspection inspection) {
return isInspectionCompleted(inspection.getClass());
}
@@ -99,16 +103,19 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
myCachedChildrenErrors.clear();
}
+ @Override
@NotNull
public synchronized List<DomElementProblemDescriptor> getProblems(DomElement domElement) {
if (domElement == null || !domElement.isValid()) return Collections.emptyList();
return myDomProblemsGetter.fun(domElement);
}
+ @Override
public List<DomElementProblemDescriptor> getProblems(final DomElement domElement, boolean includeXmlProblems) {
return getProblems(domElement);
}
+ @Override
public List<DomElementProblemDescriptor> getProblems(final DomElement domElement,
final boolean includeXmlProblems,
final boolean withChildren) {
@@ -119,6 +126,7 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
return ContainerUtil.concat(getProblemsMap(domElement).values());
}
+ @Override
public List<DomElementProblemDescriptor> getProblems(DomElement domElement,
final boolean includeXmlProblems,
final boolean withChildren,
@@ -126,8 +134,10 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
return getProblems(domElement, withChildren, minSeverity);
}
+ @Override
public List<DomElementProblemDescriptor> getProblems(final DomElement domElement, final boolean withChildren, final HighlightSeverity minSeverity) {
return ContainerUtil.findAll(getProblems(domElement, true, withChildren), new Condition<DomElementProblemDescriptor>() {
+ @Override
public boolean value(final DomElementProblemDescriptor object) {
return SeverityRegistrar.getSeverityRegistrar(domElement.getManager().getProject()).compare(object.getHighlightSeverity(), minSeverity) >= 0;
}
@@ -151,6 +161,7 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
mergeMaps(problems, myCachedErrors.get(domElement));
if (DomUtil.hasXml(domElement)) {
domElement.acceptChildren(new DomElementVisitor() {
+ @Override
public void visitDomElement(DomElement element) {
mergeMaps(problems, getProblemsMap(element));
}
@@ -169,10 +180,12 @@ public class DomElementsProblemsHolderImpl implements DomElementsProblemsHolder
}
}
+ @Override
public List<DomElementProblemDescriptor> getAllProblems() {
return getProblems(myElement, false, true);
}
+ @Override
public List<DomElementProblemDescriptor> getAllProblems(@NotNull DomElementsInspection inspection) {
if (!myElement.isValid()) {
return Collections.emptyList();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomHighlightingHelperImpl.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomHighlightingHelperImpl.java
index 3330f90c5c77..b9f49b22f81b 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomHighlightingHelperImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/DomHighlightingHelperImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -56,6 +56,7 @@ public class DomHighlightingHelperImpl extends DomHighlightingHelper {
private final GenericValueReferenceProvider myProvider = new GenericValueReferenceProvider();
private final DomApplicationComponent myDomApplicationComponent = DomApplicationComponent.getInstance();
+ @Override
public void runAnnotators(DomElement element, DomElementAnnotationHolder holder, Class<? extends DomElement> rootClass) {
final DomElementsAnnotator annotator = myDomApplicationComponent.getAnnotator(rootClass);
if (annotator != null) {
@@ -63,6 +64,7 @@ public class DomHighlightingHelperImpl extends DomHighlightingHelper {
}
}
+ @Override
@NotNull
public List<DomElementProblemDescriptor> checkRequired(final DomElement element, final DomElementAnnotationHolder holder) {
final Required required = element.getAnnotation(Required.class);
@@ -105,6 +107,7 @@ public class DomHighlightingHelperImpl extends DomHighlightingHelper {
return Collections.emptyList();
}
+ @Override
@NotNull
public List<DomElementProblemDescriptor> checkResolveProblems(GenericDomValue element, final DomElementAnnotationHolder holder) {
if (StringUtil.isEmpty(element.getStringValue())) {
@@ -156,6 +159,7 @@ public class DomHighlightingHelperImpl extends DomHighlightingHelper {
converter instanceof ResolvingConverter && ((ResolvingConverter)converter).getAdditionalVariants(domReference.getConvertContext()).contains(element.getStringValue());
}
+ @Override
@NotNull
public List<DomElementProblemDescriptor> checkNameIdentity(DomElement element, final DomElementAnnotationHolder holder) {
final String elementName = ElementPresentationManager.getElementName(element);
@@ -243,33 +247,40 @@ public class DomHighlightingHelperImpl extends DomHighlightingHelper {
parentTag = _parentTag;
}
+ @Override
@NotNull
public String getName() {
return XmlBundle.message("insert.required.tag.fix", tagName);
}
+ @Override
@NotNull
public String getText() {
return getName();
}
+ @Override
@NotNull
public String getFamilyName() {
return getName();
}
+ @Override
public boolean isAvailable(@NotNull final Project project, final Editor editor, final PsiFile file) {
return true;
}
+ @Override
public void invoke(@NotNull final Project project, final Editor editor, final PsiFile file) throws IncorrectOperationException {
doFix();
}
+ @Override
public boolean startInWriteAction() {
return true;
}
+ @Override
public void applyFix(@NotNull final Project project, @NotNull final ProblemDescriptor descriptor) {
doFix();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockAnnotatingDomInspection.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockAnnotatingDomInspection.java
index 0f9863299cbd..32d42f2a81ff 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockAnnotatingDomInspection.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockAnnotatingDomInspection.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,24 +29,28 @@ public class MockAnnotatingDomInspection<T extends DomElement> extends BasicDomE
super(domClass);
}
+ @Override
protected void checkDomElement(DomElement element, DomElementAnnotationHolder holder, DomHighlightingHelper helper) {
for (final Class aClass : getDomClasses()) {
helper.runAnnotators(element, holder, aClass);
}
}
+ @Override
@Nls
@NotNull
public String getGroupDisplayName() {
throw new UnsupportedOperationException("Method getGroupDisplayName is not yet implemented in " + getClass().getName());
}
+ @Override
@Nls
@NotNull
public String getDisplayName() {
throw new UnsupportedOperationException("Method getDisplayName is not yet implemented in " + getClass().getName());
}
+ @Override
@NonNls
@NotNull
public String getShortName() {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockDomInspection.java b/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockDomInspection.java
index 85460928a068..3bd26c4d0ac1 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockDomInspection.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/highlighting/MockDomInspection.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,18 +29,21 @@ public class MockDomInspection<T extends DomElement> extends BasicDomElementsIns
super(domClass);
}
+ @Override
@Nls
@NotNull
public String getGroupDisplayName() {
throw new UnsupportedOperationException("Method getGroupDisplayName is not yet implemented in " + getClass().getName());
}
+ @Override
@Nls
@NotNull
public String getDisplayName() {
throw new UnsupportedOperationException("Method getDisplayName is not yet implemented in " + getClass().getName());
}
+ @Override
@NonNls
@NotNull
public String getShortName() {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/AbstractDomChildDescriptionImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/AbstractDomChildDescriptionImpl.java
index 20a9702cc56c..9a9dc53329af 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/AbstractDomChildDescriptionImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/AbstractDomChildDescriptionImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,7 +24,6 @@ import com.intellij.openapi.util.NullableLazyValue;
import com.intellij.pom.references.PomService;
import com.intellij.psi.PsiElement;
import com.intellij.psi.SmartPsiElementPointer;
-import com.intellij.util.xml.Stubbed;
import com.intellij.util.ReflectionUtil;
import com.intellij.util.xml.*;
import com.intellij.util.xml.reflect.AbstractDomChildrenDescription;
@@ -100,15 +99,18 @@ public abstract class AbstractDomChildDescriptionImpl implements AbstractDomChil
myUserMap = userMap;
}
+ @Override
@Nullable
public <T extends Annotation> T getAnnotation(final Class<T> annotationClass) {
return myCustomAnnotations == null ? null : (T)myCustomAnnotations.get(annotationClass);
}
+ @Override
public <T> T getUserData(final Key<T> key) {
return myUserMap == null ? null : (T)myUserMap.get(key);
}
+ @Override
@NotNull
public final List<? extends DomElement> getStableValues(@NotNull final DomElement parent) {
final List<? extends DomElement> list = getValues(parent);
@@ -117,6 +119,7 @@ public abstract class AbstractDomChildDescriptionImpl implements AbstractDomChil
for (int i = 0; i < list.size(); i++) {
final int i1 = i;
result.add(domManager.createStableValue(new Factory<DomElement>() {
+ @Override
@Nullable
public DomElement create() {
if (!parent.isValid()) return null;
@@ -130,11 +133,13 @@ public abstract class AbstractDomChildDescriptionImpl implements AbstractDomChil
}
+ @Override
@NotNull
public final Type getType() {
return myType;
}
+ @Override
@NotNull
public DomNameStrategy getDomNameStrategy(@NotNull DomElement parent) {
final DomNameStrategy strategy = DomImplUtil.getDomNameStrategy(ReflectionUtil.getRawType(getType()), false);
@@ -166,6 +171,7 @@ public abstract class AbstractDomChildDescriptionImpl implements AbstractDomChil
return myPresentationTemplate.getValue();
}
+ @Override
@Nullable
public PsiElement getDeclaration(final Project project) {
DomElement domDeclaration = getDomDeclaration();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/AddChildInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/AddChildInvocation.java
index 2bca8dd84e92..c7cbd2c0c67d 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/AddChildInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/AddChildInvocation.java
@@ -38,6 +38,7 @@ public class AddChildInvocation implements Invocation{
myType = type;
}
+ @Override
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return handler.addCollectionChild(myDescription, myClassGetter.fun(args), myIndexGetter.fun(args));
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/AddToCompositeCollectionInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/AddToCompositeCollectionInvocation.java
index da04e8edd1df..0f8af9b81c01 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/AddToCompositeCollectionInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/AddToCompositeCollectionInvocation.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,6 +36,7 @@ class AddToCompositeCollectionInvocation implements Invocation {
myType = type;
}
+ @Override
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
Set<XmlTag> set = ContainerUtil.newTroveSet();
for (final CollectionChildDescriptionImpl qname : myQnames) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildDescriptionImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildDescriptionImpl.java
index 076ab2812d09..945af2258c12 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildDescriptionImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildDescriptionImpl.java
@@ -43,6 +43,7 @@ public class AttributeChildDescriptionImpl extends DomChildDescriptionImpl imple
myGetterMethod = null;
}
+ @Override
@NotNull
public DomNameStrategy getDomNameStrategy(@NotNull DomElement parent) {
final DomNameStrategy strategy = DomImplUtil.getDomNameStrategy(ReflectionUtil.getRawType(getType()), true);
@@ -50,6 +51,7 @@ public class AttributeChildDescriptionImpl extends DomChildDescriptionImpl imple
}
+ @Override
public final JavaMethod getGetterMethod() {
return myGetterMethod;
}
@@ -59,22 +61,26 @@ public class AttributeChildDescriptionImpl extends DomChildDescriptionImpl imple
return "Attribute:" + getXmlName();
}
+ @Override
@Nullable
public <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
final JavaMethod method = getGetterMethod();
return method == null ? super.getAnnotation(annotationClass) : method.getAnnotation(annotationClass);
}
+ @Override
@NotNull
public List<? extends DomElement> getValues(@NotNull DomElement parent) {
return Arrays.asList(getDomAttributeValue(parent));
}
+ @Override
@NotNull
public String getCommonPresentableName(@NotNull DomNameStrategy strategy) {
throw new UnsupportedOperationException("Method getCommonPresentableName is not yet implemented in " + getClass().getName());
}
+ @Override
public GenericAttributeValue getDomAttributeValue(DomElement parent) {
final DomInvocationHandler handler = DomManagerImpl.getDomInvocationHandler(parent);
if (handler != null) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildInvocationHandler.java b/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildInvocationHandler.java
index 42099493d27d..c98e9319c414 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildInvocationHandler.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/AttributeChildInvocationHandler.java
@@ -48,17 +48,21 @@ public class AttributeChildInvocationHandler extends DomInvocationHandler<Attrib
super(description.getType(), strategy, attributeName, description, manager, false, stub);
}
+ @Override
public void acceptChildren(DomElementVisitor visitor) {
}
+ @Override
protected final XmlTag setEmptyXmlTag() {
return ensureTagExists();
}
+ @Override
protected boolean isAttribute() {
return true;
}
+ @Override
protected XmlElement recomputeXmlElement(@NotNull final DomInvocationHandler parent) {
if (!parent.isValid()) return null;
@@ -80,6 +84,7 @@ public class AttributeChildInvocationHandler extends DomInvocationHandler<Attrib
return tag.getNamespace().equals(ns) ? null : ns;
}
+ @Override
public final XmlAttribute ensureXmlElementExists() {
XmlAttribute attribute = (XmlAttribute)getXmlElement();
if (attribute != null) return attribute;
@@ -103,19 +108,23 @@ public class AttributeChildInvocationHandler extends DomInvocationHandler<Attrib
}
}
+ @Override
public <T extends DomElement> T createStableCopy() {
final DomElement parentCopy = getParent().createStableCopy();
return getManager().createStableValue(new Factory<T>() {
+ @Override
public T create() {
return parentCopy.isValid() ? (T) getChildDescription().getValues(parentCopy).get(0) : null;
}
});
}
+ @Override
public final void undefineInternal() {
final XmlTag tag = getXmlTag();
if (tag != null) {
getManager().runChange(new Runnable() {
+ @Override
public void run() {
try {
setXmlElement(null);
@@ -130,18 +139,21 @@ public class AttributeChildInvocationHandler extends DomInvocationHandler<Attrib
}
}
+ @Override
@Nullable
public final XmlTag getXmlTag() {
final DomInvocationHandler handler = getParentHandler();
return handler == null ? null : handler.getXmlTag();
}
+ @Override
public final XmlTag ensureTagExists() {
final DomInvocationHandler parent = getParentHandler();
assert parent != null : "write operations should be performed on the DOM having a parent, your DOM may be not very fresh";
return parent.ensureTagExists();
}
+ @Override
@Nullable
protected String getValue() {
if (myStub != null) {
@@ -157,10 +169,12 @@ public class AttributeChildInvocationHandler extends DomInvocationHandler<Attrib
return null;
}
+ @Override
public void copyFrom(final DomElement other) {
setValue(((GenericAttributeValue) other).getStringValue());
}
+ @Override
protected void setValue(@Nullable final String value) {
final XmlTag tag = ensureTagExists();
final String attributeName = getXmlElementName();
@@ -170,6 +184,7 @@ public class AttributeChildInvocationHandler extends DomInvocationHandler<Attrib
if (Comparing.equal(oldValue, newValue, true)) return;
getManager().runChange(new Runnable() {
+ @Override
public void run() {
try {
XmlAttribute attribute = tag.setAttribute(attributeName, namespace, newValue);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionChildDescriptionImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionChildDescriptionImpl.java
index 98d3e674d38a..b9f9871f811b 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionChildDescriptionImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionChildDescriptionImpl.java
@@ -41,6 +41,7 @@ import java.util.List;
public class CollectionChildDescriptionImpl extends DomChildDescriptionImpl implements DomCollectionChildDescription, AbstractCollectionChildDescription {
private final Collection<JavaMethod> myGetterMethods;
private final NotNullFunction<DomInvocationHandler, List<XmlTag>> myTagsGetter = new NotNullFunction<DomInvocationHandler, List<XmlTag>>() {
+ @Override
@NotNull
public List<XmlTag> fun(final DomInvocationHandler handler) {
XmlTag tag = handler.getXmlTag();
@@ -65,6 +66,7 @@ public class CollectionChildDescriptionImpl extends DomChildDescriptionImpl impl
return myTagsGetter;
}
+ @Override
public DomElement addValue(@NotNull DomElement element) {
assert element.getGenericInfo().getCollectionChildrenDescriptions().contains(this);
return addChild(element, getType(), Integer.MAX_VALUE);
@@ -81,24 +83,29 @@ public class CollectionChildDescriptionImpl extends DomChildDescriptionImpl impl
}
}
+ @Override
public DomElement addValue(@NotNull DomElement element, int index) {
return addChild(element, getType(), index);
}
+ @Override
public DomElement addValue(@NotNull DomElement parent, Type type) {
return addValue(parent, type, Integer.MAX_VALUE);
}
+ @Override
public final DomElement addValue(@NotNull DomElement parent, Type type, int index) {
return addChild(parent, type, index);
}
+ @Override
@Nullable
public final JavaMethod getGetterMethod() {
final Collection<JavaMethod> methods = myGetterMethods;
return methods.isEmpty() ? null : methods.iterator().next();
}
+ @Override
@NotNull
public List<? extends DomElement> getValues(@NotNull final DomElement element) {
final DomInvocationHandler handler = DomManagerImpl.getDomInvocationHandler(element);
@@ -109,6 +116,7 @@ public class CollectionChildDescriptionImpl extends DomChildDescriptionImpl impl
if (getterMethod == null) {
final Collection<DomElement> collection = ModelMergerUtil.getFilteredImplementations(element);
return ContainerUtil.concat(collection, new Function<DomElement, Collection<? extends DomElement>>() {
+ @Override
public Collection<? extends DomElement> fun(final DomElement domElement) {
final DomInvocationHandler handler = DomManagerImpl.getDomInvocationHandler(domElement);
assert handler != null : domElement;
@@ -119,12 +127,14 @@ public class CollectionChildDescriptionImpl extends DomChildDescriptionImpl impl
return (List<? extends DomElement>)getterMethod.invoke(element, ArrayUtil.EMPTY_OBJECT_ARRAY);
}
+ @Override
@NotNull
public String getCommonPresentableName(@NotNull DomNameStrategy strategy) {
String words = strategy.splitIntoWords(getXmlElementName());
return StringUtil.capitalizeWords(words.endsWith("es") ? words: StringUtil.pluralize(words), true);
}
+ @Override
@Nullable
public <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
final JavaMethod method = getGetterMethod();
@@ -137,10 +147,12 @@ public class CollectionChildDescriptionImpl extends DomChildDescriptionImpl impl
return elemType instanceof AnnotatedElement ? ((AnnotatedElement)elemType).getAnnotation(annotationClass) : super.getAnnotation(annotationClass);
}
+ @Override
public List<XmlTag> getSubTags(final DomInvocationHandler handler, final XmlTag[] subTags, final XmlFile file) {
return DomImplUtil.findSubTags(subTags, handler.createEvaluatedXmlName(getXmlName()), file);
}
+ @Override
public EvaluatedXmlName createEvaluatedXmlName(final DomInvocationHandler parent, final XmlTag childTag) {
return parent.createEvaluatedXmlName(getXmlName());
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionElementInvocationHandler.java b/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionElementInvocationHandler.java
index 7e294bd9eb9f..e30246ee6191 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionElementInvocationHandler.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/CollectionElementInvocationHandler.java
@@ -50,10 +50,12 @@ public class CollectionElementInvocationHandler extends DomInvocationHandler<Abs
}
+ @Override
protected Type narrowType(@NotNull final Type nominalType) {
return getStub() == null ? getManager().getTypeChooserManager().getTypeChooser(nominalType).chooseType(getXmlTag()) : nominalType;
}
+ @Override
protected final XmlTag setEmptyXmlTag() {
throw new UnsupportedOperationException("CollectionElementInvocationHandler.setXmlTag() shouldn't be called;" +
"\nparent=" + getParent() + ";\n" +
@@ -74,6 +76,7 @@ public class CollectionElementInvocationHandler extends DomInvocationHandler<Abs
return null;
}
+ @Override
public final void undefineInternal() {
final DomElement parent = getParent();
final XmlTag tag = getXmlTag();
@@ -85,6 +88,7 @@ public class CollectionElementInvocationHandler extends DomInvocationHandler<Abs
getManager().fireEvent(new DomEvent(parent, false));
}
+ @Override
public DomElement createPathStableCopy() {
final AbstractDomChildDescriptionImpl description = getChildDescription();
final DomElement parent = getParent();
@@ -92,6 +96,7 @@ public class CollectionElementInvocationHandler extends DomInvocationHandler<Abs
final DomElement parentCopy = parent.createStableCopy();
final int index = description.getValues(parent).indexOf(getProxy());
return getManager().createStableValue(new Factory<DomElement>() {
+ @Override
@Nullable
public DomElement create() {
if (parentCopy.isValid()) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertAnnotationImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertAnnotationImpl.java
index 2fcb9ebe2507..cd536620ec4f 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertAnnotationImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertAnnotationImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ public class ConvertAnnotationImpl implements Convert {
mySoft = soft;
}
+ @Override
public Class<? extends Annotation> annotationType() {
return Convert.class;
}
@@ -40,10 +41,12 @@ public class ConvertAnnotationImpl implements Convert {
return myConverter;
}
+ @Override
public Class<? extends Converter> value() {
return myConverter.getClass();
}
+ @Override
public boolean soft() {
return mySoft;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextFactory.java b/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextFactory.java
index 00035b823307..07d8a033ffbe 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextFactory.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextFactory.java
@@ -21,6 +21,7 @@ import com.intellij.util.xml.DomElement;
public class ConvertContextFactory {
public static ConvertContext createConvertContext(final DomElement element) {
return new ConvertContextImpl(DomManagerImpl.getDomInvocationHandler(element)) {
+ @Override
public DomElement getInvocationElement() {
return element;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextImpl.java
index 6478ba4b1f97..8c21795e6e7f 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/ConvertContextImpl.java
@@ -35,15 +35,18 @@ public class ConvertContextImpl extends AbstractConvertContext {
this(DomManagerImpl.getDomInvocationHandler(element));
}
+ @Override
@NotNull
public DomElement getInvocationElement() {
return myHandler.getProxy();
}
+ @Override
public PsiManager getPsiManager() {
return myHandler.getFile().getManager();
}
+ @Override
public Module getModule() {
final DomElement domElement = getInvocationElement();
if (domElement.getManager().isMockElement(domElement)) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/ConverterManagerImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/ConverterManagerImpl.java
index 199ec2646ff5..ef2bfc446739 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/ConverterManagerImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/ConverterManagerImpl.java
@@ -52,10 +52,12 @@ class ConverterManagerImpl implements ConverterManager {
mySimpleConverters.put(PathReference.class, PathReferenceConverter.INSTANCE);
}
+ @Override
public void addConverter(Class clazz, Converter converter) {
mySimpleConverters.put(clazz, converter);
}
+ @Override
@NotNull
public final Converter getConverterInstance(final Class<? extends Converter> converterClass) {
Converter converter = getInstance(converterClass);
@@ -67,6 +69,7 @@ class ConverterManagerImpl implements ConverterManager {
return (T)myConverterInstances.get(clazz);
}
+ @Override
@Nullable
public final Converter getConverterByClass(final Class<?> convertingClass) {
final Converter converter = mySimpleConverters.get(convertingClass);
@@ -83,6 +86,7 @@ class ConverterManagerImpl implements ConverterManager {
return null;
}
+ @Override
public <T extends Converter> void registerConverterImplementation(Class<T> converterInterface, T converterImpl) {
myConverterInstances.put(converterInterface, converterImpl);
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/CustomDomChildrenDescriptionImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/CustomDomChildrenDescriptionImpl.java
index b99eda0c7a09..b0e5d8ab9c29 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/CustomDomChildrenDescriptionImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/CustomDomChildrenDescriptionImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,6 +35,7 @@ import java.util.List;
public class CustomDomChildrenDescriptionImpl extends AbstractDomChildDescriptionImpl implements CustomDomChildrenDescription, AbstractCollectionChildDescription {
@Nullable private final JavaMethod myGetter;
public static final NotNullFunction<DomInvocationHandler,List<XmlTag>> CUSTOM_TAGS_GETTER = new NotNullFunction<DomInvocationHandler, List<XmlTag>>() {
+ @Override
@NotNull
public List<XmlTag> fun(final DomInvocationHandler handler) {
return DomImplUtil.getCustomSubTags(handler, handler.getXmlTag().getSubTags(), handler.getFile());
@@ -75,6 +76,7 @@ public class CustomDomChildrenDescriptionImpl extends AbstractDomChildDescriptio
return parent.getCollectionChildren(this, CUSTOM_TAGS_GETTER);
}
+ @Override
@NotNull
public List<? extends DomElement> getValues(@NotNull final DomElement parent) {
final DomInvocationHandler handler = DomManagerImpl.getDomInvocationHandler(parent);
@@ -84,14 +86,17 @@ public class CustomDomChildrenDescriptionImpl extends AbstractDomChildDescriptio
return (List<? extends DomElement>)myGetter.invoke(parent, ArrayUtil.EMPTY_OBJECT_ARRAY);
}
+ @Override
public int compareTo(final AbstractDomChildDescriptionImpl o) {
return equals(o) ? 0 : -1;
}
+ @Override
public List<XmlTag> getSubTags(final DomInvocationHandler handler, final XmlTag[] subTags, final XmlFile file) {
return DomImplUtil.getCustomSubTags(handler, subTags, file);
}
+ @Override
public EvaluatedXmlName createEvaluatedXmlName(final DomInvocationHandler parent, final XmlTag childTag) {
return new DummyEvaluatedXmlName(childTag.getLocalName(), childTag.getNamespace());
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomAnnotator.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomAnnotator.java
index 3b52e145d996..cff0b24831b3 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomAnnotator.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomAnnotator.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -63,6 +63,7 @@ public class DefaultDomAnnotator implements Annotator {
}
+ @Override
public void annotate(@NotNull final PsiElement psiElement, @NotNull AnnotationHolder holder) {
final List<Annotation> list = (List<Annotation>)holder;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetDescriptionProvider.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetDescriptionProvider.java
index dd016e721397..a31aaea1f5bc 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetDescriptionProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetDescriptionProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,6 +30,7 @@ import org.jetbrains.annotations.NotNull;
* @author peter
*/
public class DefaultDomTargetDescriptionProvider extends PomDescriptionProvider {
+ @Override
public String getElementDescription(@NotNull PomTarget element, @NotNull ElementDescriptionLocation location) {
if (!(element instanceof DomTarget)) return null;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetIconProvider.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetIconProvider.java
index e5540c1f25d5..6add1e8ebca4 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetIconProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DefaultDomTargetIconProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@ import javax.swing.*;
* @author peter
*/
public class DefaultDomTargetIconProvider extends DomIconProvider implements DumbAware {
+ @Override
public Icon getIcon(@NotNull DomElement element, int flags) {
Icon icon = element.getPresentation().getIcon();
return icon == null ? ElementPresentationManager.getIconOld(element) : icon;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomAnchorImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomAnchorImpl.java
index c93552557c70..94a35842baa6 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomAnchorImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomAnchorImpl.java
@@ -140,9 +140,11 @@ public abstract class DomAnchorImpl<T extends DomElement> implements DomAnchor<T
return t == null ? null : t.getXmlElement();
}
+ @Override
@Nullable
public abstract T retrieveDomElement();
+ @Override
@NotNull
public abstract XmlFile getContainingFile();
@@ -184,6 +186,7 @@ public abstract class DomAnchorImpl<T extends DomElement> implements DomAnchor<T
return result;
}
+ @Override
public T retrieveDomElement() {
final DomElement parent = myParent.retrieveDomElement();
if (parent == null) return null;
@@ -203,6 +206,7 @@ public abstract class DomAnchorImpl<T extends DomElement> implements DomAnchor<T
return null;
}
+ @Override
@NotNull
public XmlFile getContainingFile() {
return myParent.getContainingFile();
@@ -243,6 +247,7 @@ public abstract class DomAnchorImpl<T extends DomElement> implements DomAnchor<T
return result;
}
+ @Override
public T retrieveDomElement() {
final DomElement parent = myParent.retrieveDomElement();
if (parent == null) return null;
@@ -254,6 +259,7 @@ public abstract class DomAnchorImpl<T extends DomElement> implements DomAnchor<T
return (T)list.get(myIndex);
}
+ @Override
@NotNull
public XmlFile getContainingFile() {
return myParent.getContainingFile();
@@ -290,11 +296,13 @@ public abstract class DomAnchorImpl<T extends DomElement> implements DomAnchor<T
return result;
}
+ @Override
public T retrieveDomElement() {
final DomFileElement<T> fileElement = DomManager.getDomManager(myFile.getProject()).getFileElement(myFile, myClass);
return fileElement == null ? null : fileElement.getRootElement();
}
+ @Override
@NotNull
public XmlFile getContainingFile() {
return myFile;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomApplicationComponent.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomApplicationComponent.java
index c2687fddc860..061ab6ac83c4 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomApplicationComponent.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomApplicationComponent.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,6 +43,7 @@ import static com.intellij.util.containers.ContainerUtil.newArrayList;
*/
public class DomApplicationComponent {
private final FactoryMap<String,Set<DomFileDescription>> myRootTagName2FileDescription = new FactoryMap<String, Set<DomFileDescription>>() {
+ @Override
protected Set<DomFileDescription> create(final String key) {
return new THashSet<DomFileDescription>();
}
@@ -76,6 +77,7 @@ public class DomApplicationComponent {
});
private final ConcurrentFactoryMap<Class<? extends DomElementVisitor>, VisitorDescription> myVisitorDescriptions =
new ConcurrentFactoryMap<Class<? extends DomElementVisitor>, VisitorDescription>() {
+ @Override
@NotNull
protected VisitorDescription create(final Class<? extends DomElementVisitor> key) {
return new VisitorDescription(key);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomChildDescriptionImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomChildDescriptionImpl.java
index 90ce7d2950a0..d53fbd04798d 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomChildDescriptionImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomChildDescriptionImpl.java
@@ -33,20 +33,24 @@ public abstract class DomChildDescriptionImpl extends AbstractDomChildDescriptio
myTagName = tagName;
}
+ @Override
public String getName() {
return myTagName.getLocalName();
}
+ @Override
@NotNull
public String getXmlElementName() {
return myTagName.getLocalName();
}
+ @Override
@NotNull
public final XmlName getXmlName() {
return myTagName;
}
+ @Override
@NotNull
public String getCommonPresentableName(@NotNull DomElement parent) {
return getCommonPresentableName(getDomNameStrategy(parent));
@@ -69,6 +73,7 @@ public abstract class DomChildDescriptionImpl extends AbstractDomChildDescriptio
return result;
}
+ @Override
public int compareTo(final AbstractDomChildDescriptionImpl o) {
return o instanceof DomChildDescriptionImpl ? myTagName.compareTo(((DomChildDescriptionImpl)o).myTagName) : 1;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomDeclarationSearcher.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomDeclarationSearcher.java
index 937cec88b61e..2235f7b52ae3 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomDeclarationSearcher.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomDeclarationSearcher.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,6 +26,7 @@ import org.jetbrains.annotations.Nullable;
*/
public class DomDeclarationSearcher extends AbstractDomDeclarationSearcher {
+ @Override
@Nullable
protected DomTarget createDomTarget(DomElement parent, DomElement nameElement) {
final NameValue nameValue = nameElement.getAnnotation(NameValue.class);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomDescriptorProvider.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomDescriptorProvider.java
index 9fe2273d9a83..64c797cb69f6 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomDescriptorProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomDescriptorProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ import org.jetbrains.annotations.Nullable;
*/
public class DomDescriptorProvider implements XmlElementDescriptorProvider {
+ @Override
@Nullable
public XmlElementDescriptor getDescriptor(final XmlTag tag) {
Project project = tag.getProject();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomElementsNavigationManagerImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomElementsNavigationManagerImpl.java
index 6744005c2c63..a551133bfdc3 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomElementsNavigationManagerImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomElementsNavigationManagerImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,6 +43,7 @@ public class DomElementsNavigationManagerImpl extends DomElementsNavigationManag
myProviders.put(myTextEditorProvider.getProviderName(), myTextEditorProvider);
}
+ @Override
public Set<DomElementNavigationProvider> getDomElementsNavigateProviders(DomElement domElement) {
Set<DomElementNavigationProvider> result = new HashSet<DomElementNavigationProvider>();
@@ -52,20 +53,24 @@ public class DomElementsNavigationManagerImpl extends DomElementsNavigationManag
return result;
}
+ @Override
public DomElementNavigationProvider getDomElementsNavigateProvider(String providerName) {
return myProviders.get(providerName);
}
+ @Override
public void registerDomElementsNavigateProvider(DomElementNavigationProvider provider) {
myProviders.put(provider.getProviderName(), provider);
}
private class MyDomElementNavigateProvider extends DomElementNavigationProvider {
+ @Override
public String getProviderName() {
return DEFAULT_PROVIDER_NAME;
}
+ @Override
public void navigate(DomElement domElement, boolean requestFocus) {
if (!domElement.isValid()) return;
@@ -84,6 +89,7 @@ public class DomElementsNavigationManagerImpl extends DomElementsNavigationManag
FileEditorManagerEx.getInstanceEx(myProject).openTextEditor(fileDescriptor, requestFocus);
}
+ @Override
public boolean canNavigate(DomElement domElement) {
return domElement != null && domElement.isValid();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomFileElementImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomFileElementImpl.java
index ea02aa888f83..b1546cbd5a46 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomFileElementImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomFileElementImpl.java
@@ -18,6 +18,7 @@ package com.intellij.util.xml.impl;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleUtil;
+import com.intellij.openapi.module.ModuleUtilCore;
import com.intellij.openapi.util.Factory;
import com.intellij.openapi.util.Key;
import com.intellij.psi.search.GlobalSearchScope;
@@ -47,74 +48,89 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
private static final Logger LOG = Logger.getInstance("#com.intellij.util.xml.impl.DomFileElementImpl");
private static final DomGenericInfo EMPTY_DOM_GENERIC_INFO = new DomGenericInfo() {
+ @Override
@Nullable
public XmlElement getNameElement(DomElement element) {
return null;
}
+ @Override
@Nullable
public GenericDomValue getNameDomElement(DomElement element) {
return null;
}
+ @Override
@NotNull
public List<? extends CustomDomChildrenDescription> getCustomNameChildrenDescription() {
return Collections.emptyList();
}
+ @Override
@Nullable
public String getElementName(DomElement element) {
return null;
}
+ @Override
@NotNull
public List<DomChildrenDescription> getChildrenDescriptions() {
return Collections.emptyList();
}
+ @Override
@NotNull
public List<DomFixedChildDescription> getFixedChildrenDescriptions() {
return Collections.emptyList();
}
+ @Override
@NotNull
public List<DomCollectionChildDescription> getCollectionChildrenDescriptions() {
return Collections.emptyList();
}
+ @Override
@NotNull
public List<DomAttributeChildDescription> getAttributeChildrenDescriptions() {
return Collections.emptyList();
}
+ @Override
public boolean isTagValueElement() {
return false;
}
+ @Override
@Nullable
public DomFixedChildDescription getFixedChildDescription(String tagName) {
return null;
}
+ @Override
@Nullable
public DomFixedChildDescription getFixedChildDescription(@NonNls String tagName, @NonNls String namespace) {
return null;
}
+ @Override
@Nullable
public DomCollectionChildDescription getCollectionChildDescription(String tagName) {
return null;
}
+ @Override
@Nullable
public DomCollectionChildDescription getCollectionChildDescription(@NonNls String tagName, @NonNls String namespace) {
return null;
}
+ @Override
public DomAttributeChildDescription getAttributeChildDescription(String attributeName) {
return null;
}
+ @Override
@Nullable
public DomAttributeChildDescription getAttributeChildDescription(@NonNls String attributeName, @NonNls String namespace) {
return null;
@@ -144,16 +160,19 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
stub == null ? null : stub.getRootTagStub());
}
+ @Override
@NotNull
public final XmlFile getFile() {
return myFile;
}
+ @Override
@NotNull
public XmlFile getOriginalFile() {
return (XmlFile)myFile.getOriginalFile();
}
+ @Override
@Nullable
public XmlTag getRootTag() {
if (!myFile.isValid()) {
@@ -195,65 +214,80 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
return result;
}
+ @Override
@NotNull
public final DomManagerImpl getManager() {
return myManager;
}
+ @Override
public final Type getDomElementType() {
return getClass();
}
+ @Override
@NotNull
public AbstractDomChildrenDescription getChildDescription() {
throw new UnsupportedOperationException("Method getChildDescription is not yet implemented in " + getClass().getName());
}
+ @Override
public DomNameStrategy getNameStrategy() {
return getRootHandler().getNameStrategy();
}
+ @Override
@NotNull
public ElementPresentation getPresentation() {
return new ElementPresentation() {
+ @Override
public @NonNls String getElementName() {
return "<ROOT>";
}
+ @Override
public @NonNls String getTypeName() {
return "<ROOT>";
}
+ @Override
public Icon getIcon() {
return null;
}
};
}
+ @Override
public GlobalSearchScope getResolveScope() {
return myFile.getResolveScope();
}
+ @Override
@Nullable
public <T extends DomElement> T getParentOfType(Class<T> requiredClass, boolean strict) {
return DomFileElement.class.isAssignableFrom(requiredClass) && !strict ? (T)this : null;
}
+ @Override
public Module getModule() {
- return ModuleUtil.findModuleForPsiElement(getFile());
+ return ModuleUtilCore.findModuleForPsiElement(getFile());
}
+ @Override
public void copyFrom(DomElement other) {
throw new UnsupportedOperationException("Method copyFrom is not yet implemented in " + getClass().getName());
}
+ @Override
public final <T extends DomElement> T createMockCopy(final boolean physical) {
throw new UnsupportedOperationException("Method createMockCopy is not yet implemented in " + getClass().getName());
}
+ @Override
public final <T extends DomElement> T createStableCopy() {
return myManager.createStableValue(new Factory<T>() {
+ @Override
@Nullable
public T create() {
return (T)myManager.getFileElement(myFile);
@@ -261,17 +295,20 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
});
}
+ @Override
@NotNull
public String getXmlElementNamespace() {
return "";
}
+ @Override
@Nullable
@NonNls
public String getXmlElementNamespaceKey() {
return null;
}
+ @Override
@NotNull
public final T getRootElement() {
if (!isValid()) {
@@ -291,11 +328,13 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
return (T)getRootHandler().getProxy();
}
+ @Override
@NotNull
public Class<T> getRootElementClass() {
return myRootElementClass;
}
+ @Override
@NotNull
public DomFileDescription<T> getFileDescription() {
return myFileDescription;
@@ -310,10 +349,12 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
return "File " + myFile.toString();
}
+ @Override
public <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
return null;
}
+ @Override
public final XmlTag getXmlTag() {
return null;
}
@@ -323,26 +364,32 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
return (DomFileElementImpl<T>)this;
}
+ @Override
@Nullable
public DomElement getParent() {
return null;
}
+ @Override
public final XmlTag ensureTagExists() {
return null;
}
+ @Override
public final XmlElement getXmlElement() {
return getFile();
}
+ @Override
public final XmlElement ensureXmlElementExists() {
return ensureTagExists();
}
+ @Override
public void undefine() {
}
+ @Override
public final boolean isValid() {
return checkValidity() == null;
}
@@ -364,32 +411,39 @@ public class DomFileElementImpl<T extends DomElement> implements DomFileElement<
return null;
}
+ @Override
@NotNull
public final DomGenericInfo getGenericInfo() {
return EMPTY_DOM_GENERIC_INFO;
}
+ @Override
@NotNull
public String getXmlElementName() {
return "";
}
+ @Override
public void accept(final DomElementVisitor visitor) {
myManager.getApplicationComponent().getVisitorDescription(visitor.getClass()).acceptElement(visitor, this);
}
+ @Override
public void acceptChildren(DomElementVisitor visitor) {
getRootElement().accept(visitor);
}
+ @Override
public <T> T getUserData(@NotNull Key<T> key) {
return (T)myUserData.get(key);
}
+ @Override
public <T> void putUserData(@NotNull Key<T> key, T value) {
myUserData.put(key, value);
}
+ @Override
public final long getModificationCount() {
return myFile.getModificationStamp();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomGenericInfoEx.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomGenericInfoEx.java
index 64ffab046f8a..918469068209 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomGenericInfoEx.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomGenericInfoEx.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,6 +38,7 @@ public abstract class DomGenericInfoEx implements DomGenericInfo {
@Nullable
public abstract Invocation createInvocation(final JavaMethod method);
+ @Override
@NotNull
public abstract List<AttributeChildDescriptionImpl> getAttributeChildrenDescriptions();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomImplUtil.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomImplUtil.java
index a5e38a39b6c4..66507138ed2d 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomImplUtil.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomImplUtil.java
@@ -152,6 +152,7 @@ public class DomImplUtil {
}
return ContainerUtil.findAll(tags, new Condition<XmlTag>() {
+ @Override
public boolean value(XmlTag childTag) {
try {
return isNameSuitable(name, childTag.getLocalName(), childTag.getName(), childTag.getNamespace(), file);
@@ -176,6 +177,7 @@ public class DomImplUtil {
}
return ContainerUtil.findAll(tags, new Condition<XmlTag>() {
+ @Override
public boolean value(XmlTag childTag) {
return isNameSuitable(name, childTag, file);
}
@@ -272,6 +274,7 @@ public class DomImplUtil {
usedNames.add(description.getXmlName());
}
return ContainerUtil.findAll(subTags, new Condition<XmlTag>() {
+ @Override
public boolean value(final XmlTag tag) {
if (StringUtil.isEmpty(tag.getName())) return false;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java
index af3aef0a9f10..bdad1cf47d75 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java
@@ -18,6 +18,7 @@ package com.intellij.util.xml.impl;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleUtil;
+import com.intellij.openapi.module.ModuleUtilCore;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.util.NullableFactory;
import com.intellij.openapi.util.Pair;
@@ -108,6 +109,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return nominalType;
}
+ @Override
@Nullable
public DomElement getParent() {
final DomInvocationHandler handler = getParentHandler();
@@ -131,6 +133,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return myStub;
}
+ @Override
@NotNull
public final Type getDomElementType() {
return myType;
@@ -145,6 +148,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
protected void setValue(@Nullable final String value) {
final XmlTag tag = ensureTagExists();
myManager.runChange(new Runnable() {
+ @Override
public void run() {
setTagValue(tag, value);
}
@@ -152,6 +156,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
myManager.fireEvent(new DomEvent(getProxy(), false));
}
+ @Override
public void copyFrom(final DomElement other) {
if (other == getProxy()) return;
assert other.getDomElementType().equals(myType) : "Can't copy from " + other.getDomElementType() + " to " + myType;
@@ -162,6 +167,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
}
myManager.performAtomicChange(new Runnable() {
+ @Override
public void run() {
ensureXmlElementExists();
final DomGenericInfoEx genericInfo = getGenericInfo();
@@ -203,6 +209,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
}
}
+ @Override
public <T extends DomElement> T createStableCopy() {
XmlTag tag = getXmlTag();
if (tag != null && tag.isPhysical()) {
@@ -221,12 +228,14 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
throw new UnsupportedOperationException();
}
+ @Override
public final <T extends DomElement> T createMockCopy(final boolean physical) {
final T copy = myManager.createMockElement((Class<? extends T>)getRawType(), getProxy().getModule(), physical);
copy.copyFrom(getProxy());
return copy;
}
+ @Override
@NotNull
public String getXmlElementNamespace() {
final DomInvocationHandler parent = getParentHandler();
@@ -236,16 +245,19 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return getXmlName().getNamespace(element, getFile());
}
+ @Override
@Nullable
public String getXmlElementNamespaceKey() {
return getXmlName().getXmlName().getNamespaceKey();
}
+ @Override
public final Module getModule() {
- final Module module = ModuleUtil.findModuleForPsiElement(getFile());
- return module != null ? module : DomUtil.getFile(this).getUserData(DomManagerImpl.MOCK_ELEMENT_MODULE);
+ final Module module = ModuleUtilCore.findModuleForPsiElement(getFile());
+ return module != null ? module : DomUtil.getFile(this).getUserData(DomManager.MOCK_ELEMENT_MODULE);
}
+ @Override
public XmlTag ensureTagExists() {
assertValid();
@@ -262,10 +274,12 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return getXmlTag();
}
+ @Override
public XmlElement getXmlElement() {
return getParentStrategy().getXmlElement();
}
+ @Override
public boolean exists() {
return getParentStrategy().isPhysical();
}
@@ -275,6 +289,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return myParentStrategy;
}
+ @Override
public XmlElement ensureXmlElementExists() {
return ensureTagExists();
}
@@ -295,6 +310,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return getXmlTag().createChildTag(localName, tagName.getNamespace(element, getFile()), null, false);
}
+ @Override
public final boolean isValid() {
return checkValidity() == null;
}
@@ -342,6 +358,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
}
+ @Override
@NotNull
public final DomGenericInfoEx getGenericInfo() {
return myGenericInfo;
@@ -349,6 +366,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
protected abstract void undefineInternal();
+ @Override
public final void undefine() {
undefineInternal();
}
@@ -398,6 +416,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
}
}
+ @Override
@NotNull
public final String getXmlElementName() {
return myTagName.getXmlName().getLocalName();
@@ -408,11 +427,13 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return myTagName;
}
+ @Override
public void accept(final DomElementVisitor visitor) {
ProgressManager.checkCanceled();
myManager.getApplicationComponent().getVisitorDescription(visitor.getClass()).acceptElement(visitor, getProxy());
}
+ @Override
@SuppressWarnings("ForLoopReplaceableByForEach")
public void acceptChildren(DomElementVisitor visitor) {
ProgressManager.checkCanceled();
@@ -463,10 +484,12 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return converter;
}
+ @Override
public final T getChildDescription() {
return myChildDescription;
}
+ @Override
@Nullable
public <T extends Annotation> T getAnnotation(final Class<T> annotationClass) {
final AnnotatedElement childDescription = getChildDescription();
@@ -529,6 +552,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return getParentStrategy().getContainingFile(this);
}
+ @Override
@NotNull
public DomNameStrategy getNameStrategy() {
final Class<?> rawType = getRawType();
@@ -544,6 +568,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return false;
}
+ @Override
@NotNull
public ElementPresentation getPresentation() {
ElementPresentationTemplate template = getChildDescription().getPresentationTemplate();
@@ -551,20 +576,24 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return template.createPresentation(getProxy());
}
return new ElementPresentation() {
+ @Override
public String getElementName() {
return ElementPresentationManager.getElementName(getProxy());
}
+ @Override
public String getTypeName() {
return ElementPresentationManager.getTypeNameForObject(getProxy());
}
+ @Override
public Icon getIcon() {
return ElementPresentationManager.getIconOld(getProxy());
}
};
}
+ @Override
public final GlobalSearchScope getResolveScope() {
return DomUtil.getFile(this).getResolveScope();
}
@@ -576,6 +605,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return (T)element;
}
+ @Override
public final <T extends DomElement> T getParentOfType(Class<T> requiredClass, boolean strict) {
return _getParentOfType(requiredClass, strict ? getParent() : getProxy());
}
@@ -643,6 +673,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return new AttributeChildInvocationHandler(evaluatedXmlName, description, myManager, new VirtualDomParentStrategy(this), null);
}
+ @Override
@Nullable
public final Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
try {
@@ -700,6 +731,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return ReflectionUtil.getRawType(myType);
}
+ @Override
@Nullable
public XmlTag getXmlTag() {
return (XmlTag) getXmlElement();
@@ -743,6 +775,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
myGenericInfo = dynamic ? new DynamicGenericInfo(this, staticInfo) : staticInfo;
}
+ @Override
@NotNull
public final DomManagerImpl getManager() {
return myManager;
@@ -855,6 +888,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
myHandlerClass = aClass;
}
+ @Override
public T create() {
final XmlTag tag = myPointer.getElement();
if (tag == null || !tag.isValid()) return null;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomManagerImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomManagerImpl.java
index 64b36ad865f4..7614c25ff4ad 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomManagerImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomManagerImpl.java
@@ -93,6 +93,7 @@ public final class DomManagerImpl extends DomManager {
final PomModel pomModel = PomManager.getModel(project);
pomModel.addModelListener(new PomModelListener() {
+ @Override
public void modelChanged(PomModelEvent event) {
if (myChanging) return;
@@ -107,6 +108,7 @@ public final class DomManagerImpl extends DomManager {
}
}
+ @Override
public boolean isAspectChangeInteresting(PomModelAspect aspect) {
return aspect instanceof XmlAspect;
}
@@ -115,6 +117,7 @@ public final class DomManagerImpl extends DomManager {
VirtualFileManager.getInstance().addVirtualFileListener(new VirtualFileAdapter() {
private final List<DomEvent> myDeletionEvents = new SmartList<DomEvent>();
+ @Override
public void contentsChanged(@NotNull VirtualFileEvent event) {
if (!event.isFromSave()) {
fireEvents(calcDomChangeEvents(event.getFile()));
@@ -126,10 +129,12 @@ public final class DomManagerImpl extends DomManager {
fireEvents(calcDomChangeEvents(event.getFile()));
}
+ @Override
public void beforeFileDeletion(@NotNull final VirtualFileEvent event) {
myDeletionEvents.addAll(calcDomChangeEvents(event.getFile()));
}
+ @Override
public void fileDeleted(@NotNull VirtualFileEvent event) {
if (!myDeletionEvents.isEmpty()) {
fireEvents(myDeletionEvents);
@@ -137,6 +142,7 @@ public final class DomManagerImpl extends DomManager {
}
}
+ @Override
public void propertyChanged(@NotNull VirtualFilePropertyEvent event) {
final VirtualFile file = event.getFile();
if (!file.isDirectory() && VirtualFile.PROP_NAME.equals(event.getPropertyName())) {
@@ -193,18 +199,22 @@ public final class DomManagerImpl extends DomManager {
return (DomManagerImpl)DomManager.getDomManager(project);
}
+ @Override
public void addDomEventListener(DomEventListener listener, Disposable parentDisposable) {
myListeners.addListener(listener, parentDisposable);
}
+ @Override
public final ConverterManager getConverterManager() {
return ServiceManager.getService(ConverterManager.class);
}
+ @Override
public final void addPsiReferenceFactoryForClass(Class clazz, PsiReferenceFactory psiReferenceFactory) {
myGenericValueReferenceProvider.addReferenceProviderForClass(clazz, psiReferenceFactory);
}
+ @Override
public final ModelMerger createModelMerger() {
return new ModelMergerImpl();
}
@@ -221,6 +231,7 @@ public final class DomManagerImpl extends DomManager {
}
}
+ @Override
public final DomGenericInfo getGenericInfo(final Type type) {
return myApplicationComponent.getStaticGenericInfo(type);
}
@@ -262,10 +273,12 @@ public final class DomManagerImpl extends DomManager {
return myApplicationComponent;
}
+ @Override
public final Project getProject() {
return myProject;
}
+ @Override
@NotNull
public final <T extends DomElement> DomFileElementImpl<T> getFileElement(final XmlFile file, final Class<T> aClass, String rootTagName) {
//noinspection unchecked
@@ -319,6 +332,7 @@ public final class DomManagerImpl extends DomManager {
return oldChanging;
}
+ @Override
@Nullable
public final <T extends DomElement> DomFileElementImpl<T> getFileElement(XmlFile file) {
if (file == null) return null;
@@ -334,6 +348,7 @@ public final class DomManagerImpl extends DomManager {
return SoftReference.dereference(file.getUserData(CACHED_FILE_ELEMENT));
}
+ @Override
@Nullable
public final <T extends DomElement> DomFileElementImpl<T> getFileElement(XmlFile file, Class<T> domClass) {
final DomFileDescription description = getDomFileDescription(file);
@@ -343,6 +358,7 @@ public final class DomManagerImpl extends DomManager {
return null;
}
+ @Override
@Nullable
public final DomElement getDomElement(final XmlTag element) {
if (myChanging) return null;
@@ -351,6 +367,7 @@ public final class DomManagerImpl extends DomManager {
return handler != null ? handler.getProxy() : null;
}
+ @Override
@Nullable
public GenericAttributeValue getDomElement(final XmlAttribute attribute) {
if (myChanging) return null;
@@ -372,6 +389,7 @@ public final class DomManagerImpl extends DomManager {
return mySemService.getSemElement(DOM_HANDLER_KEY, tag);
}
+ @Override
@Nullable
public AbstractDomChildrenDescription findChildrenDescription(@NotNull final XmlTag tag, @NotNull final DomElement parent) {
return findChildrenDescription(tag, getDomInvocationHandler(parent));
@@ -397,6 +415,7 @@ public final class DomManagerImpl extends DomManager {
return null;
}
+ @Override
public final <T extends DomElement> T createMockElement(final Class<T> aClass, final Module module, final boolean physical) {
final XmlFile file = (XmlFile)PsiFileFactory.getInstance(myProject).createFileFromText("a.xml", StdFileTypes.XML, "", (long)0, physical);
file.putUserData(MOCK_ELEMENT_MODULE, module);
@@ -404,18 +423,22 @@ public final class DomManagerImpl extends DomManager {
return getFileElement(file, aClass, "I_sincerely_hope_that_nobody_will_have_such_a_root_tag_name").getRootElement();
}
+ @Override
public final boolean isMockElement(DomElement element) {
return DomUtil.getFile(element).getUserData(MOCK) != null;
}
+ @Override
public final <T extends DomElement> T createStableValue(final Factory<T> provider) {
return createStableValue(provider, new Condition<T>() {
+ @Override
public boolean value(T t) {
return t.isValid();
}
});
}
+ @Override
public final <T> T createStableValue(final Factory<T> provider, final Condition<T> validator) {
final T initial = provider.create();
assert initial != null;
@@ -433,6 +456,7 @@ public final class DomManagerImpl extends DomManager {
public final <T extends DomElement> void registerFileDescription(final DomFileDescription<T> description, Disposable parentDisposable) {
registerFileDescription(description);
Disposer.register(parentDisposable, new Disposable() {
+ @Override
public void dispose() {
getFileDescriptions(description.getRootTagName()).remove(description);
getAcceptingOtherRootTagNameDescriptions().remove(description);
@@ -440,28 +464,33 @@ public final class DomManagerImpl extends DomManager {
});
}
+ @Override
public final void registerFileDescription(final DomFileDescription description) {
mySemService.clearCache();
myApplicationComponent.registerFileDescription(description);
}
+ @Override
@NotNull
public final DomElement getResolvingScope(GenericDomValue element) {
final DomFileDescription<?> description = DomUtil.getFileElement(element).getFileDescription();
return description.getResolveScope(element);
}
+ @Override
@Nullable
public final DomElement getIdentityScope(DomElement element) {
final DomFileDescription description = DomUtil.getFileElement(element).getFileDescription();
return description.getIdentityScope(element);
}
+ @Override
public TypeChooserManager getTypeChooserManager() {
return myApplicationComponent.getTypeChooserManager();
}
+ @Override
public long getModificationCount() {
return myModificationCount + PsiManager.getInstance(myProject).getModificationTracker().getOutOfCodeBlockModificationCount();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomMetaDataContributor.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomMetaDataContributor.java
index 4e93b5420440..4a0d5833e00c 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomMetaDataContributor.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomMetaDataContributor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ public class DomMetaDataContributor implements MetaDataContributor {
@Override
public void contributeMetaData(MetaDataRegistrar registrar) {
registrar.registerMetaData(new ElementFilter() {
+ @Override
public boolean isAcceptable(Object element, PsiElement context) {
if (element instanceof XmlTag) {
final XmlTag tag = (XmlTag)element;
@@ -42,6 +43,7 @@ public class DomMetaDataContributor implements MetaDataContributor {
return false;
}
+ @Override
public boolean isClassAcceptable(Class hintClass) {
return XmlTag.class.isAssignableFrom(hintClass);
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomReferenceContributor.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomReferenceContributor.java
index 9c1d04b48a59..f44fe05c92d1 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomReferenceContributor.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomReferenceContributor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,6 +23,7 @@ import com.intellij.patterns.XmlPatterns;
* @author peter
*/
public class DomReferenceContributor extends PsiReferenceContributor{
+ @Override
public void registerReferenceProviders(final PsiReferenceRegistrar registrar) {
GenericValueReferenceProvider provider = new GenericValueReferenceProvider();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomRootInvocationHandler.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomRootInvocationHandler.java
index f10476216f47..f7d831ebec23 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomRootInvocationHandler.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomRootInvocationHandler.java
@@ -48,11 +48,13 @@ public class DomRootInvocationHandler extends DomInvocationHandler<AbstractDomCh
@Nullable ElementStub stub
) {
super(aClass, strategy, tagName, new AbstractDomChildDescriptionImpl(aClass) {
+ @Override
@NotNull
public List<? extends DomElement> getValues(@NotNull final DomElement parent) {
throw new UnsupportedOperationException();
}
+ @Override
public int compareTo(final AbstractDomChildDescriptionImpl o) {
throw new UnsupportedOperationException();
}
@@ -60,6 +62,7 @@ public class DomRootInvocationHandler extends DomInvocationHandler<AbstractDomCh
myParent = fileElement;
}
+ @Override
public void undefineInternal() {
try {
final XmlTag tag = getXmlTag();
@@ -91,6 +94,7 @@ public class DomRootInvocationHandler extends DomInvocationHandler<AbstractDomCh
getXmlElement() != null;
}
+ @Override
@NotNull
public String getXmlElementNamespace() {
return getXmlName().getNamespace(getFile(), getFile());
@@ -111,23 +115,28 @@ public class DomRootInvocationHandler extends DomInvocationHandler<AbstractDomCh
return null;
}
+ @Override
@NotNull
public DomFileElementImpl getParent() {
return myParent;
}
+ @Override
public DomElement createPathStableCopy() {
final DomFileElement stableCopy = myParent.createStableCopy();
return getManager().createStableValue(new NullableFactory<DomElement>() {
+ @Override
public DomElement create() {
return stableCopy.isValid() ? stableCopy.getRootElement() : null;
}
});
}
+ @Override
protected XmlTag setEmptyXmlTag() {
final XmlTag[] result = new XmlTag[]{null};
getManager().runChange(new Runnable() {
+ @Override
public void run() {
try {
final String namespace = getXmlElementNamespace();
@@ -144,6 +153,7 @@ public class DomRootInvocationHandler extends DomInvocationHandler<AbstractDomCh
return result[0];
}
+ @Override
@NotNull
public final DomNameStrategy getNameStrategy() {
final Class<?> rawType = getRawType();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomSemContributor.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomSemContributor.java
index 9e44e4f3a857..f5a68aab0ee5 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomSemContributor.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomSemContributor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -60,8 +60,10 @@ public class DomSemContributor extends SemContributor {
mySemService = semService;
}
+ @Override
public void registerSemProviders(SemRegistrar registrar) {
registrar.registerSemElementProvider(DomManagerImpl.FILE_DESCRIPTION_KEY, xmlFile(), new NullableFunction<XmlFile, FileDescriptionCachedValueProvider>() {
+ @Override
public FileDescriptionCachedValueProvider fun(XmlFile xmlFile) {
ApplicationManager.getApplication().assertReadAccessAllowed();
return new FileDescriptionCachedValueProvider(DomManagerImpl.getDomManager(xmlFile.getProject()), xmlFile);
@@ -69,6 +71,7 @@ public class DomSemContributor extends SemContributor {
});
registrar.registerSemElementProvider(DomManagerImpl.DOM_HANDLER_KEY, xmlTag().withParent(psiElement(XmlElementType.XML_DOCUMENT).withParent(xmlFile())), new NullableFunction<XmlTag, DomInvocationHandler>() {
+ @Override
public DomInvocationHandler fun(XmlTag xmlTag) {
final FileDescriptionCachedValueProvider provider =
mySemService.getSemElement(DomManagerImpl.FILE_DESCRIPTION_KEY, xmlTag.getContainingFile());
@@ -86,6 +89,7 @@ public class DomSemContributor extends SemContributor {
final ElementPattern<XmlTag> nonRootTag = xmlTag().withParent(or(xmlTag(), xmlEntityRef().withParent(xmlTag())));
registrar.registerSemElementProvider(DomManagerImpl.DOM_INDEXED_HANDLER_KEY, nonRootTag, new NullableFunction<XmlTag, IndexedElementInvocationHandler>() {
+ @Override
public IndexedElementInvocationHandler fun(XmlTag tag) {
final XmlTag parentTag = PhysicalDomParentStrategy.getParentTag(tag);
assert parentTag != null;
@@ -129,6 +133,7 @@ public class DomSemContributor extends SemContributor {
});
registrar.registerSemElementProvider(DomManagerImpl.DOM_COLLECTION_HANDLER_KEY, nonRootTag, new NullableFunction<XmlTag, CollectionElementInvocationHandler>() {
+ @Override
public CollectionElementInvocationHandler fun(XmlTag tag) {
final XmlTag parentTag = PhysicalDomParentStrategy.getParentTag(tag);
assert parentTag != null;
@@ -156,6 +161,7 @@ public class DomSemContributor extends SemContributor {
registrar.registerSemElementProvider(DomManagerImpl.DOM_CUSTOM_HANDLER_KEY, nonRootTag, new NullableFunction<XmlTag, CollectionElementInvocationHandler>() {
private final RecursionGuard myGuard = RecursionManager.createGuard("customDomParent");
+ @Override
public CollectionElementInvocationHandler fun(XmlTag tag) {
if (StringUtil.isEmpty(tag.getName())) return null;
@@ -199,6 +205,7 @@ public class DomSemContributor extends SemContributor {
});
registrar.registerSemElementProvider(DomManagerImpl.DOM_ATTRIBUTE_HANDLER_KEY, xmlAttribute(), new NullableFunction<XmlAttribute, AttributeChildInvocationHandler>() {
+ @Override
public AttributeChildInvocationHandler fun(final XmlAttribute attribute) {
final XmlTag tag = PhysicalDomParentStrategy.getParentTag(attribute);
final DomInvocationHandler handler = getParentDom(tag);
@@ -207,6 +214,7 @@ public class DomSemContributor extends SemContributor {
final String localName = attribute.getLocalName();
final Ref<AttributeChildInvocationHandler> result = Ref.create(null);
handler.getGenericInfo().processAttributeChildrenDescriptions(new Processor<AttributeChildDescriptionImpl>() {
+ @Override
public boolean process(AttributeChildDescriptionImpl description) {
if (description.getXmlName().getLocalName().equals(localName)) {
final EvaluatedXmlName evaluatedXmlName = handler.createEvaluatedXmlName(description.getXmlName());
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomServiceImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomServiceImpl.java
index b63a29d31783..94987bc604a9 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomServiceImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomServiceImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -56,8 +56,10 @@ import java.util.List;
public class DomServiceImpl extends DomService {
private static final Key<CachedValue<XmlFileHeader>> ROOT_TAG_NS_KEY = Key.create("rootTag&ns");
private static final UserDataCache<CachedValue<XmlFileHeader>,XmlFile,Object> ourRootTagCache = new UserDataCache<CachedValue<XmlFileHeader>, XmlFile, Object>() {
+ @Override
protected CachedValue<XmlFileHeader> compute(final XmlFile file, final Object o) {
return CachedValuesManager.getManager(file.getProject()).createCachedValue(new CachedValueProvider<XmlFileHeader>() {
+ @Override
public Result<XmlFileHeader> compute() {
return new Result<XmlFileHeader>(calcXmlFileHeader(file), file);
}
@@ -128,6 +130,7 @@ public class DomServiceImpl extends DomService {
return XmlFileHeader.EMPTY;
}
+ @Override
public ModelMerger createModelMerger() {
return new ModelMergerImpl();
}
@@ -137,6 +140,7 @@ public class DomServiceImpl extends DomService {
return DomAnchorImpl.createAnchor(domElement);
}
+ @Override
@NotNull
public XmlFile getContainingFile(@NotNull DomElement domElement) {
if (domElement instanceof DomFileElement) {
@@ -145,21 +149,25 @@ public class DomServiceImpl extends DomService {
return DomManagerImpl.getNotNullHandler(domElement).getFile();
}
+ @Override
@NotNull
public EvaluatedXmlName getEvaluatedXmlName(@NotNull final DomElement element) {
return DomManagerImpl.getNotNullHandler(element).getXmlName();
}
+ @Override
@NotNull
public XmlFileHeader getXmlFileHeader(XmlFile file) {
return file.isValid() ? ourRootTagCache.get(ROOT_TAG_NS_KEY, file, null).getValue() : XmlFileHeader.EMPTY;
}
+ @Override
public Collection<VirtualFile> getDomFileCandidates(Class<? extends DomElement> description, Project project) {
return FileBasedIndex.getInstance().getContainingFiles(DomFileIndex.NAME, description.getName(), GlobalSearchScope.allScope(project));
}
+ @Override
public <T extends DomElement> List<DomFileElement<T>> getFileElements(final Class<T> clazz, final Project project, @Nullable final GlobalSearchScope scope) {
final Collection<VirtualFile> list = scope == null ? getDomFileCandidates(clazz, project) : getDomFileCandidates(clazz, project, scope);
final ArrayList<DomFileElement<T>> result = new ArrayList<DomFileElement<T>>(list.size());
@@ -177,6 +185,7 @@ public class DomServiceImpl extends DomService {
}
+ @Override
public StructureViewBuilder createSimpleStructureViewBuilder(final XmlFile file, final Function<DomElement, StructureViewMode> modeProvider) {
return new DomStructureViewBuilder(file, modeProvider);
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomTemplateRunnerImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomTemplateRunnerImpl.java
index 97a66b9bbb4b..cd86f01f4ec0 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomTemplateRunnerImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomTemplateRunnerImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,6 +40,7 @@ public class DomTemplateRunnerImpl extends DomTemplateRunner {
myProject = project;
}
+ @Override
public <T extends DomElement> void runTemplate(final T t, final String mappingId, final Editor editor) {
runTemplate(t, mappingId, editor, new HashMap<String, String>());
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DynamicGenericInfo.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DynamicGenericInfo.java
index 96fbf46095e3..eebe00d9e0bb 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DynamicGenericInfo.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DynamicGenericInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -66,10 +66,12 @@ public class DynamicGenericInfo extends DomGenericInfoEx {
myCollections = staticGenericInfo.getCollections();
}
+ @Override
public Invocation createInvocation(final JavaMethod method) {
return myStaticGenericInfo.createInvocation(method);
}
+ @Override
public final boolean checkInitialized() {
if (myInitialized) return true;
myStaticGenericInfo.buildMethodMaps();
@@ -177,14 +179,17 @@ public class DynamicGenericInfo extends DomGenericInfoEx {
return registrar;
}
+ @Override
public XmlElement getNameElement(DomElement element) {
return myStaticGenericInfo.getNameElement(element);
}
+ @Override
public GenericDomValue getNameDomElement(DomElement element) {
return myStaticGenericInfo.getNameDomElement(element);
}
+ @Override
@NotNull
public List<? extends CustomDomChildrenDescription> getCustomNameChildrenDescription() {
checkInitialized();
@@ -192,10 +197,12 @@ public class DynamicGenericInfo extends DomGenericInfoEx {
return myStaticGenericInfo.getCustomNameChildrenDescription();
}
+ @Override
public String getElementName(DomElement element) {
return myStaticGenericInfo.getElementName(element);
}
+ @Override
@NotNull
public List<AbstractDomChildDescriptionImpl> getChildrenDescriptions() {
checkInitialized();
@@ -207,53 +214,63 @@ public class DynamicGenericInfo extends DomGenericInfoEx {
return list;
}
+ @Override
@NotNull
public final List<FixedChildDescriptionImpl> getFixedChildrenDescriptions() {
checkInitialized();
return myFixeds.getDescriptions();
}
+ @Override
@NotNull
public final List<CollectionChildDescriptionImpl> getCollectionChildrenDescriptions() {
checkInitialized();
return myCollections.getDescriptions();
}
+ @Override
public FixedChildDescriptionImpl getFixedChildDescription(String tagName) {
checkInitialized();
return myFixeds.findDescription(tagName);
}
+ @Override
public DomFixedChildDescription getFixedChildDescription(@NonNls String tagName, @NonNls String namespace) {
checkInitialized();
return myFixeds.getDescription(tagName, namespace);
}
+ @Override
public CollectionChildDescriptionImpl getCollectionChildDescription(String tagName) {
checkInitialized();
return myCollections.findDescription(tagName);
}
+ @Override
public DomCollectionChildDescription getCollectionChildDescription(@NonNls String tagName, @NonNls String namespace) {
checkInitialized();
return myCollections.getDescription(tagName, namespace);
}
+ @Override
public AttributeChildDescriptionImpl getAttributeChildDescription(String attributeName) {
checkInitialized();
return myAttributes.findDescription(attributeName);
}
+ @Override
public DomAttributeChildDescription getAttributeChildDescription(@NonNls String attributeName, @NonNls String namespace) {
checkInitialized();
return myAttributes.getDescription(attributeName, namespace);
}
+ @Override
public boolean isTagValueElement() {
return myStaticGenericInfo.isTagValueElement();
}
+ @Override
@NotNull
public List<AttributeChildDescriptionImpl> getAttributeChildrenDescriptions() {
checkInitialized();
@@ -264,6 +281,7 @@ public class DynamicGenericInfo extends DomGenericInfoEx {
public boolean processAttributeChildrenDescriptions(final Processor<AttributeChildDescriptionImpl> processor) {
final Set<AttributeChildDescriptionImpl> visited = new THashSet<AttributeChildDescriptionImpl>();
if (!myStaticGenericInfo.processAttributeChildrenDescriptions(new Processor<AttributeChildDescriptionImpl>() {
+ @Override
public boolean process(AttributeChildDescriptionImpl attributeChildDescription) {
visited.add(attributeChildDescription);
return processor.process(attributeChildDescription);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/FileDescriptionCachedValueProvider.java b/xml/dom-impl/src/com/intellij/util/xml/impl/FileDescriptionCachedValueProvider.java
index 4b6ac953e91b..3ddc390475b8 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/FileDescriptionCachedValueProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/FileDescriptionCachedValueProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -202,6 +202,7 @@ class FileDescriptionCachedValueProvider<T extends DomElement> implements SemEle
private class MyCondition implements Condition<DomFileDescription> {
public Module module;
+ @Override
public boolean value(final DomFileDescription description) {
return description.isMyFile(myXmlFile, module);
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/FixedChildDescriptionImpl.java b/xml/dom-impl/src/com/intellij/util/xml/impl/FixedChildDescriptionImpl.java
index 3f22adfef530..2e37e40302d5 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/FixedChildDescriptionImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/FixedChildDescriptionImpl.java
@@ -48,6 +48,7 @@ public class FixedChildDescriptionImpl extends DomChildDescriptionImpl implement
myGetterMethods = getterMethods;
}
+ @Override
public JavaMethod getGetterMethod(int index) {
if (myGetterMethods.length == 0) return null;
@@ -55,6 +56,7 @@ public class FixedChildDescriptionImpl extends DomChildDescriptionImpl implement
return methods == null || methods.isEmpty() ? null : methods.iterator().next();
}
+ @Override
@Nullable
public <T extends Annotation> T getAnnotation(int index, Class<? extends T> annotationClass) {
final JavaMethod method = getGetterMethod(index);
@@ -72,10 +74,12 @@ public class FixedChildDescriptionImpl extends DomChildDescriptionImpl implement
return super.getAnnotation(annotationClass);
}
+ @Override
public int getCount() {
return myCount;
}
+ @Override
@NotNull
public List<? extends DomElement> getValues(@NotNull final DomElement element) {
final List<DomElement> result = new SmartList<DomElement>();
@@ -95,11 +99,13 @@ public class FixedChildDescriptionImpl extends DomChildDescriptionImpl implement
return result;
}
+ @Override
@NotNull
public String getCommonPresentableName(@NotNull DomNameStrategy strategy) {
return StringUtil.capitalizeWords(strategy.splitIntoWords(getXmlElementName()), true);
}
+ @Override
@Nullable
public final <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
return getAnnotation(0, annotationClass);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/GenericDomValueReference.java b/xml/dom-impl/src/com/intellij/util/xml/impl/GenericDomValueReference.java
index 881630e16325..18c97c2a839d 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/GenericDomValueReference.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/GenericDomValueReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -76,6 +76,7 @@ public class GenericDomValueReference<T> extends PsiReferenceBase<XmlElement> im
return myGenericValue;
}
+ @Override
public boolean isSoft() {
return true;
}
@@ -106,6 +107,7 @@ public class GenericDomValueReference<T> extends PsiReferenceBase<XmlElement> im
return o != null ? getElement() : null;
}
+ @Override
public boolean isReferenceTo(final PsiElement element) {
final Converter<T> converter = getConverter();
if (converter instanceof ResolvingConverter) {
@@ -131,17 +133,20 @@ public class GenericDomValueReference<T> extends PsiReferenceBase<XmlElement> im
return WrappingConverter.getDeepestConverter(myGenericValue.getConverter(), myGenericValue);
}
+ @Override
@Nullable
public PsiElement resolve() {
final T value = myGenericValue.getValue();
return value == null ? null : resolveInner(value);
}
+ @Override
@NotNull
public String getCanonicalText() {
return StringUtil.notNullize(getStringValue());
}
+ @Override
@NotNull
public String getUnresolvedMessagePattern() {
final ConvertContext context = getConvertContext();
@@ -152,6 +157,7 @@ public class GenericDomValueReference<T> extends PsiReferenceBase<XmlElement> im
return ConvertContextFactory.createConvertContext(DomManagerImpl.getDomInvocationHandler(myGenericValue));
}
+ @Override
public PsiElement handleElementRename(final String newElementName) throws IncorrectOperationException {
final Converter<T> converter = getConverter();
if (converter instanceof ResolvingConverter) {
@@ -161,6 +167,7 @@ public class GenericDomValueReference<T> extends PsiReferenceBase<XmlElement> im
return super.handleElementRename(newElementName);
}
+ @Override
public PsiElement bindToElement(@NotNull PsiElement element) throws IncorrectOperationException {
final Converter<T> converter = getConverter();
if (converter instanceof ResolvingConverter) {
@@ -180,6 +187,7 @@ public class GenericDomValueReference<T> extends PsiReferenceBase<XmlElement> im
return null;
}
+ @Override
@NotNull
public Object[] getVariants() {
final Converter<T> converter = getConverter();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java b/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java
index 2df2c4c276a1..c2050b5be9de 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java
@@ -43,6 +43,7 @@ public class GenericValueReferenceProvider extends PsiReferenceProvider {
myProviders.put(clazz, provider);
}
+ @Override
@NotNull
public final PsiReference[] getReferencesByElement(@NotNull PsiElement psiElement, @NotNull final ProcessingContext context) {
final DomManager domManager = DomManager.getDomManager(psiElement.getProject());
@@ -147,6 +148,7 @@ public class GenericValueReferenceProvider extends PsiReferenceProvider {
if (ReflectionUtil.isAssignable(Integer.class, clazz)) {
return new PsiReference[]{new GenericDomValueReference<Integer>((GenericDomValue<Integer>)domValue) {
+ @Override
@NotNull
public Object[] getVariants() {
return new Object[]{"0"};
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/GetAttributeChildInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/GetAttributeChildInvocation.java
index 47951e07b309..92f69dfd0bee 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/GetAttributeChildInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/GetAttributeChildInvocation.java
@@ -25,6 +25,7 @@ public class GetAttributeChildInvocation implements Invocation {
myDescription = description;
}
+ @Override
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return handler.getAttributeChild(myDescription).getProxy();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/GetCollectionChildInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/GetCollectionChildInvocation.java
index df122f2dd1c1..e9fafaf87847 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/GetCollectionChildInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/GetCollectionChildInvocation.java
@@ -25,6 +25,7 @@ public class GetCollectionChildInvocation implements Invocation {
myDescription = qname;
}
+ @Override
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return handler.getCollectionChildren(myDescription, myDescription.getTagsGetter());
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/GetCompositeCollectionInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/GetCompositeCollectionInvocation.java
index 97984c80e905..d8afda3291c6 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/GetCompositeCollectionInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/GetCompositeCollectionInvocation.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ class GetCompositeCollectionInvocation implements Invocation {
myQnames = qnames;
}
+ @Override
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
Map<XmlTag,DomElement> map = new THashMap<XmlTag, DomElement>();
for (final CollectionChildDescriptionImpl qname : myQnames) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/GetFixedChildInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/GetFixedChildInvocation.java
index ea69bc905b83..6bff198de15f 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/GetFixedChildInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/GetFixedChildInvocation.java
@@ -27,6 +27,7 @@ public class GetFixedChildInvocation implements Invocation {
myPair = pair;
}
+ @Override
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return handler.getFixedChild(myPair).getProxy();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/ImplementationClassCache.java b/xml/dom-impl/src/com/intellij/util/xml/impl/ImplementationClassCache.java
index 3cb49c94fdd5..6a62938197cd 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/ImplementationClassCache.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/ImplementationClassCache.java
@@ -35,6 +35,7 @@ import java.util.TreeSet;
*/
class ImplementationClassCache {
private static final Comparator<Class> CLASS_COMPARATOR = new Comparator<Class>() {
+ @Override
public int compare(final Class o1, final Class o2) {
if (o1.isAssignableFrom(o2)) return 1;
if (o2.isAssignableFrom(o1)) return -1;
@@ -98,6 +99,7 @@ class ImplementationClassCache {
myImplementationClasses.putValue(domElementClass.getName(), ep);
if (parentDisposable != null) {
Disposer.register(parentDisposable, new Disposable() {
+ @Override
public void dispose() {
myImplementationClasses.remove(domElementClass.getName());
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/IndexedElementInvocationHandler.java b/xml/dom-impl/src/com/intellij/util/xml/impl/IndexedElementInvocationHandler.java
index 3e1479cda4ff..b77a838eb0ec 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/IndexedElementInvocationHandler.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/IndexedElementInvocationHandler.java
@@ -57,6 +57,7 @@ public class IndexedElementInvocationHandler extends DomInvocationHandler<FixedC
return super.hashCode() * 239 + myIndex;
}
+ @Override
protected XmlElement recomputeXmlElement(@NotNull final DomInvocationHandler parentHandler) {
final XmlTag tag = parentHandler.getXmlTag();
if (tag == null) return null;
@@ -67,6 +68,7 @@ public class IndexedElementInvocationHandler extends DomInvocationHandler<FixedC
return tags.get(myIndex);
}
+ @Override
protected XmlTag setEmptyXmlTag() {
final DomInvocationHandler parent = getParentHandler();
assert parent != null : "write operations should be performed on the DOM having a parent, your DOM may be not very fresh";
@@ -80,6 +82,7 @@ public class IndexedElementInvocationHandler extends DomInvocationHandler<FixedC
final XmlTag[] newTag = new XmlTag[1];
getManager().runChange(new Runnable() {
+ @Override
public void run() {
try {
final XmlTag parentTag = parent.getXmlTag();
@@ -93,6 +96,7 @@ public class IndexedElementInvocationHandler extends DomInvocationHandler<FixedC
return newTag[0];
}
+ @Override
public void undefineInternal() {
final DomInvocationHandler parent = getParentHandler();
assert parent != null : "write operations should be performed on the DOM having a parent, your DOM may be not very fresh";
@@ -134,6 +138,7 @@ public class IndexedElementInvocationHandler extends DomInvocationHandler<FixedC
fireUndefinedEvent();
}
+ @Override
public final <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
final T annotation = getChildDescription().getAnnotation(myIndex, annotationClass);
if (annotation != null) return annotation;
@@ -141,10 +146,12 @@ public class IndexedElementInvocationHandler extends DomInvocationHandler<FixedC
return getClassAnnotation(annotationClass);
}
+ @Override
public final DomElement createPathStableCopy() {
final DomFixedChildDescription description = getChildDescription();
final DomElement parentCopy = getParent().createStableCopy();
return getManager().createStableValue(new Factory<DomElement>() {
+ @Override
public DomElement create() {
return parentCopy.isValid() ? description.getValues(parentCopy).get(myIndex) : null;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/InvocationCache.java b/xml/dom-impl/src/com/intellij/util/xml/impl/InvocationCache.java
index 16be7ddc8504..7b82589804b3 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/InvocationCache.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/InvocationCache.java
@@ -83,11 +83,13 @@ public class InvocationCache {
addCoreInvocations(AnnotatedElement.class);
addCoreInvocations(Object.class);
ourCoreInvocations.put(new JavaMethodSignature("getUserData", Key.class), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
return handler.getUserData((Key<?>)args[0]);
}
});
ourCoreInvocations.put(new JavaMethodSignature("putUserData", Key.class, Object.class), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
//noinspection unchecked
handler.putUserData((Key)args[0], args[1]);
@@ -95,49 +97,58 @@ public class InvocationCache {
}
});
ourCoreInvocations.put(new JavaMethodSignature("getXmlElement"), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
return handler.getXmlElement();
}
});
ourCoreInvocations.put(new JavaMethodSignature("getXmlTag"), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
return handler.getXmlTag();
}
});
ourCoreInvocations.put(new JavaMethodSignature("getParent"), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
return handler.getParent();
}
});
ourCoreInvocations.put(new JavaMethodSignature("accept", DomElementVisitor.class), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
handler.accept((DomElementVisitor)args[0]);
return null;
}
});
ourCoreInvocations.put(new JavaMethodSignature("acceptChildren", DomElementVisitor.class), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
handler.acceptChildren((DomElementVisitor)args[0]);
return null;
}
});
ourCoreInvocations.put(new JavaMethodSignature("getAnnotation", Class.class), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
//noinspection unchecked
return handler.getAnnotation((Class<Annotation>)args[0]);
}
});
ourCoreInvocations.put(new JavaMethodSignature("getRawText"), new Invocation() {
+ @Override
public final Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return handler.getValue();
}
});
ourCoreInvocations.put(new JavaMethodSignature("getXmlAttribute"), new Invocation() {
+ @Override
public final Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return handler.getXmlElement();
}
});
ourCoreInvocations.put(new JavaMethodSignature("getXmlAttributeValue"), new Invocation() {
+ @Override
@Nullable
public final Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
final XmlAttribute attribute = (XmlAttribute)handler.getXmlElement();
@@ -145,6 +156,7 @@ public class InvocationCache {
}
});
ourCoreInvocations.put(new JavaMethodSignature("getConverter"), new Invocation() {
+ @Override
public final Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
try {
return handler.getScalarConverter();
@@ -164,6 +176,7 @@ public class InvocationCache {
for (final Method method : ReflectionUtil.getClassDeclaredMethods(aClass)) {
if ("equals".equals(method.getName())) {
ourCoreInvocations.put(new JavaMethodSignature(method), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
final DomElement proxy = handler.getProxy();
final Object arg = args[0];
@@ -182,6 +195,7 @@ public class InvocationCache {
}
else if ("hashCode".equals(method.getName())) {
ourCoreInvocations.put(new JavaMethodSignature(method), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
return handler.hashCode();
}
@@ -189,6 +203,7 @@ public class InvocationCache {
}
else {
ourCoreInvocations.put(new JavaMethodSignature(method), new Invocation() {
+ @Override
public Object invoke(DomInvocationHandler<?, ?> handler, Object[] args) throws Throwable {
return method.invoke(handler, args);
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/MockDomFileDescription.java b/xml/dom-impl/src/com/intellij/util/xml/impl/MockDomFileDescription.java
index cad15441333e..3e68ed9232d7 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/MockDomFileDescription.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/MockDomFileDescription.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,17 +31,21 @@ public class MockDomFileDescription<T> extends DomFileDescription<T> {
myFile = file;
}
+ @Override
public boolean isMyFile(@NotNull final XmlFile xmlFile, final Module module) {
return myFile == xmlFile;
}
+ @Override
public boolean acceptsOtherRootTagNames() {
return true;
}
+ @Override
protected void initializeFileDescription() {
}
+ @Override
public boolean isAutomaticHighlightingEnabled() {
return false;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/PhysicalDomParentStrategy.java b/xml/dom-impl/src/com/intellij/util/xml/impl/PhysicalDomParentStrategy.java
index a6427a417d84..3dba990044c8 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/PhysicalDomParentStrategy.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/PhysicalDomParentStrategy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,6 +40,7 @@ public class PhysicalDomParentStrategy implements DomParentStrategy {
myDomManager = domManager;
}
+ @Override
public DomInvocationHandler getParentHandler() {
final XmlTag parentTag = getParentTag(myElement);
assert parentTag != null;
@@ -55,16 +56,19 @@ public class PhysicalDomParentStrategy implements DomParentStrategy {
return parent instanceof XmlEntityRef ? parent.getParent() : parent;
}
+ @Override
@NotNull
public final XmlElement getXmlElement() {
return myElement;
}
+ @Override
@NotNull
public DomParentStrategy refreshStrategy(final DomInvocationHandler handler) {
return this;
}
+ @Override
@NotNull
public DomParentStrategy setXmlElement(@NotNull final XmlElement element) {
myElement = element;
@@ -76,6 +80,7 @@ public class PhysicalDomParentStrategy implements DomParentStrategy {
return "Physical:" + myElement;
}
+ @Override
@NotNull
public DomParentStrategy clearXmlElement() {
final DomInvocationHandler parent = getParentHandler();
@@ -83,6 +88,7 @@ public class PhysicalDomParentStrategy implements DomParentStrategy {
return new VirtualDomParentStrategy(parent);
}
+ @Override
public String checkValidity() {
return myElement.isValid() ? null : "Invalid PSI";
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/PropertyAccessorInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/PropertyAccessorInvocation.java
index 0d9ca1121ab3..c8a89c95ce78 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/PropertyAccessorInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/PropertyAccessorInvocation.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@ class PropertyAccessorInvocation implements Invocation {
myLastElement = myMethods.length - 1;
}
+ @Override
public final Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return invoke(0, handler.getProxy());
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/RootDomParentStrategy.java b/xml/dom-impl/src/com/intellij/util/xml/impl/RootDomParentStrategy.java
index 10861c0d781c..184dbe66e0cb 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/RootDomParentStrategy.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/RootDomParentStrategy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,25 +30,30 @@ public class RootDomParentStrategy implements DomParentStrategy {
myFileElement = fileElement;
}
+ @Override
@NotNull
public DomInvocationHandler getParentHandler() {
throw new UnsupportedOperationException("Method getParentHandler is not yet implemented in " + getClass().getName());
}
+ @Override
public XmlTag getXmlElement() {
return myFileElement.getRootTag();
}
+ @Override
@NotNull
public DomParentStrategy refreshStrategy(final DomInvocationHandler handler) {
return this;
}
+ @Override
@NotNull
public DomParentStrategy setXmlElement(@NotNull final XmlElement element) {
return this;
}
+ @Override
@NotNull
public DomParentStrategy clearXmlElement() {
return this;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/SetInvocation.java b/xml/dom-impl/src/com/intellij/util/xml/impl/SetInvocation.java
index 95162df3b7fa..fc920a555ebb 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/SetInvocation.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/SetInvocation.java
@@ -28,6 +28,7 @@ public class SetInvocation implements Invocation {
myConverter = converter;
}
+ @Override
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
handler.assertValid();
final SubTag annotation = handler.getAnnotation(SubTag.class);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/StableInvocationHandler.java b/xml/dom-impl/src/com/intellij/util/xml/impl/StableInvocationHandler.java
index d15830140d69..0bbc82f11565 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/StableInvocationHandler.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/StableInvocationHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -53,6 +53,7 @@ class StableInvocationHandler<T> implements InvocationHandler, StableElement {
}
+ @Override
public final Object invoke(Object proxy, final Method method, final Object[] args) throws Throwable {
if (StableElement.class.equals(method.getDeclaringClass())) {
try {
@@ -113,6 +114,7 @@ class StableInvocationHandler<T> implements InvocationHandler, StableElement {
}
}
+ @Override
public final void revalidate() {
final T t = myProvider.create();
if (!isNotValid(t) && !t.equals(myCachedValue)) {
@@ -120,12 +122,14 @@ class StableInvocationHandler<T> implements InvocationHandler, StableElement {
}
}
+ @Override
public final void invalidate() {
if (!isNotValid(myCachedValue)) {
myCachedValue = null;
}
}
+ @Override
public final T getWrappedElement() {
if (isNotValid(myCachedValue)) {
myCachedValue = myProvider.create();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfo.java b/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfo.java
index 72e7104d8a2b..a4974944a56a 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfo.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfo.java
@@ -86,6 +86,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
}
final NotNullFunction<String, CollectionChildDescriptionImpl> mapper = new NotNullFunction<String, CollectionChildDescriptionImpl>() {
+ @Override
@NotNull
public CollectionChildDescriptionImpl fun(final String xmlName) {
return ObjectUtils.assertNotNull(myCollections.findDescription(xmlName));
@@ -115,10 +116,12 @@ public class StaticGenericInfo extends DomGenericInfoEx {
}
}
+ @Override
public boolean checkInitialized() {
return buildMethodMaps();
}
+ @Override
public final Invocation createInvocation(final JavaMethod method) {
buildMethodMaps();
@@ -143,6 +146,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
if (myCustomDescription != null && method.equals(myCustomDescription.getGetterMethod())) {
return new Invocation() {
+ @Override
@Nullable
public Object invoke(final DomInvocationHandler<?, ?> handler, final Object[] args) throws Throwable {
return myCustomDescription.getValues(handler);
@@ -176,6 +180,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
if (parameterTypes.length == 2 && parameterTypes[1].equals(Class.class)) {
return new Function<Object[], Type>() {
+ @Override
public Type fun(final Object[] s) {
return (Type)s[1];
}
@@ -183,6 +188,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
}
return new Function<Object[], Type>() {
+ @Override
public Type fun(final Object[] s) {
return method.getGenericReturnType();
}
@@ -198,6 +204,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
if (parameterTypes.length == 2 && parameterTypes[1].equals(int.class)) {
return new Function<Object[], Integer>() {
+ @Override
public Integer fun(final Object[] s) {
return (Integer)s[1];
}
@@ -207,6 +214,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
return new ConstantFunction<Object[], Integer>(Integer.MAX_VALUE);
}
+ @Override
@Nullable
public XmlElement getNameElement(DomElement element) {
buildMethodMaps();
@@ -222,6 +230,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
}
}
+ @Override
@Nullable
public GenericDomValue getNameDomElement(DomElement element) {
buildMethodMaps();
@@ -230,6 +239,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
return o instanceof GenericDomValue ? (GenericDomValue)o : null;
}
+ @Override
@NotNull
public List<? extends CustomDomChildrenDescriptionImpl> getCustomNameChildrenDescription() {
return myCustomDescription == null ? Collections.<CustomDomChildrenDescriptionImpl>emptyList() : Collections.singletonList(myCustomDescription);
@@ -240,6 +250,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
return myNameValueGetter == null ? null : myNameValueGetter.invoke(element);
}
+ @Override
@Nullable
public String getElementName(DomElement element) {
buildMethodMaps();
@@ -247,6 +258,7 @@ public class StaticGenericInfo extends DomGenericInfoEx {
return o == null || o instanceof String ? (String)o : ((GenericValue)o).getStringValue();
}
+ @Override
@NotNull
public List<AbstractDomChildDescriptionImpl> getChildrenDescriptions() {
buildMethodMaps();
@@ -258,23 +270,27 @@ public class StaticGenericInfo extends DomGenericInfoEx {
return list;
}
+ @Override
@NotNull
public List<? extends DomFixedChildDescription> getFixedChildrenDescriptions() {
buildMethodMaps();
return myFixed.getDescriptions();
}
+ @Override
@NotNull
public List<? extends DomCollectionChildDescription> getCollectionChildrenDescriptions() {
buildMethodMaps();
return myCollections.getDescriptions();
}
+ @Override
public boolean isTagValueElement() {
buildMethodMaps();
return myValueElement;
}
+ @Override
@NotNull
public List<AttributeChildDescriptionImpl> getAttributeChildrenDescriptions() {
buildMethodMaps();
@@ -287,36 +303,42 @@ public class StaticGenericInfo extends DomGenericInfoEx {
return ContainerUtil.process(descriptions, processor);
}
+ @Override
@Nullable
public DomFixedChildDescription getFixedChildDescription(@NonNls final String tagName) {
buildMethodMaps();
return myFixed.findDescription(tagName);
}
+ @Override
@Nullable
public DomFixedChildDescription getFixedChildDescription(@NonNls final String tagName, @NonNls final String namespaceKey) {
buildMethodMaps();
return myFixed.getDescription(tagName, namespaceKey);
}
+ @Override
@Nullable
public DomCollectionChildDescription getCollectionChildDescription(@NonNls final String tagName) {
buildMethodMaps();
return myCollections.findDescription(tagName);
}
+ @Override
@Nullable
public DomCollectionChildDescription getCollectionChildDescription(@NonNls final String tagName, @NonNls final String namespaceKey) {
buildMethodMaps();
return myCollections.getDescription(tagName, namespaceKey);
}
+ @Override
@Nullable
public DomAttributeChildDescription getAttributeChildDescription(@NonNls final String attributeName) {
buildMethodMaps();
return myAttributes.findDescription(attributeName);
}
+ @Override
@Nullable
public DomAttributeChildDescription getAttributeChildDescription(@NonNls final String attributeName, @NonNls final String namespaceKey) {
buildMethodMaps();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfoBuilder.java b/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfoBuilder.java
index 3968ff8f73af..0874bbc6dd23 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfoBuilder.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/StaticGenericInfoBuilder.java
@@ -52,6 +52,7 @@ public class StaticGenericInfoBuilder {
private final Map<JavaMethodSignature, String[]> myCompositeCollectionGetters = new THashMap<JavaMethodSignature, String[]>();
private final Map<JavaMethodSignature, Pair<String,String[]>> myCompositeCollectionAdders = new THashMap<JavaMethodSignature, Pair<String,String[]>>();
private final FactoryMap<XmlName, TIntObjectHashMap<Collection<JavaMethod>>> myFixedChildrenGetters = new FactoryMap<XmlName, TIntObjectHashMap<Collection<JavaMethod>>>() {
+ @Override
protected TIntObjectHashMap<Collection<JavaMethod>> create(final XmlName key) {
return new TIntObjectHashMap<Collection<JavaMethod>>();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/VirtualDomParentStrategy.java b/xml/dom-impl/src/com/intellij/util/xml/impl/VirtualDomParentStrategy.java
index 73da7d6197c3..f031ef79b5fa 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/VirtualDomParentStrategy.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/VirtualDomParentStrategy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,15 +38,18 @@ public class VirtualDomParentStrategy implements DomParentStrategy {
return myModificationTracker.getModificationStamp();
}
+ @Override
@NotNull
public DomInvocationHandler getParentHandler() {
return myParentHandler;
}
+ @Override
public XmlElement getXmlElement() {
return null;
}
+ @Override
@NotNull
public synchronized DomParentStrategy refreshStrategy(final DomInvocationHandler handler) {
if (!myParentHandler.isValid()) return this;
@@ -62,11 +65,13 @@ public class VirtualDomParentStrategy implements DomParentStrategy {
return this;
}
+ @Override
@NotNull
public DomParentStrategy setXmlElement(@NotNull final XmlElement element) {
return new PhysicalDomParentStrategy(element, DomManagerImpl.getDomManager(element.getProject()));
}
+ @Override
@NotNull
public synchronized DomParentStrategy clearXmlElement() {
myModCount = getModCount();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/model/gotosymbol/GoToSymbolProvider.java b/xml/dom-impl/src/com/intellij/util/xml/model/gotosymbol/GoToSymbolProvider.java
index 1798e2423bf4..0419343f60de 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/model/gotosymbol/GoToSymbolProvider.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/model/gotosymbol/GoToSymbolProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -57,6 +57,7 @@ public abstract class GoToSymbolProvider implements ChooseByNameContributor {
}
}
+ @Override
@NotNull
public String[] getNames(final Project project, boolean includeNonProjectItems) {
Set<String> result = new HashSet<String>();
@@ -70,6 +71,7 @@ public abstract class GoToSymbolProvider implements ChooseByNameContributor {
return ArrayUtil.toStringArray(result);
}
+ @Override
@NotNull
public NavigationItem[] getItemsByName(final String name, final String pattern, final Project project, boolean includeNonProjectItems) {
List<NavigationItem> result = new ArrayList<NavigationItem>();
@@ -126,27 +128,33 @@ public abstract class GoToSymbolProvider implements ChooseByNameContributor {
myIcon = icon;
}
+ @Override
@NotNull
public PsiElement getNavigationElement() {
return myPsiElement;
}
+ @Override
public Icon getIcon(boolean flags) {
return myIcon;
}
+ @Override
public ItemPresentation getPresentation() {
return new ItemPresentation() {
+ @Override
public String getPresentableText() {
return myText;
}
+ @Override
@Nullable
public String getLocationString() {
return '(' + myPsiElement.getContainingFile().getName() + ')';
}
+ @Override
@Nullable
public Icon getIcon(boolean open) {
return myIcon;
@@ -154,6 +162,7 @@ public abstract class GoToSymbolProvider implements ChooseByNameContributor {
};
}
+ @Override
public PsiElement getParent() {
return myPsiElement.getParent();
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionImpl.java b/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionImpl.java
index d3931ddee3ae..f0c84fa21917 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -78,11 +78,13 @@ public class DomExtensionImpl implements DomExtension {
return myXmlName;
}
+ @Override
@NotNull
public Type getType() {
return myType;
}
+ @Override
public DomExtension setDeclaringElement(@NotNull DomElement declaringElement) {
putUserData(KEY_DOM_DECLARATION, DomAnchorImpl.createAnchor(declaringElement, true));
return this;
@@ -94,26 +96,31 @@ public class DomExtensionImpl implements DomExtension {
return this;
}
+ @Override
public DomExtension setConverter(@NotNull Converter converter) {
return setConverter(converter, false);
}
+ @Override
public final DomExtension setConverter(@NotNull final Converter converter, final boolean soft) {
myConverter = converter;
mySoft = soft;
return this;
}
+ @Override
public DomExtension addCustomAnnotation(@NotNull final Annotation anno) {
myCustomAnnos.add(anno);
return this;
}
+ @Override
public <T> void putUserData(final Key<T> key, final T value) {
if (myUserMap == null) myUserMap = new THashMap();
myUserMap.put(key, value);
}
+ @Override
public DomExtension addExtender(final DomExtender extender) {
if (myUserMap == null || !myUserMap.containsKey(DOM_EXTENDER_KEY)) {
putUserData(DOM_EXTENDER_KEY, new SmartList<DomExtender>());
diff --git a/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionsRegistrarImpl.java b/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionsRegistrarImpl.java
index 415b0f667c98..e5e88ba04140 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionsRegistrarImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/reflect/DomExtensionsRegistrarImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -60,27 +60,32 @@ public class DomExtensionsRegistrarImpl implements DomExtensionsRegistrar {
return addExtension(myFixeds, name, type).setCount(count);
}
+ @Override
@NotNull
public DomExtension registerFixedNumberChildExtension(@NotNull final XmlName name, @NotNull final Type type) {
return registerFixedNumberChildrenExtension(name, type, 1);
}
+ @Override
@NotNull
public DomExtension registerCollectionChildrenExtension(@NotNull final XmlName name, @NotNull final Type type) {
return addExtension(myCollections, name, type);
}
+ @Override
@NotNull
public DomExtension registerGenericAttributeValueChildExtension(@NotNull final XmlName name, final Type parameterType) {
return addExtension(myAttributes, name, new ParameterizedTypeImpl(GenericAttributeValue.class, parameterType));
}
+ @Override
@NotNull
public DomExtension registerAttributeChildExtension(@NotNull final XmlName name, @NotNull final Type type) {
assert GenericAttributeValue.class.isAssignableFrom(ReflectionUtil.getRawType(type));
return addExtension(myAttributes, name, type);
}
+ @Override
@NotNull
public DomExtension registerCustomChildrenExtension(@NotNull final Type type) {
return registerCustomChildrenExtension(type, CustomDomChildrenDescription.TagNameDescriptor.EMPTY);
diff --git a/xml/dom-impl/src/com/intellij/util/xml/structure/DomStructureTreeElement.java b/xml/dom-impl/src/com/intellij/util/xml/structure/DomStructureTreeElement.java
index 548276faf5e9..552f0ad20060 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/structure/DomStructureTreeElement.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/structure/DomStructureTreeElement.java
@@ -47,21 +47,25 @@ public class DomStructureTreeElement implements StructureViewTreeElement, ItemPr
return myElement;
}
+ @Override
@Nullable
public Object getValue() {
return myElement.isValid() ? myElement.getXmlElement() : null;
}
+ @Override
@NotNull
public ItemPresentation getPresentation() {
return this;
}
+ @Override
@NotNull
public TreeElement[] getChildren() {
if (!myElement.isValid()) return EMPTY_ARRAY;
final ArrayList<TreeElement> result = new ArrayList<TreeElement>();
final DomElementVisitor elementVisitor = new DomElementVisitor() {
+ @Override
public void visitDomElement(final DomElement element) {
if (element instanceof GenericDomValue) return;
final DomService.StructureViewMode viewMode = myDescriptor.fun(element);
@@ -85,18 +89,22 @@ public class DomStructureTreeElement implements StructureViewTreeElement, ItemPr
return new DomStructureTreeElement(element, myDescriptor, myNavigationProvider);
}
+ @Override
public void navigate(boolean requestFocus) {
if (myNavigationProvider != null) myNavigationProvider.navigate(myElement, true);
}
+ @Override
public boolean canNavigate() {
return myNavigationProvider != null && myNavigationProvider.canNavigate(myElement);
}
+ @Override
public boolean canNavigateToSource() {
return myNavigationProvider != null && myNavigationProvider.canNavigate(myElement);
}
+ @Override
public String getPresentableText() {
if (!myElement.isValid()) return "<unknown>";
final ElementPresentation presentation = myElement.getPresentation();
@@ -104,11 +112,13 @@ public class DomStructureTreeElement implements StructureViewTreeElement, ItemPr
return name != null? name : presentation.getTypeName();
}
+ @Override
@Nullable
public String getLocationString() {
return null;
}
+ @Override
@Nullable
public Icon getIcon(boolean open) {
if (!myElement.isValid()) return null;
diff --git a/xml/dom-impl/src/com/intellij/util/xml/stubs/DomStub.java b/xml/dom-impl/src/com/intellij/util/xml/stubs/DomStub.java
index 8ddbadaf122d..45a4b8637679 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/stubs/DomStub.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/stubs/DomStub.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -51,6 +51,7 @@ public abstract class DomStub extends ObjectStubBase<DomStub> {
myLocalName = localName;
}
+ @Override
public abstract List<DomStub> getChildrenStubs();
public String getName() {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/stubs/ElementStub.java b/xml/dom-impl/src/com/intellij/util/xml/stubs/ElementStub.java
index 04ef4b89f462..4e8597f3603c 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/stubs/ElementStub.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/stubs/ElementStub.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -69,6 +69,7 @@ public class ElementStub extends DomStub {
return StringUtil.isEmpty(key) ? getName() : key + ":" + getName();
}
+ @Override
public boolean isCustom() {
return myCustom;
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddDomElementActionGroup.java b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddDomElementActionGroup.java
index 07e295825fd2..02c428677bcd 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddDomElementActionGroup.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddDomElementActionGroup.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,16 +28,19 @@ import org.jetbrains.annotations.Nullable;
public class AddDomElementActionGroup extends ActionGroup {
private final AddElementInCollectionAction myAction = new AddElementInCollectionAction() {
+ @Override
protected boolean showAsPopup() {
return false;
}
};
+ @Override
@NotNull
public AnAction[] getChildren(@Nullable AnActionEvent e) {
return myAction.getChildren(e);
}
+ @Override
public void update(AnActionEvent e) {
// myAction.getChildren(e).length
getTemplatePresentation().setText(myAction.getTemplatePresentation().getText());
diff --git a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddElementInCollectionAction.java b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddElementInCollectionAction.java
index 0828d3cc3e60..029feda9c59c 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddElementInCollectionAction.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/AddElementInCollectionAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -61,6 +61,7 @@ public class AddElementInCollectionAction extends AddDomElementAction {
return DomModelTreeView.DATA_KEY.getData(e.getDataContext());
}
+ @Override
protected boolean isEnabled(final AnActionEvent e) {
final DomModelTreeView treeView = getTreeView(e);
@@ -71,6 +72,7 @@ public class AddElementInCollectionAction extends AddDomElementAction {
}
+ @Override
protected void showPopup(final ListPopup groupPopup, final AnActionEvent e) {
if (myTreeView == null) {
if (e.getPlace().equals(DomModelTreeView.DOM_MODEL_TREE_VIEW_POPUP)) {
@@ -85,6 +87,7 @@ public class AddElementInCollectionAction extends AddDomElementAction {
}
}
+ @Override
@NotNull
protected DomCollectionChildDescription[] getDomCollectionChildDescriptions(final AnActionEvent e) {
final DomModelTreeView view = getTreeView(e);
@@ -104,6 +107,7 @@ public class AddElementInCollectionAction extends AddDomElementAction {
: new DomCollectionChildDescription[]{groupNode.getChildDescription()};
}
+ @Override
protected DomElement getParentDomElement(final AnActionEvent e) {
final DomModelTreeView view = getTreeView(e);
SimpleNode node = view.getTree().getSelectedNode();
@@ -117,14 +121,17 @@ public class AddElementInCollectionAction extends AddDomElementAction {
return groupNode == null ? null : groupNode.getDomElement();
}
+ @Override
protected JComponent getComponent(AnActionEvent e) {
return getTreeView(e);
}
+ @Override
protected boolean showAsPopup() {
return true;
}
+ @Override
protected String getActionText(final AnActionEvent e) {
String text = ApplicationBundle.message("action.add");
if (e.getPresentation().isEnabled()) {
@@ -150,6 +157,7 @@ public class AddElementInCollectionAction extends AddDomElementAction {
}
+ @Override
protected AnAction createAddingAction(final AnActionEvent e,
final String name,
final Icon icon,
@@ -192,22 +200,27 @@ public class AddElementInCollectionAction extends AddDomElementAction {
myView = getTreeView(e);
}
+ @Override
protected Type getElementType() {
return myType;
}
+ @Override
protected DomCollectionChildDescription getDomCollectionChildDescription() {
return myDescription;
}
+ @Override
protected DomElement getParentDomElement() {
return myParent;
}
- protected void afterAddition(final DomElement newElement) {
+ @Override
+ protected void afterAddition(@NotNull final DomElement newElement) {
final DomElement copy = newElement.createStableCopy();
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
myView.setSelectedDomElement(copy);
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/BaseDomTreeAction.java b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/BaseDomTreeAction.java
index 81d5ef356d11..16c3084d3990 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/BaseDomTreeAction.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/BaseDomTreeAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ abstract public class BaseDomTreeAction extends AnAction {
myTreeView = treeView;
}
+ @Override
final public void update(AnActionEvent e) {
final DomModelTreeView treeView = getTreeView(e);
@@ -50,6 +51,7 @@ abstract public class BaseDomTreeAction extends AnAction {
return DomModelTreeView.DATA_KEY.getData(e.getDataContext());
}
+ @Override
final public void actionPerformed(AnActionEvent e) {
final DomModelTreeView treeView = getTreeView(e);
if (treeView != null) {
diff --git a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DeleteDomElement.java b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DeleteDomElement.java
index d525acf46d29..c293df56af66 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DeleteDomElement.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DeleteDomElement.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,6 +43,7 @@ public class DeleteDomElement extends BaseDomTreeAction {
super(treeView);
}
+ @Override
public void actionPerformed(AnActionEvent e, DomModelTreeView treeView) {
final SimpleNode selectedNode = treeView.getTree().getSelectedNode();
@@ -59,6 +60,7 @@ public class DeleteDomElement extends BaseDomTreeAction {
Messages.getQuestionIcon());
if (ret == Messages.OK) {
new WriteCommandAction(domElement.getManager().getProject(), DomUtil.getFile(domElement)) {
+ @Override
protected void run(final Result result) throws Throwable {
domElement.undefine();
}
@@ -67,6 +69,7 @@ public class DeleteDomElement extends BaseDomTreeAction {
}
}
+ @Override
public void update(AnActionEvent e, DomModelTreeView treeView) {
final SimpleNode selectedNode = treeView.getTree().getSelectedNode();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DomElementsToggleAction.java b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DomElementsToggleAction.java
index 9a1cb04e586c..e391ae571e39 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DomElementsToggleAction.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/DomElementsToggleAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -22,6 +22,7 @@ import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.ToggleAction;
import com.intellij.util.xml.DomUtil;
import com.intellij.util.xml.ElementPresentationManager;
+import com.intellij.util.xml.tree.AbstractDomElementNode;
import com.intellij.util.xml.tree.BaseDomElementNode;
import com.intellij.util.xml.tree.DomModelTreeView;
@@ -51,11 +52,12 @@ public class DomElementsToggleAction extends ToggleAction {
myText = TypePresentationService.getService().getTypePresentableName(myClass);
- if(getHiders() == null) DomUtil.getFile(myTreeView.getRootElement()).putUserData(BaseDomElementNode.TREE_NODES_HIDERS_KEY, new HashMap<Class, Boolean>());
+ if(getHiders() == null) DomUtil.getFile(myTreeView.getRootElement()).putUserData(AbstractDomElementNode.TREE_NODES_HIDERS_KEY, new HashMap<Class, Boolean>());
if(getHiders().get(myClass) == null) getHiders().put(myClass, true);
}
+ @Override
public void update(final AnActionEvent e) {
super.update(e);
@@ -65,6 +67,7 @@ public class DomElementsToggleAction extends ToggleAction {
e.getPresentation().setEnabled(getHiders() != null && getHiders().get(myClass)!=null);
}
+ @Override
public boolean isSelected(AnActionEvent e) {
return getHiders().get(myClass);
}
@@ -73,6 +76,7 @@ public class DomElementsToggleAction extends ToggleAction {
return DomUtil.getFile(myTreeView.getRootElement()).getUserData(BaseDomElementNode.TREE_NODES_HIDERS_KEY);
}
+ @Override
public void setSelected(AnActionEvent e, boolean state) {
getHiders().put(myClass, state);
myTreeView.getBuilder().updateFromRoot();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/GotoDomElementDeclarationAction.java b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/GotoDomElementDeclarationAction.java
index 256a397e441e..f096c1682237 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/tree/actions/GotoDomElementDeclarationAction.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/tree/actions/GotoDomElementDeclarationAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,21 +16,21 @@
package com.intellij.util.xml.tree.actions;
+import com.intellij.idea.ActionsBundle;
import com.intellij.openapi.actionSystem.AnActionEvent;
-import com.intellij.openapi.application.ApplicationBundle;
-import com.intellij.util.xml.tree.DomModelTreeView;
-import com.intellij.util.xml.tree.BaseDomElementNode;
-import com.intellij.util.xml.DomElementsNavigationManager;
+import com.intellij.ui.treeStructure.SimpleNode;
import com.intellij.util.xml.DomElement;
import com.intellij.util.xml.DomElementNavigationProvider;
-import com.intellij.ui.treeStructure.SimpleNode;
-import com.intellij.idea.ActionsBundle;
+import com.intellij.util.xml.DomElementsNavigationManager;
+import com.intellij.util.xml.tree.BaseDomElementNode;
+import com.intellij.util.xml.tree.DomModelTreeView;
/**
* User: Sergey.Vasiliev
*/
public class GotoDomElementDeclarationAction extends BaseDomTreeAction {
+ @Override
public void actionPerformed(AnActionEvent e, DomModelTreeView treeView) {
final SimpleNode simpleNode = treeView.getTree().getSelectedNode();
@@ -44,6 +44,7 @@ public class GotoDomElementDeclarationAction extends BaseDomTreeAction {
}
}
+ @Override
public void update(AnActionEvent e, DomModelTreeView treeView) {
e.getPresentation().setVisible(treeView.getTree().getSelectedNode() instanceof BaseDomElementNode);
e.getPresentation().setText(ActionsBundle.message("action.EditSource.text"));
diff --git a/xml/dom-impl/src/com/intellij/util/xml/ui/DomUIFactoryImpl.java b/xml/dom-impl/src/com/intellij/util/xml/ui/DomUIFactoryImpl.java
index d07b40fb63e9..168b6a514b0a 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/ui/DomUIFactoryImpl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/ui/DomUIFactoryImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -60,6 +60,7 @@ public class DomUIFactoryImpl extends DomUIFactory {
public DomUIFactoryImpl() {
final Function<DomElement, TableCellEditor> booleanCreator = new Function<DomElement, TableCellEditor>() {
+ @Override
public TableCellEditor fun(final DomElement domElement) {
return new BooleanTableCellEditor();
}
@@ -67,6 +68,7 @@ public class DomUIFactoryImpl extends DomUIFactory {
registerCustomCellEditor(Boolean.class, booleanCreator);
registerCustomCellEditor(boolean.class, booleanCreator);
registerCustomCellEditor(String.class, new Function<DomElement, TableCellEditor>() {
+ @Override
public TableCellEditor fun(final DomElement domElement) {
return new DefaultCellEditor(removeBorder(new JTextField()));
}
@@ -77,6 +79,7 @@ public class DomUIFactoryImpl extends DomUIFactory {
}
}
+ @Override
protected TableCellEditor createCellEditor(DomElement element, Class type) {
if (Enum.class.isAssignableFrom(type)) {
return new ComboTableCellEditor((Class<? extends Enum>)type, false);
@@ -87,14 +90,17 @@ public class DomUIFactoryImpl extends DomUIFactory {
return function.fun(element);
}
+ @Override
public final UserActivityWatcher createEditorAwareUserActivityWatcher() {
return new UserActivityWatcher() {
private final DocumentAdapter myListener = new DocumentAdapter() {
+ @Override
public void documentChanged(DocumentEvent e) {
fireUIChanged();
}
};
+ @Override
protected void processComponent(final Component component) {
super.processComponent(component);
if (component instanceof EditorComponentImpl) {
@@ -102,6 +108,7 @@ public class DomUIFactoryImpl extends DomUIFactory {
}
}
+ @Override
protected void unprocessComponent(final Component component) {
super.unprocessComponent(component);
if (component instanceof EditorComponentImpl) {
@@ -111,11 +118,13 @@ public class DomUIFactoryImpl extends DomUIFactory {
};
}
+ @Override
public void setupErrorOutdatingUserActivityWatcher(final CommittablePanel panel, final DomElement... elements) {
final UserActivityWatcher userActivityWatcher = createEditorAwareUserActivityWatcher();
userActivityWatcher.addUserActivityListener(new UserActivityListener() {
private boolean isProcessingChange;
+ @Override
public void stateChanged() {
if (isProcessingChange) return;
isProcessingChange = true;
@@ -133,19 +142,23 @@ public class DomUIFactoryImpl extends DomUIFactory {
userActivityWatcher.register(panel.getComponent());
}
+ @Override
@Nullable
public BaseControl createCustomControl(final Type type, DomWrapper<String> wrapper, final boolean commitOnEveryChange) {
final Function<DomWrapper<String>, BaseControl> factory = myCustomControlCreators.get(ReflectionUtil.getRawType(type));
return factory == null ? null : factory.fun(wrapper);
}
+ @Override
public CaptionComponent addErrorPanel(CaptionComponent captionComponent, DomElement... elements) {
captionComponent.initErrorPanel(new DomElementsErrorPanel(elements));
return captionComponent;
}
+ @Override
public BackgroundEditorHighlighter createDomHighlighter(final Project project, final PerspectiveFileEditor editor, final DomElement element) {
return new BackgroundEditorHighlighter() {
+ @Override
@NotNull
public HighlightingPass[] createPassesForEditor() {
if (!element.isValid()) return HighlightingPass.EMPTY_ARRAY;
@@ -168,6 +181,7 @@ public class DomUIFactoryImpl extends DomUIFactory {
return new HighlightingPass[]{ghp, lip};
}
+ @Override
@NotNull
public HighlightingPass[] createPassesForVisibleArea() {
return createPassesForEditor();
@@ -176,14 +190,17 @@ public class DomUIFactoryImpl extends DomUIFactory {
}
+ @Override
public BaseControl createTextControl(DomWrapper<String> wrapper, final boolean commitOnEveryChange) {
return new TextControl(wrapper, commitOnEveryChange);
}
+ @Override
public void registerCustomControl(Class aClass, Function<DomWrapper<String>, BaseControl> creator) {
myCustomControlCreators.put(aClass, creator);
}
+ @Override
public void registerCustomCellEditor(final Class aClass, final Function<DomElement, TableCellEditor> creator) {
myCustomCellEditorCreators.put(aClass, creator);
}
diff --git a/xml/dom-impl/src/com/intellij/util/xml/ui/EditorTextFieldControl.java b/xml/dom-impl/src/com/intellij/util/xml/ui/EditorTextFieldControl.java
index eb27a93d0e60..e9a9f70c7a54 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/ui/EditorTextFieldControl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/ui/EditorTextFieldControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -47,16 +47,19 @@ import java.util.List;
*/
public abstract class EditorTextFieldControl<T extends JComponent> extends BaseModifiableControl<T, String> {
private static final JTextField J_TEXT_FIELD = new JTextField() {
+ @Override
public void addNotify() {
throw new UnsupportedOperationException("Shouldn't be shown");
}
+ @Override
public void setVisible(boolean aFlag) {
throw new UnsupportedOperationException("Shouldn't be shown");
}
};
private final boolean myCommitOnEveryChange;
private final DocumentListener myListener = new DocumentAdapter() {
+ @Override
public void documentChanged(DocumentEvent e) {
setModified();
if (myCommitOnEveryChange) {
@@ -77,6 +80,7 @@ public abstract class EditorTextFieldControl<T extends JComponent> extends BaseM
protected abstract EditorTextField getEditorTextField(@NotNull T component);
+ @Override
protected void doReset() {
final EditorTextField textField = getEditorTextField(getComponent());
textField.getDocument().removeDocumentListener(myListener);
@@ -84,14 +88,17 @@ public abstract class EditorTextFieldControl<T extends JComponent> extends BaseM
textField.getDocument().addDocumentListener(myListener);
}
+ @Override
protected JComponent getComponentToListenFocusLost(final T component) {
return getEditorTextField(getComponent());
}
+ @Override
protected JComponent getHighlightedComponent(final T component) {
return J_TEXT_FIELD;
}
+ @Override
protected T createMainComponent(T boundedComponent) {
final Project project = getProject();
boundedComponent = createMainComponent(boundedComponent, project);
@@ -104,15 +111,19 @@ public abstract class EditorTextFieldControl<T extends JComponent> extends BaseM
protected abstract T createMainComponent(T boundedComponent, Project project);
+ @Override
@NotNull
protected String getValue() {
return getEditorTextField(getComponent()).getText();
}
+ @Override
protected void setValue(final String value) {
CommandProcessor.getInstance().runUndoTransparentAction(new Runnable() {
+ @Override
public void run() {
new WriteAction() {
+ @Override
protected void run(Result result) throws Throwable {
final T component = getComponent();
final Document document = getEditorTextField(component).getDocument();
@@ -123,6 +134,7 @@ public abstract class EditorTextFieldControl<T extends JComponent> extends BaseM
});
}
+ @Override
protected void updateComponent() {
final DomElement domElement = getDomElement();
if (domElement == null || !domElement.isValid()) return;
@@ -130,6 +142,7 @@ public abstract class EditorTextFieldControl<T extends JComponent> extends BaseM
final EditorTextField textField = getEditorTextField(getComponent());
final Project project = getProject();
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
if (!project.isOpen()) return;
if (!getDomWrapper().isValid()) return;
@@ -170,13 +183,16 @@ public abstract class EditorTextFieldControl<T extends JComponent> extends BaseM
}
+ @Override
public boolean canNavigate(final DomElement element) {
return getDomElement().equals(element);
}
+ @Override
public void navigate(final DomElement element) {
final EditorTextField field = getEditorTextField(getComponent());
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
field.requestFocus();
field.selectAll();
diff --git a/xml/dom-impl/src/com/intellij/util/xml/ui/TextControl.java b/xml/dom-impl/src/com/intellij/util/xml/ui/TextControl.java
index c6dec44320f2..51702cbea5f7 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/ui/TextControl.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/ui/TextControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -47,6 +47,7 @@ public class TextControl extends EditorTextFieldControl<TextPanel> {
super(domWrapper, commitOnEveryChange);
}
+ @Override
protected EditorTextField getEditorTextField(@NotNull final TextPanel panel) {
final Component component = panel.getComponent(0);
if (component instanceof ReferenceEditorWithBrowseButton) {
@@ -55,12 +56,14 @@ public class TextControl extends EditorTextFieldControl<TextPanel> {
return (EditorTextField)component;
}
+ @Override
protected TextPanel createMainComponent(TextPanel boundedComponent, final Project project) {
if (boundedComponent == null) {
boundedComponent = new TextPanel();
}
boundedComponent.removeAll();
final Function<String, Document> factory = new Function<String, Document>() {
+ @Override
public Document fun(final String s) {
return PsiDocumentManager.getInstance(project)
.getDocument(PsiFileFactory.getInstance(project).createFileFromText("a.txt", PlainTextLanguage.INSTANCE, "", true, false));
@@ -68,6 +71,7 @@ public class TextControl extends EditorTextFieldControl<TextPanel> {
};
final TextPanel boundedComponent1 = boundedComponent;
final EditorTextField editorTextField = new EditorTextField(factory.fun(""), project, FileTypes.PLAIN_TEXT) {
+ @Override
protected EditorEx createEditor() {
final EditorEx editor = super.createEditor();
return boundedComponent1 instanceof MultiLineTextPanel ? makeBigEditor(editor, ((MultiLineTextPanel)boundedComponent1).getRowCount()) : editor;
@@ -82,8 +86,10 @@ public class TextControl extends EditorTextFieldControl<TextPanel> {
final ReferenceEditorWithBrowseButton editor = new ReferenceEditorWithBrowseButton(null, editorTextField, factory);
boundedComponent.add(editor);
editor.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
EditorTextField textArea = new EditorTextField(editorTextField.getDocument(), project, FileTypes.PLAIN_TEXT) {
+ @Override
protected EditorEx createEditor() {
final EditorEx editor = super.createEditor();
editor.setEmbeddedIntoDialogWrapper(true);
diff --git a/xml/dom-impl/src/com/intellij/xml/impl/dom/AbstractDomChildrenDescriptor.java b/xml/dom-impl/src/com/intellij/xml/impl/dom/AbstractDomChildrenDescriptor.java
index e003931067aa..bc750c2690c1 100644
--- a/xml/dom-impl/src/com/intellij/xml/impl/dom/AbstractDomChildrenDescriptor.java
+++ b/xml/dom-impl/src/com/intellij/xml/impl/dom/AbstractDomChildrenDescriptor.java
@@ -49,6 +49,7 @@ public abstract class AbstractDomChildrenDescriptor implements XmlElementDescrip
myManager = manager;
}
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(final XmlTag context) {
final DomElement domElement = myManager.getDomElement(context);
if (domElement == null) return EMPTY_ARRAY;
@@ -104,6 +105,7 @@ public abstract class AbstractDomChildrenDescriptor implements XmlElementDescrip
return null;
}
+ @Override
@Nullable
public XmlElementDescriptor getElementDescriptor(@NotNull final XmlTag childTag, @Nullable XmlTag contextTag) {
DomElement domElement = myManager.getDomElement(childTag);
@@ -147,6 +149,7 @@ public abstract class AbstractDomChildrenDescriptor implements XmlElementDescrip
return new DomElementXmlDescriptor((DomChildrenDescription)description, myManager);
}
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final @Nullable XmlTag context) {
if (context == null) return XmlAttributeDescriptor.EMPTY;
@@ -172,6 +175,7 @@ public abstract class AbstractDomChildrenDescriptor implements XmlElementDescrip
return descriptors.toArray(new XmlAttributeDescriptor[descriptors.size()]);
}
+ @Override
@Nullable
public XmlAttributeDescriptor getAttributeDescriptor(final String attributeName, final @Nullable XmlTag context) {
DomElement domElement = myManager.getDomElement(context);
@@ -185,57 +189,69 @@ public abstract class AbstractDomChildrenDescriptor implements XmlElementDescrip
return null;
}
+ @Override
@Nullable
public XmlAttributeDescriptor getAttributeDescriptor(final XmlAttribute attribute) {
return getAttributeDescriptor(attribute.getName(), attribute.getParent());
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
return new XmlNSDescriptor() {
+ @Override
@Nullable
public XmlElementDescriptor getElementDescriptor(@NotNull final XmlTag tag) {
throw new UnsupportedOperationException("Method getElementDescriptor not implemented in " + getClass());
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable final XmlDocument document) {
throw new UnsupportedOperationException("Method getRootElementsDescriptors not implemented in " + getClass());
}
+ @Override
@Nullable
public XmlFile getDescriptorFile() {
return null;
}
+ @Override
public boolean isHierarhyEnabled() {
throw new UnsupportedOperationException("Method isHierarhyEnabled not implemented in " + getClass());
}
+ @Override
@Nullable
public PsiElement getDeclaration() {
throw new UnsupportedOperationException("Method getDeclaration not implemented in " + getClass());
}
+ @Override
@NonNls
public String getName(final PsiElement context) {
throw new UnsupportedOperationException("Method getName not implemented in " + getClass());
}
+ @Override
@NonNls
public String getName() {
throw new UnsupportedOperationException("Method getName not implemented in " + getClass());
}
+ @Override
public void init(final PsiElement element) {
throw new UnsupportedOperationException("Method init not implemented in " + getClass());
}
+ @Override
public Object[] getDependences() {
throw new UnsupportedOperationException("Method getDependences not implemented in " + getClass());
}
};
}
+ @Override
public int getContentType() {
return CONTENT_TYPE_UNKNOWN;
}
@@ -245,19 +261,23 @@ public abstract class AbstractDomChildrenDescriptor implements XmlElementDescrip
return null;
}
+ @Override
public void init(final PsiElement element) {
throw new UnsupportedOperationException("Method init not implemented in " + getClass());
}
+ @Override
public Object[] getDependences() {
throw new UnsupportedOperationException("Method getDependences not implemented in " + getClass());
}
+ @Override
@NonNls
public String getName() {
return getDefaultName();
}
+ @Override
public String getQualifiedName() {
return getDefaultName();
}
diff --git a/xml/dom-impl/src/com/intellij/xml/impl/dom/DomAttributeXmlDescriptor.java b/xml/dom-impl/src/com/intellij/xml/impl/dom/DomAttributeXmlDescriptor.java
index 635420098b6e..282215bf663a 100644
--- a/xml/dom-impl/src/com/intellij/xml/impl/dom/DomAttributeXmlDescriptor.java
+++ b/xml/dom-impl/src/com/intellij/xml/impl/dom/DomAttributeXmlDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,47 +43,57 @@ public class DomAttributeXmlDescriptor implements NamespaceAwareXmlAttributeDesc
myProject = project;
}
+ @Override
public boolean isRequired() {
final Required required = myDescription.getAnnotation(Required.class);
return required != null && required.value();
}
+ @Override
public boolean isFixed() {
return false;
}
+ @Override
public boolean hasIdType() {
return false;
}
+ @Override
public boolean hasIdRefType() {
return false;
}
+ @Override
@Nullable
public String getDefaultValue() {
return null;
}//todo: refactor to hierarchy of value descriptor?
+ @Override
public boolean isEnumerated() {
return false;
}
+ @Override
@Nullable
public String[] getEnumeratedValues() {
return null;
}
+ @Override
@Nullable
public String validateValue(final XmlElement context, final String value) {
return null;
}
+ @Override
@Nullable
public PsiElement getDeclaration() {
return myDescription.getDeclaration(myProject);
}
+ @Override
@NonNls
public String getName(final PsiElement context) {
return getQualifiedAttributeName(context, myDescription.getXmlName());
@@ -108,6 +118,7 @@ public class DomAttributeXmlDescriptor implements NamespaceAwareXmlAttributeDesc
return localName;
}
+ @Override
@NonNls
public String getName() {
return getLocalName();
@@ -117,6 +128,7 @@ public class DomAttributeXmlDescriptor implements NamespaceAwareXmlAttributeDesc
return myDescription.getXmlName().getLocalName();
}
+ @Override
@Nullable
public String getNamespace(@NotNull XmlTag context) {
final DomInvocationHandler handler = DomManagerImpl.getDomManager(myProject).getDomHandler(context);
@@ -127,10 +139,12 @@ public class DomAttributeXmlDescriptor implements NamespaceAwareXmlAttributeDesc
return handler.createEvaluatedXmlName(myDescription.getXmlName()).getNamespace(context, handler.getFile());
}
+ @Override
public void init(final PsiElement element) {
throw new UnsupportedOperationException("Method init not implemented in " + getClass());
}
+ @Override
public Object[] getDependences() {
throw new UnsupportedOperationException("Method getDependences not implemented in " + getClass());
}
diff --git a/xml/dom-impl/src/com/intellij/xml/impl/dom/DomElementXmlDescriptor.java b/xml/dom-impl/src/com/intellij/xml/impl/dom/DomElementXmlDescriptor.java
index d5894851bf93..e754a54ca0f6 100644
--- a/xml/dom-impl/src/com/intellij/xml/impl/dom/DomElementXmlDescriptor.java
+++ b/xml/dom-impl/src/com/intellij/xml/impl/dom/DomElementXmlDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,15 +50,18 @@ public class DomElementXmlDescriptor extends AbstractDomChildrenDescriptor imple
myChildrenDescription = childrenDescription;
}
+ @Override
public String getDefaultName() {
return myChildrenDescription.getXmlElementName();
}
+ @Override
@Nullable
public PsiElement getDeclaration() {
return myChildrenDescription.getDeclaration(myManager.getProject());
}
+ @Override
@NonNls
public String getName(final PsiElement context) {
final String name = getDefaultName();
@@ -95,65 +98,79 @@ public class DomElementXmlDescriptor extends AbstractDomChildrenDescriptor imple
myDomElement = domElement;
}
+ @Override
public String getName() {
return getXmlElementName();
}
+ @Override
public boolean isValid() {
return true;
}
+ @Override
public void navigate(boolean requestFocus) {
}
+ @Override
public boolean canNavigate() {
return false;
}
+ @Override
public boolean canNavigateToSource() {
return false;
}
+ @Override
@NotNull
public XmlName getXmlName() {
throw new UnsupportedOperationException("Method getXmlName not implemented in " + getClass());
}
+ @Override
@NotNull
public String getXmlElementName() {
return myDomElement.getXmlElementName();
}
+ @Override
@NotNull
public String getCommonPresentableName(@NotNull final DomNameStrategy strategy) {
throw new UnsupportedOperationException("Method getCommonPresentableName not implemented in " + getClass());
}
+ @Override
@NotNull
public String getCommonPresentableName(@NotNull final DomElement parent) {
throw new UnsupportedOperationException("Method getCommonPresentableName not implemented in " + getClass());
}
+ @Override
@NotNull
public List<? extends DomElement> getValues(@NotNull final DomElement parent) {
throw new UnsupportedOperationException("Method getValues not implemented in " + getClass());
}
+ @Override
@NotNull
public List<? extends DomElement> getStableValues(@NotNull final DomElement parent) {
throw new UnsupportedOperationException("Method getStableValues not implemented in " + getClass());
}
+ @Override
@NotNull
public Type getType() {
throw new UnsupportedOperationException("Method getType not implemented in " + getClass());
}
+ @Override
@NotNull
public DomNameStrategy getDomNameStrategy(@NotNull final DomElement parent) {
throw new UnsupportedOperationException("Method getDomNameStrategy not implemented in " + getClass());
}
+ @Override
public <T> T getUserData(final Key<T> key) {
return null;
}
@@ -163,11 +180,13 @@ public class DomElementXmlDescriptor extends AbstractDomChildrenDescriptor imple
return null;
}
+ @Override
@Nullable
public <T extends Annotation> T getAnnotation(final Class<T> annotationClass) {
throw new UnsupportedOperationException("Method getAnnotation not implemented in " + getClass());
}
+ @Override
@Nullable
public PsiElement getDeclaration(final Project project) {
return PomService.convertToPsi(project, this);
diff --git a/xml/dom-openapi/src/com/intellij/patterns/DomElementPattern.java b/xml/dom-openapi/src/com/intellij/patterns/DomElementPattern.java
index e68cf0d0e899..3e24bd642ac2 100644
--- a/xml/dom-openapi/src/com/intellij/patterns/DomElementPattern.java
+++ b/xml/dom-openapi/src/com/intellij/patterns/DomElementPattern.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,13 +38,16 @@ public class DomElementPattern<T extends DomElement,Self extends DomElementPatte
super(condition);
}
+ @Override
protected DomElement getParent(@NotNull DomElement t) {
return t.getParent();
}
+ @Override
protected DomElement[] getChildren(@NotNull final DomElement domElement) {
final List<DomElement> children = new ArrayList<DomElement>();
domElement.acceptChildren(new DomElementVisitor() {
+ @Override
public void visitDomElement(final DomElement element) {
children.add(element);
}
@@ -61,6 +64,7 @@ public class DomElementPattern<T extends DomElement,Self extends DomElementPatte
public Self withChild(@NonNls @NotNull final String localName, final ElementPattern pattern) {
return with(new PatternCondition<T>("withChild") {
+ @Override
public boolean accepts(@NotNull final T t, final ProcessingContext context) {
for (final AbstractDomChildrenDescription description : t.getGenericInfo().getChildrenDescriptions()) {
if (!(description instanceof DomChildrenDescription) || localName.equals(((DomChildrenDescription)description).getXmlElementName())) {
diff --git a/xml/dom-openapi/src/com/intellij/patterns/DomPatterns.java b/xml/dom-openapi/src/com/intellij/patterns/DomPatterns.java
index 025b42c5326c..aa5bfdbc4ace 100644
--- a/xml/dom-openapi/src/com/intellij/patterns/DomPatterns.java
+++ b/xml/dom-openapi/src/com/intellij/patterns/DomPatterns.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -52,6 +52,7 @@ public class DomPatterns {
public static XmlElementPattern.Capture withDom(final ElementPattern<? extends DomElement> pattern) {
return new XmlElementPattern.Capture().with(new PatternCondition<XmlElement>("tagWithDom") {
+ @Override
public boolean accepts(@NotNull final XmlElement xmlElement, final ProcessingContext context) {
final DomManager manager = DomManager.getDomManager(xmlElement.getProject());
if (xmlElement instanceof XmlAttribute) {
diff --git a/xml/dom-openapi/src/com/intellij/patterns/GenericDomValuePattern.java b/xml/dom-openapi/src/com/intellij/patterns/GenericDomValuePattern.java
index f02965b18353..b990f9bcc379 100644
--- a/xml/dom-openapi/src/com/intellij/patterns/GenericDomValuePattern.java
+++ b/xml/dom-openapi/src/com/intellij/patterns/GenericDomValuePattern.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,6 +26,7 @@ import org.jetbrains.annotations.Nullable;
*/
public class GenericDomValuePattern<T> extends DomElementPattern<GenericDomValue<T>, GenericDomValuePattern<T>>{
private static final InitialPatternCondition CONDITION = new InitialPatternCondition(GenericDomValue.class) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof GenericDomValue;
}
@@ -37,6 +38,7 @@ public class GenericDomValuePattern<T> extends DomElementPattern<GenericDomValue
protected GenericDomValuePattern(final Class<T> aClass) {
super(new InitialPatternCondition(aClass) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof GenericDomValue && aClass.equals(DomUtil.getGenericValueParameter(((GenericDomValue)o).getDomElementType()));
}
@@ -46,6 +48,7 @@ public class GenericDomValuePattern<T> extends DomElementPattern<GenericDomValue
public GenericDomValuePattern<T> withStringValue(final ElementPattern<String> pattern) {
return with(new PatternCondition<GenericDomValue<T>>("withStringValue") {
+ @Override
public boolean accepts(@NotNull final GenericDomValue<T> genericDomValue, final ProcessingContext context) {
return pattern.getCondition().accepts(genericDomValue.getStringValue(), context);
}
@@ -59,6 +62,7 @@ public class GenericDomValuePattern<T> extends DomElementPattern<GenericDomValue
public GenericDomValuePattern<T> withValue(final ElementPattern<?> pattern) {
return with(new PatternCondition<GenericDomValue<T>>("withValue") {
+ @Override
public boolean accepts(@NotNull final GenericDomValue<T> genericDomValue, final ProcessingContext context) {
return pattern.getCondition().accepts(genericDomValue.getValue(), context);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/AbstractConvertContext.java b/xml/dom-openapi/src/com/intellij/util/xml/AbstractConvertContext.java
index fc7cbefea494..c2799d7a4b68 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/AbstractConvertContext.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/AbstractConvertContext.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,33 +34,39 @@ import org.jetbrains.annotations.Nullable;
*/
public abstract class AbstractConvertContext extends ConvertContext {
+ @Override
public final XmlTag getTag() {
return getInvocationElement().getXmlTag();
}
+ @Override
@Nullable
public XmlElement getXmlElement() {
return getInvocationElement().getXmlElement();
}
+ @Override
@NotNull
public final XmlFile getFile() {
return DomUtil.getFile(getInvocationElement());
}
+ @Override
public Module getModule() {
final DomFileElement<DomElement> fileElement = DomUtil.getFileElement(getInvocationElement());
if (fileElement == null) {
final XmlElement xmlElement = getInvocationElement().getXmlElement();
return xmlElement == null ? null : ModuleUtilCore.findModuleForPsiElement(xmlElement);
}
- return fileElement.getRootElement().getModule();
+ return fileElement.isValid() ? fileElement.getRootElement().getModule() : null;
}
+ @Override
public PsiManager getPsiManager() {
return getFile().getManager();
}
+ @Override
@Nullable
public GlobalSearchScope getSearchScope() {
GlobalSearchScope scope = null;
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/Converter.java b/xml/dom-openapi/src/com/intellij/util/xml/Converter.java
index 48a02fc43847..38f542d7f237 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/Converter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/Converter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -53,6 +53,7 @@ public abstract class Converter<T> {
*/
@Deprecated
public static final Converter<Integer> INTEGER_CONVERTER = new Converter<Integer>() {
+ @Override
public Integer fromString(final String s, final ConvertContext context) {
if (s == null) return null;
try {
@@ -63,10 +64,12 @@ public abstract class Converter<T> {
}
}
+ @Override
public String toString(final Integer t, final ConvertContext context) {
return t == null? null: t.toString();
}
+ @Override
public String getErrorMessage(final String s, final ConvertContext context) {
return IdeBundle.message("value.should.be.integer");
}
@@ -74,10 +77,12 @@ public abstract class Converter<T> {
@Deprecated
public static final Converter<String> EMPTY_CONVERTER = new Converter<String>() {
+ @Override
public String fromString(final String s, final ConvertContext context) {
return s;
}
+ @Override
public String toString(final String t, final ConvertContext context) {
return t;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DomFileDescription.java b/xml/dom-openapi/src/com/intellij/util/xml/DomFileDescription.java
index 74dc6a849344..eb5de3eebf43 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DomFileDescription.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DomFileDescription.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -220,7 +220,7 @@ public class DomFileDescription<T> {
* @return dependency item set
*/
@NotNull
- public Set<? extends Object> getDependencyItems(XmlFile file) {
+ public Set<?> getDependencyItems(XmlFile file) {
return Collections.emptySet();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DomIconProvider.java b/xml/dom-openapi/src/com/intellij/util/xml/DomIconProvider.java
index fd47a61b5a06..bd5a9c2244f8 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DomIconProvider.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DomIconProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ import javax.swing.*;
* @see com.intellij.ide.presentation.Presentation
*/
public abstract class DomIconProvider extends PomIconProvider {
+ @Override
public Icon getIcon(@NotNull PomTarget target, int flags) {
if (target instanceof DomTarget) {
return getIcon(((DomTarget)target).getDomElement(), flags);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DomMetaData.java b/xml/dom-openapi/src/com/intellij/util/xml/DomMetaData.java
index 0975c4a0480f..dd94f5be2748 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DomMetaData.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DomMetaData.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@ public class DomMetaData<T extends DomElement> implements PsiWritableMetaData, P
@Nullable
private GenericDomValue myNameElement;
+ @Override
public final PsiElement getDeclaration() {
return myElement.getXmlTag();
}
@@ -42,11 +43,13 @@ public class DomMetaData<T extends DomElement> implements PsiWritableMetaData, P
return myElement;
}
+ @Override
@NonNls
public String getName(PsiElement context) {
return getName();
}
+ @Override
@NonNls
public final String getName() {
final String s = ElementPresentationManager.getElementName(myElement);
@@ -56,6 +59,7 @@ public class DomMetaData<T extends DomElement> implements PsiWritableMetaData, P
return value == null ? null : value.getStringValue();
}
+ @Override
public void init(PsiElement element) {
myElement = (T) DomManager.getDomManager(element.getProject()).getDomElement((XmlTag)element);
assert myElement != null : element;
@@ -71,6 +75,7 @@ public class DomMetaData<T extends DomElement> implements PsiWritableMetaData, P
return myElement.getGenericInfo().getNameDomElement(t);
}
+ @Override
public Object[] getDependences() {
final PsiElement declaration = getDeclaration();
if (myElement != null && myElement.isValid()) {
@@ -79,16 +84,19 @@ public class DomMetaData<T extends DomElement> implements PsiWritableMetaData, P
return new Object[]{declaration};
}
+ @Override
public void setName(String name) throws IncorrectOperationException {
if (myNameElement != null) {
myNameElement.setStringValue(name);
}
}
+ @Override
public String getTypeName() {
return ElementPresentationManager.getTypeNameForObject(myElement);
}
+ @Override
public Icon getIcon() {
return ElementPresentationManager.getIcon(myElement);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DomResolveConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/DomResolveConverter.java
index 22a59e2989eb..6bcc8a9d30a6 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DomResolveConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DomResolveConverter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -44,6 +44,7 @@ import java.util.Map;
*/
public class DomResolveConverter<T extends DomElement> extends ResolvingConverter<T>{
private static final FactoryMap<Class<? extends DomElement>,DomResolveConverter> ourCache = new ConcurrentFactoryMap<Class<? extends DomElement>, DomResolveConverter>() {
+ @Override
@NotNull
protected DomResolveConverter create(final Class<? extends DomElement> key) {
return new DomResolveConverter(key);
@@ -51,11 +52,13 @@ public class DomResolveConverter<T extends DomElement> extends ResolvingConverte
};
private final boolean myAttribute;
private final SoftFactoryMap<DomElement, CachedValue<Map<String, DomElement>>> myResolveCache = new SoftFactoryMap<DomElement, CachedValue<Map<String, DomElement>>>() {
+ @Override
@NotNull
protected CachedValue<Map<String, DomElement>> create(final DomElement scope) {
final DomManager domManager = scope.getManager();
final Project project = domManager.getProject();
return CachedValuesManager.getManager(project).createCachedValue(new CachedValueProvider<Map<String, DomElement>>() {
+ @Override
public Result<Map<String, DomElement>> compute() {
final Map<String, DomElement> map = new THashMap<String, DomElement>();
visitDomElement(scope, map);
@@ -91,6 +94,7 @@ public class DomResolveConverter<T extends DomElement> extends ResolvingConverte
return ourCache.get(aClass);
}
+ @Override
public final T fromString(final String s, final ConvertContext context) {
if (s == null) return null;
return (T) myResolveCache.get(getResolvingScope(context)).getValue().get(s);
@@ -113,16 +117,19 @@ public class DomResolveConverter<T extends DomElement> extends ResolvingConverte
return invocationElement.getManager().getResolvingScope((GenericDomValue)invocationElement);
}
+ @Override
public String getErrorMessage(final String s, final ConvertContext context) {
return CodeInsightBundle.message("error.cannot.resolve.0.1", TypePresentationService.getService().getTypePresentableName(myClass), s);
}
+ @Override
public final String toString(final T t, final ConvertContext context) {
if (t == null) return null;
return ElementPresentationManager.getElementName(t);
}
+ @Override
@NotNull
public Collection<? extends T> getVariants(final ConvertContext context) {
final DomElement reference = context.getInvocationElement();
@@ -130,6 +137,7 @@ public class DomResolveConverter<T extends DomElement> extends ResolvingConverte
return (Collection<T>)myResolveCache.get(scope).getValue().values();
}
+ @Override
public LocalQuickFix[] getQuickFixes(final ConvertContext context) {
final DomElement element = context.getInvocationElement();
final GenericDomValue value = ((GenericDomValue)element).createStableCopy();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DomService.java b/xml/dom-openapi/src/com/intellij/util/xml/DomService.java
index 11a6b632f2d2..dced490f43d5 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DomService.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DomService.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -54,6 +54,7 @@ public abstract class DomService {
*/
public Collection<VirtualFile> getDomFileCandidates(Class<? extends DomElement> rootElementClass, Project project, final GlobalSearchScope scope) {
return ContainerUtil.findAll(getDomFileCandidates(rootElementClass, project), new Condition<VirtualFile>() {
+ @Override
public boolean value(final VirtualFile file) {
return scope.contains(file);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DomTarget.java b/xml/dom-openapi/src/com/intellij/util/xml/DomTarget.java
index 9f061d0ac7a5..21236fe0e856 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DomTarget.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DomTarget.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -81,19 +81,23 @@ public class DomTarget extends DelegatePsiTarget implements PsiDeclaredTarget, P
return new DomTarget(element, tag, XmlTagUtil.getTrimmedValueRange(tag), nameElement);
}
+ @Override
public TextRange getNameIdentifierRange() {
return myRange;
}
+ @Override
public boolean isWritable() {
return getNavigationElement().isWritable();
}
+ @Override
public Object setName(@NotNull String newName) {
myNameDomElement.setStringValue(newName);
return myDomElement;
}
+ @Override
@Nullable
public String getName() {
return myNameDomElement.getStringValue();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DomUtil.java b/xml/dom-openapi/src/com/intellij/util/xml/DomUtil.java
index 2622a2b4bcfc..723568d2ebeb 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DomUtil.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DomUtil.java
@@ -53,6 +53,7 @@ public class DomUtil {
private static final Key<DomFileElement> FILE_ELEMENT_KEY = Key.create("dom file element");
private static final ConcurrentFactoryMap<Type, Class> ourTypeParameters = new ConcurrentFactoryMap<Type, Class>() {
+ @Override
@NotNull
protected Class create(final Type key) {
final Class<?> result = substituteGenericType(GENERIC_VALUE_TYPE_VARIABLE, key);
@@ -60,6 +61,7 @@ public class DomUtil {
}
};
private static final ConcurrentFactoryMap<Couple<Type>, Class> ourVariableSubstitutions = new ConcurrentFactoryMap<Couple<Type>, Class>() {
+ @Override
@Nullable
protected Class create(final Couple<Type> key) {
return ReflectionUtil.substituteGenericType(key.first, key.second);
@@ -160,7 +162,7 @@ public class DomUtil {
}
public static Class<?> substituteGenericType(Type genericType, Type classType) {
- return ourVariableSubstitutions.get(Couple.newOne(genericType, classType));
+ return ourVariableSubstitutions.get(Couple.of(genericType, classType));
}
@Nullable
@@ -208,6 +210,7 @@ public class DomUtil {
public static <T> List<T> getChildrenOfType(@NotNull final DomElement parent, final Class<T> type) {
final List<T> result = new SmartList<T>();
parent.acceptChildren(new DomElementVisitor() {
+ @Override
public void visitDomElement(final DomElement element) {
if (type.isInstance(element)) {
result.add((T)element);
@@ -221,6 +224,7 @@ public class DomUtil {
if (parent instanceof MergedObject) {
final SmartList<DomElement> result = new SmartList<DomElement>();
parent.acceptChildren(new DomElementVisitor() {
+ @Override
public void visitDomElement(final DomElement element) {
if (hasXml(element)) {
result.add(element);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/DummyEvaluatedXmlName.java b/xml/dom-openapi/src/com/intellij/util/xml/DummyEvaluatedXmlName.java
index 30dbe7f18bd1..dedd40e9a1c3 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/DummyEvaluatedXmlName.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/DummyEvaluatedXmlName.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,10 +36,12 @@ public class DummyEvaluatedXmlName implements EvaluatedXmlName {
myNamespace = namespace;
}
+ @Override
public XmlName getXmlName() {
return myXmlName;
}
+ @Override
public EvaluatedXmlName evaluateChildName(@NotNull final XmlName name) {
String namespaceKey = name.getNamespaceKey();
if (namespaceKey == null) {
@@ -48,10 +50,12 @@ public class DummyEvaluatedXmlName implements EvaluatedXmlName {
return EvaluatedXmlNameImpl.createEvaluatedXmlName(name, namespaceKey, false);
}
+ @Override
public boolean isNamespaceAllowed(final String namespace, final XmlFile file, boolean qualified) {
return namespace.equals(myNamespace);
}
+ @Override
@NotNull
@NonNls
public String getNamespace(@NotNull final XmlElement parentElement, final XmlFile file) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ElementPresentationManager.java b/xml/dom-openapi/src/com/intellij/util/xml/ElementPresentationManager.java
index 1092a54eabc2..72a33b8144d2 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ElementPresentationManager.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ElementPresentationManager.java
@@ -43,6 +43,7 @@ import java.util.List;
*/
public abstract class ElementPresentationManager {
private static final ConcurrentFactoryMap<Class,Method> ourNameValueMethods = new ConcurrentFactoryMap<Class, Method>() {
+ @Override
@Nullable
protected Method create(final Class key) {
for (final Method method : ReflectionUtil.getClassPublicMethods(key)) {
@@ -55,6 +56,7 @@ public abstract class ElementPresentationManager {
};
private final static Function<Object, String> DEFAULT_NAMER = new Function<Object, String>() {
+ @Override
@Nullable
public String fun(final Object element) {
return getElementName(element);
@@ -96,6 +98,7 @@ public abstract class ElementPresentationManager {
static {
ourIconProviders.add(new NullableFunction<Object, Icon>() {
+ @Override
public Icon fun(final Object o) {
return o instanceof Iconable ? ((Iconable)o).getIcon(Iconable.ICON_FLAG_READ_STATUS) : null;
}
@@ -115,8 +118,9 @@ public abstract class ElementPresentationManager {
public static void registerDocumentationProvider(Function<Object, String> function) { ourDocumentationProviders.add(function); }
- public static final <T>NullableFunction<T, String> NAMER() {
+ public static <T>NullableFunction<T, String> NAMER() {
return new NullableFunction<T, String>() {
+ @Override
public String fun(final T o) {
return getElementName(o);
}
@@ -124,6 +128,7 @@ public abstract class ElementPresentationManager {
}
public static final NullableFunction<Object, String> NAMER = new NullableFunction<Object, String>() {
+ @Override
public String fun(final Object o) {
return getElementName(o);
}
@@ -259,7 +264,7 @@ public abstract class ElementPresentationManager {
return null;
}
- public static Method findNameValueMethod(final Class<? extends Object> aClass) {
+ public static Method findNameValueMethod(final Class<?> aClass) {
synchronized (ourNameValueMethods) {
return ourNameValueMethods.get(aClass);
}
@@ -268,6 +273,7 @@ public abstract class ElementPresentationManager {
@Nullable
public static <T> T findByName(Collection<T> collection, final String name) {
return ContainerUtil.find(collection, new Condition<T>() {
+ @Override
public boolean value(final T object) {
return Comparing.equal(name, getElementName(object), true);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/EvaluatedXmlNameImpl.java b/xml/dom-openapi/src/com/intellij/util/xml/EvaluatedXmlNameImpl.java
index c2422f03a1cc..a0caa3453840 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/EvaluatedXmlNameImpl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/EvaluatedXmlNameImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -55,10 +55,12 @@ public class EvaluatedXmlNameImpl implements EvaluatedXmlName {
return myXmlName.getLocalName();
}
+ @Override
public final XmlName getXmlName() {
return myXmlName;
}
+ @Override
public final EvaluatedXmlName evaluateChildName(@NotNull final XmlName name) {
String namespaceKey = name.getNamespaceKey();
final boolean equalToParent = Comparing.equal(namespaceKey, myNamespaceKey);
@@ -105,8 +107,10 @@ public class EvaluatedXmlNameImpl implements EvaluatedXmlName {
CachedValue<FactoryMap<String, List<String>>> value = file.getUserData(NAMESPACE_PROVIDER_KEY);
if (value == null) {
file.putUserData(NAMESPACE_PROVIDER_KEY, value = CachedValuesManager.getManager(file.getProject()).createCachedValue(new CachedValueProvider<FactoryMap<String, List<String>>>() {
+ @Override
public Result<FactoryMap<String, List<String>>> compute() {
final FactoryMap<String, List<String>> map = new ConcurrentFactoryMap<String, List<String>>() {
+ @Override
protected List<String> create(final String key) {
final DomFileDescription<?> description = DomManager.getDomManager(file.getProject()).getDomFileDescription(file);
if (description == null) return Collections.emptyList();
@@ -128,10 +132,12 @@ public class EvaluatedXmlNameImpl implements EvaluatedXmlName {
}
+ @Override
public final boolean isNamespaceAllowed(String namespace, final XmlFile file, boolean qualified) {
return myNamespaceKey == null || myEqualToParent && !qualified || isNamespaceAllowed(namespace, getNamespaceList(file));
}
+ @Override
@NotNull @NonNls
public final String getNamespace(@NotNull XmlElement parentElement, final XmlFile file) {
final String xmlElementNamespace = getXmlElementNamespace(parentElement);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/GenericDomValue.java b/xml/dom-openapi/src/com/intellij/util/xml/GenericDomValue.java
index ce75a5fbcbd1..3eecaa424675 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/GenericDomValue.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/GenericDomValue.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,9 +25,11 @@ public interface GenericDomValue<T> extends DomElement, MutableGenericValue<T>{
@NotNull
Converter<T> getConverter();
+ @Override
@TagValue
void setStringValue(String value);
+ @Override
void setValue(T value);
/**
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/GenericValueUtil.java b/xml/dom-openapi/src/com/intellij/util/xml/GenericValueUtil.java
index d83c043b042f..814f46ffe04f 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/GenericValueUtil.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/GenericValueUtil.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,11 +31,13 @@ public class GenericValueUtil {
}
public static NullableFunction<GenericValue, String> STRING_VALUE = new NullableFunction<GenericValue, String>() {
+ @Override
public String fun(final GenericValue genericValue) {
return genericValue.getStringValue();
}
};
public static NullableFunction<GenericValue, Object> OBJECT_VALUE = new NullableFunction<GenericValue, Object>() {
+ @Override
public Object fun(final GenericValue genericValue) {
return genericValue.getValue();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/HyphenNameStrategy.java b/xml/dom-openapi/src/com/intellij/util/xml/HyphenNameStrategy.java
index 2242e0f7a0e1..dd1c111ecbee 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/HyphenNameStrategy.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/HyphenNameStrategy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,6 +25,7 @@ import com.intellij.openapi.util.text.StringUtil;
* @author peter
*/
public class HyphenNameStrategy extends DomNameStrategy {
+ @Override
public String convertName(String propertyName) {
final String[] words = NameUtil.nameToWords(propertyName);
for (int i = 0; i < words.length; i++) {
@@ -33,6 +34,7 @@ public class HyphenNameStrategy extends DomNameStrategy {
return StringUtil.join(words, "-");
}
+ @Override
public String splitIntoWords(final String tagName) {
return tagName.replace('-', ' ');
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/JavaMethod.java b/xml/dom-openapi/src/com/intellij/util/xml/JavaMethod.java
index c4fe1c96596f..4f615dadda6a 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/JavaMethod.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/JavaMethod.java
@@ -92,6 +92,7 @@ public final class JavaMethod implements AnnotatedElement {
return myMethod.getName();
}
+ @Override
public final <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
Object annotation = myAnnotationsMap.get(annotationClass);
if (annotation == null) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/JavaNameStrategy.java b/xml/dom-openapi/src/com/intellij/util/xml/JavaNameStrategy.java
index e6cabb9db0e8..998f4068b200 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/JavaNameStrategy.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/JavaNameStrategy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,15 +28,18 @@ import java.util.Arrays;
*/
public class JavaNameStrategy extends DomNameStrategy {
public static final Function<String,String> DECAPITALIZE_FUNCTION = new Function<String, String>() {
+ @Override
public String fun(final String s) {
return StringUtil.decapitalize(s);
}
};
+ @Override
public final String convertName(String propertyName) {
return StringUtil.decapitalize(propertyName);
}
+ @Override
public final String splitIntoWords(final String tagName) {
return StringUtil.join(Arrays.asList(NameUtil.nameToWords(tagName)), DECAPITALIZE_FUNCTION, " ");
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/MergingFileDescription.java b/xml/dom-openapi/src/com/intellij/util/xml/MergingFileDescription.java
index 1dbe3d4a354e..451e2751809a 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/MergingFileDescription.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/MergingFileDescription.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,6 +38,7 @@ public abstract class MergingFileDescription<T extends DomElement> extends DomFi
@NotNull
protected abstract Set<XmlFile> getFilesToMerge(DomElement element);
+ @Override
@NotNull
public DomElement getResolveScope(GenericDomValue<?> reference) {
final DomElement annotation = getScopeFromAnnotation(reference);
@@ -82,6 +83,7 @@ public abstract class MergingFileDescription<T extends DomElement> extends DomFi
return myMerger.mergeModels(getRootElementClass(), roots);
}
+ @Override
@NotNull
public DomElement getIdentityScope(DomElement element) {
final DomElement annotation = getScopeFromAnnotation(element);
@@ -98,6 +100,7 @@ public abstract class MergingFileDescription<T extends DomElement> extends DomFi
return (DomElement)o;
}
+ @Override
public boolean isAutomaticHighlightingEnabled() {
return false;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ModelMergerUtil.java b/xml/dom-openapi/src/com/intellij/util/xml/ModelMergerUtil.java
index 2481f42aba2f..2b38c6a965e5 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ModelMergerUtil.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ModelMergerUtil.java
@@ -59,6 +59,7 @@ public class ModelMergerUtil {
public static <T, V> V getImplementation(final T element, final Class<V> clazz) {
if (element == null) return null;
CommonProcessors.FindFirstProcessor<T> processor = new CommonProcessors.FindFirstProcessor<T>() {
+ @Override
public boolean process(final T t) {
return !ReflectionUtil.isAssignable(clazz, t.getClass()) || super.process(t);
}
@@ -71,6 +72,7 @@ public class ModelMergerUtil {
public static <T, V> Collection<V> getImplementations(final T element, final Class<V> clazz) {
if (element == null) return Collections.emptyList();
CommonProcessors.CollectProcessor<T> processor = new CommonProcessors.CollectProcessor<T>() {
+ @Override
public boolean process(final T t) {
return !ReflectionUtil.isAssignable(clazz, t.getClass()) || super.process(t);
}
@@ -115,6 +117,7 @@ public class ModelMergerUtil {
myProcessMerged = processMerged;
}
+ @Override
public boolean process(final T t) {
final boolean merged = t instanceof MergedObject;
if ((!merged || myProcessMerged) && !myProcessor.process(t)) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ModuleContentRootSearchScope.java b/xml/dom-openapi/src/com/intellij/util/xml/ModuleContentRootSearchScope.java
index 8a509404bca9..2b54b14d8564 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ModuleContentRootSearchScope.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ModuleContentRootSearchScope.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,18 +31,22 @@ public class ModuleContentRootSearchScope extends GlobalSearchScope {
myModule = module;
}
+ @Override
public boolean contains(@NotNull final VirtualFile file) {
return myRootManager.getFileIndex().isInContent(file);
}
+ @Override
public int compare(@NotNull final VirtualFile file1, @NotNull final VirtualFile file2) {
return 0;
}
+ @Override
public boolean isSearchInModuleContent(@NotNull final Module aModule) {
return aModule == myModule;
}
+ @Override
public boolean isSearchInLibraries() {
return false;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/NamedEnumUtil.java b/xml/dom-openapi/src/com/intellij/util/xml/NamedEnumUtil.java
index 85a59b8c36cb..d8bada07207b 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/NamedEnumUtil.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/NamedEnumUtil.java
@@ -24,11 +24,13 @@ import com.intellij.util.ReflectionUtil;
*/
public class NamedEnumUtil {
private static final Function<Enum, String> NAMED_SHOW = new Function<Enum, String>() {
+ @Override
public String fun(final Enum s) {
return ((NamedEnum) s).getValue();
}
};
private static final Function<Enum, String> SIMPLE_SHOW = new Function<Enum, String>() {
+ @Override
public String fun(final Enum s) {
return s.name();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ParentScopeProvider.java b/xml/dom-openapi/src/com/intellij/util/xml/ParentScopeProvider.java
index c84fa31631d8..a476377ad097 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ParentScopeProvider.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ParentScopeProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -19,6 +19,7 @@ package com.intellij.util.xml;
* @author peter
*/
public class ParentScopeProvider extends ScopeProvider{
+ @Override
public DomElement getScope(DomElement element) {
return element.getParent();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ResolvingConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/ResolvingConverter.java
index f6aa635ad663..7c39d3ecb4c5 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ResolvingConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ResolvingConverter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,15 +37,18 @@ import java.util.Set;
public abstract class ResolvingConverter<T> extends Converter<T> {
@Deprecated
public static final ResolvingConverter EMPTY_CONVERTER = new ResolvingConverter() {
+ @Override
@NotNull
public Collection getVariants(final ConvertContext context) {
return Collections.emptyList();
}
+ @Override
public Object fromString(final String s, final ConvertContext context) {
return s;
}
+ @Override
public String toString(final Object t, final ConvertContext context) {
return String.valueOf(t);
}
@@ -54,6 +57,7 @@ public abstract class ResolvingConverter<T> extends Converter<T> {
/** @see com.intellij.util.xml.converters.values.BooleanValueConverter */
@Deprecated
public static final Converter<Boolean> BOOLEAN_CONVERTER = new ResolvingConverter<Boolean>() {
+ @Override
public Boolean fromString(final String s, final ConvertContext context) {
if ("true".equalsIgnoreCase(s)) {
return Boolean.TRUE;
@@ -64,10 +68,12 @@ public abstract class ResolvingConverter<T> extends Converter<T> {
return null;
}
+ @Override
public String toString(final Boolean t, final ConvertContext context) {
return t == null? null:t.toString();
}
+ @Override
@NotNull
public Collection<? extends Boolean> getVariants(final ConvertContext context) {
final DomElement element = context.getInvocationElement();
@@ -80,6 +86,7 @@ public abstract class ResolvingConverter<T> extends Converter<T> {
}
};
+ @Override
public String getErrorMessage(@Nullable String s, final ConvertContext context) {
return CodeInsightBundle.message("error.cannot.resolve.default.message", s);
}
@@ -202,10 +209,12 @@ public abstract class ResolvingConverter<T> extends Converter<T> {
*/
public static abstract class StringConverter extends ResolvingConverter<String> {
+ @Override
public String fromString(final String s, final ConvertContext context) {
return s;
}
+ @Override
public String toString(final String s, final ConvertContext context) {
return s;
}
@@ -223,10 +232,12 @@ public abstract class ResolvingConverter<T> extends Converter<T> {
myWrappedConverter = converter;
}
+ @Override
public T fromString(final String s, final ConvertContext context) {
return myWrappedConverter.fromString(s, context);
}
+ @Override
public String toString(final T t, final ConvertContext context) {
return myWrappedConverter.toString(t, context);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/RootScopeProvider.java b/xml/dom-openapi/src/com/intellij/util/xml/RootScopeProvider.java
index 79e19230c198..53e559a6b4cd 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/RootScopeProvider.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/RootScopeProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -22,6 +22,7 @@ import org.jetbrains.annotations.NotNull;
*/
public class RootScopeProvider extends ScopeProvider{
+ @Override
public DomElement getScope(@NotNull DomElement element) {
return DomUtil.getRoot(element);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/TypeChooserManager.java b/xml/dom-openapi/src/com/intellij/util/xml/TypeChooserManager.java
index 5086052bb6d4..6602d0fe9a7a 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/TypeChooserManager.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/TypeChooserManager.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,13 +30,16 @@ public class TypeChooserManager {
public TypeChooser getTypeChooser(final Type type) {
final TypeChooser typeChooser = myClassChoosers.get(type);
return typeChooser != null ? typeChooser : new TypeChooser() {
+ @Override
public Type chooseType(final XmlTag tag) {
return type;
}
+ @Override
public void distinguishTag(final XmlTag tag, final Type aClass) {
}
+ @Override
public Type[] getChooserTypes() {
return new Type[]{type};
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/WrappingConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/WrappingConverter.java
index c80c89b6a45b..a0305a935e52 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/WrappingConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/WrappingConverter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,6 +30,7 @@ import java.util.List;
*/
public abstract class WrappingConverter extends Converter<Object> {
+ @Override
public Object fromString(@Nullable @NonNls String s, final ConvertContext context) {
final List<Converter> converters = getConverters((GenericDomValue)context.getInvocationElement());
if (converters.isEmpty()) return s;
@@ -42,6 +43,7 @@ public abstract class WrappingConverter extends Converter<Object> {
return null;
}
+ @Override
public String toString(@Nullable Object t, final ConvertContext context) {
final List<Converter> converters = getConverters((GenericDomValue)context.getInvocationElement());
if (converters.isEmpty()) return String.valueOf(t);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/XmlName.java b/xml/dom-openapi/src/com/intellij/util/xml/XmlName.java
index a3a562ea2526..669182205b1a 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/XmlName.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/XmlName.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -69,6 +69,7 @@ public class XmlName implements Comparable<XmlName> {
}
+ @Override
public int compareTo(XmlName o) {
final int i = myLocalName.compareTo(o.myLocalName);
if (i != 0) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/AbstractDomGenerateProvider.java b/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/AbstractDomGenerateProvider.java
index 769d848396cf..536ef38ec6d0 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/AbstractDomGenerateProvider.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/AbstractDomGenerateProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -45,6 +45,7 @@ public abstract class AbstractDomGenerateProvider<T extends DomElement> extends
myMappingId = mappingId;
}
+ @Override
public T generate(final Project project, final Editor editor, final PsiFile file) {
DomElement parentDomElement = getParentDomElement(project, editor, file);
@@ -87,8 +88,10 @@ public abstract class AbstractDomGenerateProvider<T extends DomElement> extends
DomTemplateRunner.getInstance(file.getProject()).runTemplate(t, myMappingId, editor, predefinedVars);
}
+ @Override
protected abstract DomElement getParentDomElement(final Project project, final Editor editor, final PsiFile file);
+ @Override
@SuppressWarnings({"unchecked"})
protected void doNavigate(final DomElementNavigationProvider navigateProvider, final DomElement copy) {
final DomElement element = getElementToNavigate((T)copy);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/DefaultGenerateElementProvider.java b/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/DefaultGenerateElementProvider.java
index a14ad6801cce..2ab81a61877c 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/DefaultGenerateElementProvider.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/actions/generate/DefaultGenerateElementProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -48,6 +48,7 @@ public abstract class DefaultGenerateElementProvider<T extends DomElement> exten
}
+ @Override
@Nullable
public T generate(final Project project, final Editor editor, final PsiFile file) {
return generate(getParentDomElement(project, editor, file), editor);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/converters/DelimitedListConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/converters/DelimitedListConverter.java
index f7b946dec9cb..a951032b1b03 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/converters/DelimitedListConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/converters/DelimitedListConverter.java
@@ -60,6 +60,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
protected abstract String getUnresolvedMessage(String value);
+ @Override
@NotNull
public Collection<? extends List<T>> getVariants(final ConvertContext context) {
return Collections.emptyList();
@@ -84,6 +85,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
return myDelimiters.charAt(0);
}
+ @Override
public List<T> fromString(@Nullable final String str, final ConvertContext context) {
if (str == null) {
return null;
@@ -99,6 +101,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
return values;
}
+ @Override
public String toString(final List<T> ts, final ConvertContext context) {
final StringBuilder buffer = new StringBuilder();
final char delimiter = getDefaultDelimiter();
@@ -114,6 +117,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
return buffer.toString();
}
+ @Override
@NotNull
public PsiReference[] createReferences(final GenericDomValue<List<T>> genericDomValue,
final PsiElement element,
@@ -126,6 +130,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
final ArrayList<PsiReference> references = new ArrayList<PsiReference>();
new DelimitedListProcessor(myDelimiters) {
+ @Override
protected void processToken(final int start, final int end, final boolean delimitersOnly) {
references.add(createPsiReference(element, start + 1, end + 1, context, genericDomValue, delimitersOnly));
}
@@ -182,6 +187,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
myDelimitersOnly = delimitersOnly;
}
+ @Override
@Nullable
public PsiElement resolve() {
if (myDelimitersOnly) {
@@ -191,6 +197,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
return resolveReference(convertString(value, myContext), myContext);
}
+ @Override
@NotNull
public Object[] getVariants() {
return getReferenceVariants(myContext, myGenericDomValue);
@@ -226,6 +233,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
private Function<PsiElement, PsiElement> getSuperBindToElementFunction(final Ref<IncorrectOperationException> ref) {
return new Function<PsiElement, PsiElement>() {
+ @Override
public PsiElement fun(final PsiElement s) {
try {
return MyPsiReference.super.bindToElement(s);
@@ -240,6 +248,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
private Function<String, PsiElement> getSuperElementRenameFunction(final Ref<IncorrectOperationException> ref) {
return new Function<String, PsiElement>() {
+ @Override
public PsiElement fun(final String s) {
try {
return MyPsiReference.super.handleElementRename(s);
@@ -253,6 +262,7 @@ public abstract class DelimitedListConverter<T> extends ResolvingConverter<List<
}
+ @Override
@NotNull
public String getUnresolvedMessagePattern() {
return getUnresolvedMessage(getValue());
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/converters/PathReferenceConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/converters/PathReferenceConverter.java
index 2d578a111bda..2b0aa7c5271e 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/converters/PathReferenceConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/converters/PathReferenceConverter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,16 +16,15 @@
package com.intellij.util.xml.converters;
-import com.intellij.util.xml.Converter;
-import com.intellij.util.xml.ConvertContext;
-import com.intellij.util.xml.CustomReferenceConverter;
-import com.intellij.util.xml.GenericDomValue;
-import com.intellij.openapi.module.Module;
-import com.intellij.openapi.paths.PathReferenceManager;
import com.intellij.openapi.paths.PathReference;
-import com.intellij.psi.PsiReference;
+import com.intellij.openapi.paths.PathReferenceManager;
import com.intellij.psi.PsiElement;
+import com.intellij.psi.PsiReference;
import com.intellij.psi.xml.XmlElement;
+import com.intellij.util.xml.ConvertContext;
+import com.intellij.util.xml.Converter;
+import com.intellij.util.xml.CustomReferenceConverter;
+import com.intellij.util.xml.GenericDomValue;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -35,15 +34,18 @@ import org.jetbrains.annotations.Nullable;
public class PathReferenceConverter extends Converter<PathReference> implements CustomReferenceConverter {
public final static Converter<PathReference> INSTANCE = new PathReferenceConverter();
+ @Override
public PathReference fromString(@Nullable final String s, final ConvertContext context) {
final XmlElement element = context.getXmlElement();
return s == null || element == null ? null : PathReferenceManager.getInstance().getPathReference(s, element);
}
+ @Override
public String toString(final PathReference t, final ConvertContext context) {
return t == null ? null : t.getPath();
}
+ @Override
@NotNull
public PsiReference[] createReferences(final GenericDomValue genericDomValue, final PsiElement element, final ConvertContext context) {
return createReferences(element, true);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/converters/values/BooleanValueConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/converters/values/BooleanValueConverter.java
index ed98cb728ed8..be6fe9bf2c7c 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/converters/values/BooleanValueConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/converters/values/BooleanValueConverter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -69,6 +69,7 @@ public class BooleanValueConverter extends ResolvingConverter<String> {
return Arrays.binarySearch(getTrueValues(), s) >= 0;
}
+ @Override
public String fromString(@Nullable @NonNls final String stringValue, final ConvertContext context) {
if (stringValue != null && ((myAllowEmpty && stringValue.trim().length() == 0) || Arrays.binarySearch(getAllValues(), stringValue) >= 0)) {
return stringValue;
@@ -76,15 +77,18 @@ public class BooleanValueConverter extends ResolvingConverter<String> {
return null;
}
+ @Override
public String toString(@Nullable final String s, final ConvertContext context) {
return s;
}
+ @Override
@NotNull
public Collection<? extends String> getVariants(final ConvertContext context) {
return Arrays.asList(VARIANTS);
}
+ @Override
public String getErrorMessage(@Nullable final String s, final ConvertContext context) {
return DomBundle.message("value.converter.format.exception", s, BOOLEAN);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/converters/values/CharacterValueConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/converters/values/CharacterValueConverter.java
index d740a82c47f5..c6654ba31f4d 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/converters/values/CharacterValueConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/converters/values/CharacterValueConverter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ public class CharacterValueConverter extends Converter<String> {
}
+ @Override
public String fromString(@Nullable @NonNls String s, final ConvertContext context) {
if (s == null) return null;
@@ -52,10 +53,12 @@ public class CharacterValueConverter extends Converter<String> {
return sequence.startsWith(UNICODE_PREFIX) && sequence.length() == UNICODE_LENGTH;
}
+ @Override
public String toString(@Nullable String s, final ConvertContext context) {
return s;
}
+ @Override
public String getErrorMessage(@Nullable final String s, final ConvertContext context) {
return DomBundle.message("value.converter.format.exception", s, "char");
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/converters/values/NumberValueConverter.java b/xml/dom-openapi/src/com/intellij/util/xml/converters/values/NumberValueConverter.java
index 7aa3b9d33aef..bf24b6b9cc3d 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/converters/values/NumberValueConverter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/converters/values/NumberValueConverter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -17,7 +17,6 @@
package com.intellij.util.xml.converters.values;
import com.intellij.util.xml.ConvertContext;
-import com.intellij.util.xml.Converter;
import com.intellij.util.xml.DomBundle;
import com.intellij.util.xml.ResolvingConverter;
import org.jetbrains.annotations.NonNls;
@@ -40,6 +39,7 @@ public class NumberValueConverter extends ResolvingConverter<String> {
myAllowEmpty = allowEmpty;
}
+ @Override
public String fromString(@Nullable @NonNls final String s, final ConvertContext context) {
if (s == null) return null;
@@ -48,10 +48,12 @@ public class NumberValueConverter extends ResolvingConverter<String> {
return parseNumber(s, myNumberClass) == null ? null : s;
}
+ @Override
public String toString(@Nullable final String s, final ConvertContext context) {
return null;
}
+ @Override
public String getErrorMessage(@Nullable final String s, final ConvertContext context) {
if (s == null) return super.getErrorMessage(s, context);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/AddDomElementQuickFix.java b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/AddDomElementQuickFix.java
index b7a4a74809b6..5a735bdb45f8 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/AddDomElementQuickFix.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/AddDomElementQuickFix.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,7 @@ public class AddDomElementQuickFix<T extends DomElement> implements LocalQuickFi
myName = computeName();
}
+ @Override
@NotNull
public String getName() {
return myName;
@@ -53,11 +54,13 @@ public class AddDomElementQuickFix<T extends DomElement> implements LocalQuickFi
return myElement.getXmlElement() instanceof XmlTag;
}
+ @Override
@NotNull
public String getFamilyName() {
return DomBundle.message("quick.fixes.family");
}
+ @Override
public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) {
myElement.ensureXmlElementExists();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/BasicDomElementsInspection.java b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/BasicDomElementsInspection.java
index f1c7c089450d..d62ef2d37433 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/BasicDomElementsInspection.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/BasicDomElementsInspection.java
@@ -53,6 +53,7 @@ public abstract class BasicDomElementsInspection<T extends DomElement> extends D
* @param holder a place to add problems to
* @param helper helper object
*/
+ @Override
protected void checkDomElement(DomElement element, DomElementAnnotationHolder holder, DomHighlightingHelper helper) {
final int oldSize = holder.getSize();
if (element instanceof GenericDomValue) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptor.java b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptor.java
index b67b1a64f43f..c4560493ef84 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptor.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementResolveProblemDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,6 +26,7 @@ public interface DomElementResolveProblemDescriptor extends DomElementProblemDes
@NotNull
PsiReference getPsiReference();
+ @Override
@NotNull
GenericDomValue getDomElement();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementsInspection.java b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementsInspection.java
index 3c7844b0e04e..2200e6fc15c9 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementsInspection.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/DomElementsInspection.java
@@ -65,6 +65,7 @@ public abstract class DomElementsInspection<T extends DomElement> extends XmlSup
final DomHighlightingHelper helper =
DomElementAnnotationsManager.getInstance(domFileElement.getManager().getProject()).getHighlightingHelper();
final Consumer<DomElement> consumer = new Consumer<DomElement>() {
+ @Override
public void consume(final DomElement element) {
checkChildren(element, this);
checkDomElement(element, holder, helper);
@@ -111,6 +112,7 @@ public abstract class DomElementsInspection<T extends DomElement> extends XmlSup
* Override {@link #checkFileElement(com.intellij.util.xml.DomFileElement, DomElementAnnotationHolder)} (which is preferred) or
* {@link #checkDomElement(com.intellij.util.xml.DomElement, DomElementAnnotationHolder, DomHighlightingHelper)} instead.
*/
+ @Override
@Nullable
public ProblemDescriptor[] checkFile(@NotNull PsiFile file, @NotNull InspectionManager manager, boolean isOnTheFly) {
if (file instanceof XmlFile && (file.isPhysical() || ApplicationManager.getApplication().isUnitTestMode())) {
@@ -125,11 +127,13 @@ public abstract class DomElementsInspection<T extends DomElement> extends XmlSup
return null;
}
+ @Override
@NotNull
public HighlightDisplayLevel getDefaultLevel() {
return HighlightDisplayLevel.ERROR;
}
+ @Override
public boolean isEnabledByDefault() {
return true;
}
@@ -148,6 +152,7 @@ public abstract class DomElementsInspection<T extends DomElement> extends XmlSup
List<ProblemDescriptor> problems =
ContainerUtil.concat(list, new Function<DomElementProblemDescriptor, Collection<? extends ProblemDescriptor>>() {
+ @Override
public Collection<ProblemDescriptor> fun(final DomElementProblemDescriptor s) {
return annotationsManager.createProblemDescriptors(manager, s);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/RemoveDomElementQuickFix.java b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/RemoveDomElementQuickFix.java
index d24f7caf1456..67710fa38187 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/RemoveDomElementQuickFix.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/RemoveDomElementQuickFix.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@ public class RemoveDomElementQuickFix implements LocalQuickFix {
myName = element.getXmlElementName();
}
+ @Override
@NotNull
public String getName() {
return myIsTag ?
@@ -46,11 +47,13 @@ public class RemoveDomElementQuickFix implements LocalQuickFix {
DomBundle.message("remove.attribute.fix.name", myName);
}
+ @Override
@NotNull
public String getFamilyName() {
return DomBundle.message("quick.fixes.family");
}
+ @Override
public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) {
if (myIsTag) {
final XmlTag tag = (XmlTag)descriptor.getPsiElement();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/ResolvingElementQuickFix.java b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/ResolvingElementQuickFix.java
index 5dafd7e23aee..7b0bdbdfdb68 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/highlighting/ResolvingElementQuickFix.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/highlighting/ResolvingElementQuickFix.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -65,41 +65,50 @@ public class ResolvingElementQuickFix implements LocalQuickFix, IntentionAction
myTypeName = typeName;
}
+ @Override
@NotNull
public String getName() {
return DomBundle.message("create.new.element", myTypeName, myNewName);
}
+ @Override
@NotNull
public String getText() {
return getName();
}
+ @Override
@NotNull
public String getFamilyName() {
return DomBundle.message("quick.fixes.family");
}
+ @Override
public boolean isAvailable(@NotNull final Project project, final Editor editor, final PsiFile file) {
return true;
}
+ @Override
public void invoke(@NotNull final Project project, final Editor editor, final PsiFile file) throws IncorrectOperationException {
applyFix();
}
+ @Override
public boolean startInWriteAction() {
return false;
}
+ @Override
public void applyFix(@NotNull final Project project, @NotNull final ProblemDescriptor descriptor) {
applyFix();
}
private void applyFix() {
chooseParent(myParents, new Consumer<DomElement>() {
+ @Override
public void consume(final DomElement parent) {
new WriteCommandAction.Simple(parent.getManager().getProject(), DomUtil.getFile(parent)) {
+ @Override
protected void run() throws Throwable {
doFix(parent, myChildDescription, myNewName);
}
@@ -125,15 +134,18 @@ public class ResolvingElementQuickFix implements LocalQuickFix, IntentionAction
return;
default:
JBPopupFactory.getInstance().createListPopup(new BaseListPopupStep<DomElement>(DomBundle.message("choose.file"), files) {
+ @Override
public PopupStep onChosen(final DomElement selectedValue, final boolean finalChoice) {
onChoose.consume(selectedValue);
return super.onChosen(selectedValue, finalChoice);
}
+ @Override
public Icon getIconFor(final DomElement aValue) {
return DomUtil.getFile(aValue).getIcon(0);
}
+ @Override
@NotNull
public String getTextFor(final DomElement value) {
final String name = DomUtil.getFile(value).getName();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/model/DomModelCache.java b/xml/dom-openapi/src/com/intellij/util/xml/model/DomModelCache.java
index 1a1829ed7e66..dfe2f7e29e74 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/model/DomModelCache.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/model/DomModelCache.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -19,7 +19,6 @@ package com.intellij.util.xml.model;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Key;
import com.intellij.openapi.util.UserDataHolder;
-import com.intellij.psi.PsiManager;
import com.intellij.psi.util.CachedValue;
import com.intellij.psi.util.CachedValueProvider;
import com.intellij.psi.util.CachedValuesManager;
@@ -45,6 +44,7 @@ public abstract class DomModelCache<T, H extends UserDataHolder> {
CachedValue<T> cachedValue = dataHolder.getUserData(myKey);
if (cachedValue == null) {
final CachedValueProvider<T> myProvider = new CachedValueProvider<T>() {
+ @Override
@Nullable
public Result<T> compute() {
return computeValue(dataHolder);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/BaseDomModelFactory.java b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/BaseDomModelFactory.java
index 70c0b2e3096c..dbeaeac199bb 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/BaseDomModelFactory.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/BaseDomModelFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -74,11 +74,13 @@ public abstract class BaseDomModelFactory<S extends UserDataHolder, T extends Do
return null;
}
+ @Override
@NotNull
public List<M> getAllModels(@NotNull S scope) {
return myMultipleDomModelFactory.getAllModels(scope);
}
+ @Override
@Nullable
public M getModelByConfigFile(@Nullable XmlFile psiFile) {
return mySimpleDomModelFactory.getModelByConfigFile(psiFile);
@@ -110,16 +112,19 @@ public abstract class BaseDomModelFactory<S extends UserDataHolder, T extends Do
return null;
}
+ @Override
@Nullable
public M getCombinedModel(@Nullable S scope) {
return myMultipleDomModelFactory.getCombinedModel(scope);
}
+ @Override
@NotNull
public Set<XmlFile> getAllConfigFiles(@NotNull S scope) {
return myMultipleDomModelFactory.getAllConfigFiles(scope);
}
+ @Override
@Nullable
public DomFileElement<T> createMergedModelRoot(final Set<XmlFile> configFiles) {
return mySimpleDomModelFactory.createMergedModelRoot(configFiles);
@@ -130,14 +135,17 @@ public abstract class BaseDomModelFactory<S extends UserDataHolder, T extends Do
final Project project,
final String name) {
return new CachedMultipleDomModelFactory<S, T, M, C>(aClass, modelMerger, project, name) {
+ @Override
public M getModel(@NotNull final C context) {
return BaseDomModelFactory.this.getModel(context);
}
+ @Override
protected List<M> computeAllModels(@NotNull final S scope) {
return BaseDomModelFactory.this.computeAllModels(scope);
}
+ @Override
protected M createCombinedModel(final Set<XmlFile> configFiles,
final DomFileElement<T> mergedModel,
final M firstModel,
@@ -145,11 +153,13 @@ public abstract class BaseDomModelFactory<S extends UserDataHolder, T extends Do
return BaseDomModelFactory.this.createCombinedModel(configFiles, mergedModel, firstModel, scope);
}
+ @Override
@NotNull
public Object[] computeDependencies(@Nullable final M model, @Nullable final S scope) {
return BaseDomModelFactory.this.computeDependencies(model, scope);
}
+ @Override
public S getModelScope(@NotNull final XmlFile xmlFile) {
return BaseDomModelFactory.this.getModelScope(xmlFile);
}
@@ -162,15 +172,18 @@ public abstract class BaseDomModelFactory<S extends UserDataHolder, T extends Do
final String name) {
return new CachedSimpleDomModelFactory<T, M, S>(aClass, modelMerger, project, name) {
+ @Override
protected M computeModel(@NotNull final XmlFile psiFile, @Nullable final S scope) {
return BaseDomModelFactory.this.computeModel(psiFile, scope);
}
+ @Override
@NotNull
public Object[] computeDependencies(@Nullable final M model, @Nullable final S scope) {
return BaseDomModelFactory.this.computeDependencies(model, scope);
}
+ @Override
public S getModelScope(@NotNull XmlFile file) {
return BaseDomModelFactory.this.getModelScope(file);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedMultipleDomModelFactory.java b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedMultipleDomModelFactory.java
index fba3581a28c8..3109e8cb2edd 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedMultipleDomModelFactory.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedMultipleDomModelFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -52,6 +52,7 @@ public abstract class CachedMultipleDomModelFactory<Scope extends UserDataHolder
super(aClass,modelMerger);
myCombinedModelCache = new DomModelCache<M, Scope>(project, name + " combined model") {
+ @Override
@NotNull
protected CachedValueProvider.Result<M> computeValue(@NotNull final Scope scope) {
final M combinedModel = computeCombinedModel(scope);
@@ -60,6 +61,7 @@ public abstract class CachedMultipleDomModelFactory<Scope extends UserDataHolder
};
myAllModelsCache = new DomModelCache<List<M>, Scope>(project, name + " models list") {
+ @Override
@NotNull
protected CachedValueProvider.Result<List<M>> computeValue(@NotNull final Scope scope) {
final List<M> models = computeAllModels(scope);
@@ -71,6 +73,7 @@ public abstract class CachedMultipleDomModelFactory<Scope extends UserDataHolder
@Nullable
public abstract M getModel(@NotNull C context);
+ @Override
@NotNull
public List<M> getAllModels(@NotNull Scope scope) {
@@ -86,6 +89,7 @@ public abstract class CachedMultipleDomModelFactory<Scope extends UserDataHolder
@Nullable
protected abstract List<M> computeAllModels(@NotNull Scope scope);
+ @Override
@Nullable
public M getCombinedModel(@Nullable Scope scope) {
if (scope == null) {
@@ -143,6 +147,7 @@ public abstract class CachedMultipleDomModelFactory<Scope extends UserDataHolder
}
}
+ @Override
@NotNull
public Set<XmlFile> getAllConfigFiles(@NotNull Scope scope) {
final HashSet<XmlFile> xmlFiles = new HashSet<XmlFile>();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedSimpleDomModelFactory.java b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedSimpleDomModelFactory.java
index ec4f9d402536..0a8f30e4f36b 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedSimpleDomModelFactory.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/CachedSimpleDomModelFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,6 +43,7 @@ public abstract class CachedSimpleDomModelFactory<T extends DomElement, M extend
super(aClass, modelMerger);
myModelCache = new DomModelCache<M, XmlFile>(project, name + " model") {
+ @Override
@NotNull
protected CachedValueProvider.Result<M> computeValue(@NotNull XmlFile file) {
file = (XmlFile)file.getOriginalFile();
@@ -54,6 +55,7 @@ public abstract class CachedSimpleDomModelFactory<T extends DomElement, M extend
};
}
+ @Override
@Nullable
public M getModelByConfigFile(@Nullable XmlFile psiFile) {
if (psiFile == null) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelFactory.java b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelFactory.java
index 5f5f4dd6690f..95681f771826 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelFactory.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,6 +40,7 @@ public abstract class DomModelFactory<T extends DomElement, M extends DomModel<T
super(aClass, project, name);
}
+ @Override
protected Module getModelScope(final XmlFile file) {
return ModuleUtil.findModuleForPsiElement(file);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelImpl.java b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelImpl.java
index c104108abcf9..5785048c281f 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelImpl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/DomModelImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -60,11 +60,13 @@ public class DomModelImpl<T extends DomElement> implements DomModel<T> {
myClass = clazz;
}
+ @Override
@NotNull
public T getMergedModel() {
if (myMergedModel == null) {
final DomManager domManager = DomManager.getDomManager(myProject);
return domManager.createModelMerger().mergeModels(myClass, ContainerUtil.mapNotNull(myConfigFiles, new NullableFunction<XmlFile, T>() {
+ @Override
public T fun(XmlFile xmlFile) {
DomFileElement<T> fileElement = domManager.getFileElement(xmlFile, myClass);
return fileElement == null ? null : fileElement.getRootElement();
@@ -74,15 +76,18 @@ public class DomModelImpl<T extends DomElement> implements DomModel<T> {
return myMergedModel.getRootElement();
}
+ @Override
@NotNull
public Set<XmlFile> getConfigFiles() {
return myConfigFiles;
}
+ @Override
@NotNull
public List<DomFileElement<T>> getRoots() {
if (myMergedModel == null) {
return ContainerUtil.mapNotNull(myConfigFiles, new NullableFunction<XmlFile, DomFileElement<T>>() {
+ @Override
public DomFileElement<T> fun(XmlFile xmlFile) {
return DomManager.getDomManager(xmlFile.getProject()).getFileElement(xmlFile, myClass);
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/SimpleDomModelFactory.java b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/SimpleDomModelFactory.java
index 72d0e3a6246d..77e15914f7c9 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/model/impl/SimpleDomModelFactory.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/model/impl/SimpleDomModelFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,6 +40,7 @@ public abstract class SimpleDomModelFactory<T extends DomElement, M extends DomM
super(aClass, modelMerger);
}
+ @Override
@Nullable
public DomFileElement<T> createMergedModelRoot(Set<XmlFile> configFiles) {
List<DomFileElement<T>> configs = new ArrayList<DomFileElement<T>>(configFiles.size());
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/reflect/DomFixedChildDescription.java b/xml/dom-openapi/src/com/intellij/util/xml/reflect/DomFixedChildDescription.java
index fcfde5c4a5a5..0dae377d4fb7 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/reflect/DomFixedChildDescription.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/reflect/DomFixedChildDescription.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -15,7 +15,6 @@
*/
package com.intellij.util.xml.reflect;
-import com.intellij.util.xml.DomElement;
import com.intellij.util.xml.JavaMethod;
import org.jetbrains.annotations.Nullable;
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/tree/AbstractDomElementNode.java b/xml/dom-openapi/src/com/intellij/util/xml/tree/AbstractDomElementNode.java
index e2c00c5cdd7d..1beb01a0a1b3 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/tree/AbstractDomElementNode.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/tree/AbstractDomElementNode.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ abstract public class AbstractDomElementNode extends SimpleNode {
public static final Key<Map<Class, Boolean>> TREE_NODES_HIDERS_KEY = Key.create("TREE_NODES_HIDERS_KEY");
private final static Comparator<Class> INHERITORS_COMPARATOR = new Comparator<Class>() {
+ @Override
public int compare(final Class o1, final Class o2) {
return o1.isAssignableFrom(o2) ? 1 : -1;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/tree/BaseDomElementNode.java b/xml/dom-openapi/src/com/intellij/util/xml/tree/BaseDomElementNode.java
index 92aaedede5a5..e5f08bbdf638 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/tree/BaseDomElementNode.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/tree/BaseDomElementNode.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -65,10 +65,12 @@ public class BaseDomElementNode extends AbstractDomElementNode {
folder = isMarkedType(modelElement.getDomElementType(), FOLDER_NODES_KEY);
}
+ @Override
public SimpleNode[] getChildren() {
return doGetChildren(myDomElement);
}
+ @Override
public void handleDoubleClickOrEnter(SimpleTree tree, InputEvent inputEvent) {
if (inputEvent instanceof MouseEvent) {
inputEvent.consume();
@@ -146,6 +148,7 @@ public class BaseDomElementNode extends AbstractDomElementNode {
final XmlElementDescriptor[] childDescriptors = descriptor.getElementsDescriptors(tag);
if (childDescriptors != null && childDescriptors.length > 1) {
return new Comparator<AbstractDomElementNode>() {
+ @Override
public int compare(final AbstractDomElementNode o1, final AbstractDomElementNode o2) {
return findDescriptor(childDescriptors, o1.getTagName()) - findDescriptor(childDescriptors, o2.getTagName());
}
@@ -178,11 +181,13 @@ public class BaseDomElementNode extends AbstractDomElementNode {
return consolidated;
}
+ @Override
@NotNull
public Object[] getEqualityObjects() {
return new Object[]{myDomElement};
}
+ @Override
protected void doUpdate() {
if (!myDomElement.isValid()) return;
final Project project = myDomElement.getManager().getProject();
@@ -236,6 +241,7 @@ public class BaseDomElementNode extends AbstractDomElementNode {
return true;
}
+ @Override
public String getNodeName() {
if (!myDomElement.isValid()) return "";
@@ -243,18 +249,22 @@ public class BaseDomElementNode extends AbstractDomElementNode {
return name != null && name.trim().length() > 0 ? name : getPropertyName();
}
+ @Override
public String getTagName() {
return myTagName;
}
+ @Override
public DomElement getDomElement() {
return myDomElement;
}
+ @Override
public boolean isAutoExpandNode() {
return getParent() == null;
}
+ @Override
public boolean expandOnDoubleClick() {
return true;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomElementsGroupNode.java b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomElementsGroupNode.java
index ea8ca192df60..501b3a0ee050 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomElementsGroupNode.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomElementsGroupNode.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -49,6 +49,7 @@ public class DomElementsGroupNode extends AbstractDomElementNode {
myRootDomElement = rootDomElement;
}
+ @Override
public SimpleNode[] getChildren() {
if (!myParentElement.isValid()) return NO_CHILDREN;
@@ -61,11 +62,13 @@ public class DomElementsGroupNode extends AbstractDomElementNode {
return simpleNodes.toArray(new SimpleNode[simpleNodes.size()]);
}
+ @Override
@NotNull
public Object[] getEqualityObjects() {
return new Object[]{myParentElement, myChildrenTagName};
}
+ @Override
protected void doUpdate() {
setUniformIcon(getNodeIcon());
@@ -100,16 +103,19 @@ public class DomElementsGroupNode extends AbstractDomElementNode {
return false;
}
+ @Override
public String getNodeName() {
if (!myParentElement.isValid()) return "";
return myChildDescription.getCommonPresentableName(myParentElement);
}
+ @Override
public String getTagName() {
return myChildrenTagName;
}
+ @Override
public DomElement getDomElement() {
return myParentElement;
}
@@ -120,6 +126,7 @@ public class DomElementsGroupNode extends AbstractDomElementNode {
}
+ @Override
public Icon getNodeIcon() {
Class clazz = ReflectionUtil.getRawType(myChildDescription.getType());
// Class arrayClass = Array.newInstance(clazz, 0).getClass();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomFileElementNode.java b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomFileElementNode.java
index 6ce17cd900db..8c57658d195a 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomFileElementNode.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomFileElementNode.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,16 +28,19 @@ public class DomFileElementNode extends BaseDomElementNode {
myFileElement = fileElement;
}
+ @Override
public SimpleNode[] getChildren() {
return doGetChildren(myFileElement.getRootElement());
}
+ @Override
public DomFileElement getDomElement() {
return (DomFileElement)super.getDomElement();
}
+ @Override
public boolean isShowContainingFileInfo() {
return false;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeStructure.java b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeStructure.java
index ceda5e16f43c..415574ebc416 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeStructure.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeStructure.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ public class DomModelTreeStructure extends SimpleTreeStructure {
return new BaseDomElementNode(myDomElement);
}
+ @Override
public AbstractDomElementNode getRootElement() {
if (myRootNode == null) {
myRootNode = createRoot(myDomElement);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeView.java b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeView.java
index 14886ebe1e82..1935228d86eb 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeView.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/tree/DomModelTreeView.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -83,6 +83,7 @@ public class DomModelTreeView extends Wrapper implements DataProvider, Disposabl
add(myTree, BorderLayout.CENTER);
myTree.addTreeExpansionListener(new TreeExpansionListener() {
+ @Override
public void treeExpanded(TreeExpansionEvent event) {
final SimpleNode simpleNode = myTree.getNodeFor(event.getPath());
@@ -91,6 +92,7 @@ public class DomModelTreeView extends Wrapper implements DataProvider, Disposabl
}
}
+ @Override
public void treeCollapsed(TreeExpansionEvent event) {
final SimpleNode simpleNode = myTree.getNodeFor(event.getPath());
@@ -102,6 +104,7 @@ public class DomModelTreeView extends Wrapper implements DataProvider, Disposabl
});
myDomManager.addDomEventListener(new DomChangeAdapter() {
+ @Override
protected void elementChanged(DomElement element) {
if (element.isValid()) {
queueUpdate(DomUtil.getFile(element).getVirtualFile());
@@ -115,6 +118,7 @@ public class DomModelTreeView extends Wrapper implements DataProvider, Disposabl
final Project project = myDomManager.getProject();
DomElementAnnotationsManager.getInstance(project).addHighlightingListener(new DomElementAnnotationsManager.DomHighlightingListener() {
+ @Override
public void highlightingFinished(DomFileElement element) {
if (element.isValid()) {
queueUpdate(DomUtil.getFile(element).getVirtualFile());
@@ -133,6 +137,7 @@ public class DomModelTreeView extends Wrapper implements DataProvider, Disposabl
if (file == null) return;
if (getProject().isDisposed()) return;
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
if (getProject().isDisposed()) return;
if (!file.isValid() || isRightFile(file)) {
@@ -162,6 +167,7 @@ public class DomModelTreeView extends Wrapper implements DataProvider, Disposabl
return myBuilder;
}
+ @Override
public void dispose() {
}
@@ -181,6 +187,7 @@ public class DomModelTreeView extends Wrapper implements DataProvider, Disposabl
return group;
}
+ @Override
@Nullable
public Object getData(String dataId) {
if (DomModelTreeView.DATA_KEY.is(dataId)) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/tree/GenericValueNode.java b/xml/dom-openapi/src/com/intellij/util/xml/tree/GenericValueNode.java
index d71a64c4692d..dce3154170cb 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/tree/GenericValueNode.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/tree/GenericValueNode.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,18 +33,22 @@ public class GenericValueNode extends AbstractDomElementNode {
myTagName = modelElement.getXmlElementName();
}
+ @Override
public String getNodeName() {
return getPropertyName();
}
+ @Override
public String getTagName() {
return myTagName;
}
+ @Override
public DomElement getDomElement() {
return myModelElement;
}
+ @Override
protected void doUpdate() {
setUniformIcon(getNodeIcon());
clearColoredText();
@@ -63,10 +67,12 @@ public class GenericValueNode extends AbstractDomElementNode {
}
}
+ @Override
public SimpleNode[] getChildren() {
return NO_CHILDREN;
}
+ @Override
@NotNull
public Object[] getEqualityObjects() {
return new Object[]{myModelElement};
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractDomElementComponent.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractDomElementComponent.java
index a01f73f592aa..f161f3b0cc2f 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractDomElementComponent.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractDomElementComponent.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,8 +18,6 @@ package com.intellij.util.xml.ui;
import com.intellij.util.ui.UIUtil;
import com.intellij.util.xml.DomElement;
-import com.intellij.util.xml.DomFileElement;
-import com.intellij.util.xml.highlighting.DomElementAnnotationsManager;
import java.awt.*;
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractTableView.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractTableView.java
index 2e372bfa26fa..eb254c2a3ae3 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractTableView.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/AbstractTableView.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -80,11 +80,13 @@ public abstract class AbstractTableView<T> extends JPanel implements TypeSafeDat
final JTableHeader header = myTable.getTableHeader();
header.addMouseMotionListener(new MouseMotionAdapter() {
+ @Override
public void mouseMoved(MouseEvent e) {
updateTooltip(e);
}
});
header.addMouseListener(new MouseAdapter() {
+ @Override
public void mouseEntered(MouseEvent e) {
updateTooltip(e);
}
@@ -135,6 +137,7 @@ public abstract class AbstractTableView<T> extends JPanel implements TypeSafeDat
toolbarComponent.setBorder(BorderFactory.createCompoundBorder(matteBorder, toolbarComponent.getBorder()));
getTable().getSelectionModel().addListSelectionListener(new ListSelectionListener() {
+ @Override
public void valueChanged(ListSelectionEvent e) {
myActionToolbar.updateActionsImmediately();
}
@@ -164,6 +167,7 @@ public abstract class AbstractTableView<T> extends JPanel implements TypeSafeDat
if (getEmptyPaneText() != null) {
final CardLayout cardLayout = ((CardLayout)myInnerPanel.getLayout());
myTable.getModel().addTableModelListener(new TableModelListener() {
+ @Override
public void tableChanged(TableModelEvent e) {
cardLayout.show(myInnerPanel, myTable.getRowCount() == 0 ? EMPTY_PANE : TREE);
}
@@ -220,6 +224,7 @@ public abstract class AbstractTableView<T> extends JPanel implements TypeSafeDat
return myTableModel;
}
+ @Override
public void calcData(DataKey key, DataSink sink) {
if (PlatformDataKeys.HELP_ID.equals(key)) {
sink.put(PlatformDataKeys.HELP_ID, getHelpId());
@@ -294,6 +299,7 @@ public abstract class AbstractTableView<T> extends JPanel implements TypeSafeDat
setSortable(false);
}
+ @Override
public Object getValueAt(final int rowIndex, final int columnIndex) {
return myTableData[rowIndex][columnIndex];
}
@@ -310,10 +316,12 @@ public abstract class AbstractTableView<T> extends JPanel implements TypeSafeDat
myTableData = objects;
}
+ @Override
public void setValueAt(final Object aValue, final int rowIndex, final int columnIndex) {
final Object oldValue = getValueAt(rowIndex, columnIndex);
if (!Comparing.equal(oldValue, aValue)) {
wrapValueSetting(getItems().get(rowIndex), new Runnable() {
+ @Override
public void run() {
MyListTableModel.super.setValueAt("".equals(aValue) ? null : aValue, rowIndex, columnIndex);
}
@@ -350,6 +358,7 @@ public abstract class AbstractTableView<T> extends JPanel implements TypeSafeDat
return super.getCellRenderer(row, column);
}
+ @Override
public final TableCellRenderer getCellRenderer(int row, int column) {
return myCachedRenderers[row][column];
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseControl.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseControl.java
index d6dbc13ac63e..d809b86eecad 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseControl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -90,9 +90,11 @@ public abstract class BaseControl<Bound extends JComponent, T> extends DomUICont
final JComponent component = getComponentToListenFocusLost(myBoundComponent);
if (component != null) {
component.addFocusListener(new FocusListener() {
+ @Override
public void focusGained(FocusEvent e) {
}
+ @Override
public void focusLost(FocusEvent e) {
if (!e.isTemporary() && isValid()) {
commit();
@@ -111,18 +113,22 @@ public abstract class BaseControl<Bound extends JComponent, T> extends DomUICont
protected abstract Bound createMainComponent(Bound boundedComponent);
+ @Override
public void bind(JComponent component) {
initialize((Bound)component);
}
+ @Override
public void addCommitListener(CommitListener listener) {
myDispatcher.addListener(listener);
}
+ @Override
public void removeCommitListener(CommitListener listener) {
myDispatcher.removeListener(listener);
}
+ @Override
public final DomElement getDomElement() {
return myDomWrapper.getWrappedElement();
}
@@ -131,14 +137,17 @@ public abstract class BaseControl<Bound extends JComponent, T> extends DomUICont
return myDomWrapper;
}
+ @Override
public final Bound getComponent() {
checkInitialized();
return myBoundComponent;
}
+ @Override
public void dispose() {
}
+ @Override
public final void commit() {
if (isValid() && !isCommitted()) {
setValueToXml(getValue());
@@ -160,6 +169,7 @@ public abstract class BaseControl<Bound extends JComponent, T> extends DomUICont
return valueInXml instanceof String && valueInControl instanceof String && ((String)valueInXml).trim().equals(((String)valueInControl).trim());
}
+ @Override
public final void reset() {
if (!myCommitting) {
doReset();
@@ -167,6 +177,7 @@ public abstract class BaseControl<Bound extends JComponent, T> extends DomUICont
}
}
+ @Override
public void updateHighlighting() {
updateComponent();
}
@@ -195,6 +206,7 @@ public abstract class BaseControl<Bound extends JComponent, T> extends DomUICont
final CommitListener multicaster = myDispatcher.getMulticaster();
multicaster.beforeCommit(this);
new WriteCommandAction(getProject(), getDomWrapper().getFile()) {
+ @Override
protected void run(Result result) throws Throwable {
doCommit(value);
}
@@ -227,10 +239,12 @@ public abstract class BaseControl<Bound extends JComponent, T> extends DomUICont
}
+ @Override
public boolean canNavigate(DomElement element) {
return false;
}
+ @Override
public void navigate(DomElement element) {
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseModifiableControl.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseModifiableControl.java
index 3d0c4f9425b7..52a7be3f1dd6 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseModifiableControl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/BaseModifiableControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,11 +33,13 @@ public abstract class BaseModifiableControl<Bound extends JComponent, T> extends
myModified = true;
}
+ @Override
protected void doCommit(final T value) throws IllegalAccessException, InvocationTargetException {
super.doCommit(value);
myModified = false;
}
+ @Override
protected boolean isCommitted() {
return !myModified;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/BasicDomElementComponent.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/BasicDomElementComponent.java
index 7ba3553ec570..d2a17dd553c5 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/BasicDomElementComponent.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/BasicDomElementComponent.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -62,8 +62,10 @@ public abstract class BasicDomElementComponent<T extends DomElement> extends Abs
if (domElement == null) return;
DomElementAnnotationsManager.getInstance(domElement.getManager().getProject()).addHighlightingListener(new DomElementAnnotationsManager.DomHighlightingListener() {
+ @Override
public void highlightingFinished(@NotNull final DomFileElement element) {
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
if (getComponent().isShowing() && element.isValid()) {
updateHighlighting();
@@ -79,6 +81,7 @@ public abstract class BasicDomElementComponent<T extends DomElement> extends Abs
if (description instanceof DomFixedChildDescription && DomUtil.isGenericValueType(description.getType())) {
if ((description.getValues(domElement)).size() == 1) {
final GenericDomValue element = domElement.getManager().createStableValue(new Factory<GenericDomValue>() {
+ @Override
public GenericDomValue create() {
return domElement.isValid() ? (GenericDomValue)description.getValues(domElement).get(0) : null;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/BigStringComponent.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/BigStringComponent.java
index e4a60e04f614..fa49bf152e00 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/BigStringComponent.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/BigStringComponent.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,7 @@ public class BigStringComponent extends TextFieldWithBrowseButton {
myWindowTitle = windowTitle;
setButtonIcon(PlatformIcons.OPEN_EDIT_DIALOG_ICON);
addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
Messages.showTextAreaDialog(getTextField(), myWindowTitle, "DescriptionDialogEditor");
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanColumnInfo.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanColumnInfo.java
index 0b977a5c8452..293fa0f5245a 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanColumnInfo.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanColumnInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,18 +30,22 @@ public class BooleanColumnInfo extends DomColumnInfo<GenericDomValue<Boolean>, B
super(name, new BooleanTableCellRenderer());
}
+ @Override
public TableCellEditor getEditor(GenericDomValue<Boolean> value) {
return new DefaultCellEditor(new JCheckBox());
}
+ @Override
public final Class<Boolean> getColumnClass() {
return Boolean.class;
}
+ @Override
public final void setValue(final GenericDomValue<Boolean> o, final Boolean aValue) {
o.setValue(aValue);
}
+ @Override
public final Boolean valueOf(GenericDomValue<Boolean> object) {
final Boolean value = object.getValue();
return value == null ? Boolean.FALSE : value;
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanControl.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanControl.java
index 86f32c3a8b69..ca921d0c8191 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanControl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,10 +29,12 @@ public class BooleanControl extends BaseModifiableControl<JCheckBox, Boolean> {
super(domWrapper);
}
+ @Override
protected JCheckBox createMainComponent(JCheckBox boundComponent) {
JCheckBox checkBox = boundComponent == null ? new JCheckBox() : boundComponent;
checkBox.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
myUndefined = false;
setModified();
@@ -43,10 +45,12 @@ public class BooleanControl extends BaseModifiableControl<JCheckBox, Boolean> {
return checkBox;
}
+ @Override
protected Boolean getValue() {
return myUndefined ? null : getComponent().isSelected();
}
+ @Override
protected void setValue(final Boolean value) {
myUndefined = value == null;
getComponent().setSelected(value != null && value);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanEnumControl.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanEnumControl.java
index c567fccfd1ad..255a60cf84b8 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanEnumControl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/BooleanEnumControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,10 +40,12 @@ public class BooleanEnumControl extends BaseModifiableControl<JCheckBox, String>
assert enumClass.getEnumConstants().length == 2 : enumClass;
}
+ @Override
protected JCheckBox createMainComponent(JCheckBox boundComponent) {
JCheckBox checkBox = boundComponent == null ? new JCheckBox() : boundComponent;
checkBox.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
myUndefined = false;
setModified();
@@ -54,10 +56,12 @@ public class BooleanEnumControl extends BaseModifiableControl<JCheckBox, String>
return checkBox;
}
+ @Override
protected String getValue() {
return myUndefined ? null : (getComponent().isSelected() ? mySelectedValue : myUnselectedValue);
}
+ @Override
protected void setValue(final String value) {
myUndefined = value == null;
getComponent().setSelected(mySelectedValue.equals(value));
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/CaptionComponent.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/CaptionComponent.java
index ed30d6b94a20..c4bd0556e4c1 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/CaptionComponent.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/CaptionComponent.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -63,6 +63,7 @@ public class CaptionComponent extends JPanel implements Committable, Highlightab
}
}
+ @Override
public void updateHighlighting() {
CommittableUtil.updateHighlighting(myCommittableErrorPanel);
}
@@ -105,13 +106,16 @@ public class CaptionComponent extends JPanel implements Committable, Highlightab
updateBorder();
}
+ @Override
public final void commit() {
}
+ @Override
public void reset() {
if (myCommittableErrorPanel != null) myCommittableErrorPanel.reset();
}
+ @Override
public final void dispose() {
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/ChildGenericValueColumnInfo.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/ChildGenericValueColumnInfo.java
index dfaa714b1dc5..0978d3b7bada 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/ChildGenericValueColumnInfo.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/ChildGenericValueColumnInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -64,14 +64,17 @@ public class ChildGenericValueColumnInfo<T extends DomElement> extends DomColumn
return result;
}
+ @Override
public final TableCellEditor getEditor(T value) {
return myEditor;
}
+ @Override
public final Class<T> getColumnClass() {
return (Class<T>)ReflectionUtil.getRawType(myChildDescription.getType());
}
+ @Override
public TableCellRenderer getCustomizedRenderer(final T domElement, final TableCellRenderer renderer) {
assert domElement.isValid();
return getErrorableCellRenderer(renderer, domElement);
@@ -81,6 +84,7 @@ public class ChildGenericValueColumnInfo<T extends DomElement> extends DomColumn
return new ErrorableTableCellRenderer<GenericDomValue>(getGenericValue(domElement), renderer, domElement);
}
+ @Override
public void setValue(final T o, final String aValue) {
getGenericValue(o).setStringValue(aValue);
}
@@ -89,6 +93,7 @@ public class ChildGenericValueColumnInfo<T extends DomElement> extends DomColumn
return (GenericDomValue)myChildDescription.getValues(o).get(0);
}
+ @Override
public final String valueOf(T object) {
if (!object.isValid()) return null;
final String stringValue = getGenericValue(object).getStringValue();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboControl.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboControl.java
index 4966c85f1b17..81b615f077f1 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboControl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -48,6 +48,7 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
private boolean myNullable;
private final Map<String, Icon> myIcons = new HashMap<String, Icon>();
private final ItemListener myCommitListener = new ItemListener() {
+ @Override
public void itemStateChanged(ItemEvent e) {
setModified();
commit();
@@ -84,10 +85,12 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
public static Factory<List<Pair<String, Icon>>> createResolvingFunction(final GenericDomValue<?> reference) {
return new Factory<List<Pair<String, Icon>>>() {
+ @Override
public List<Pair<String, Icon>> create() {
final Converter converter = reference.getConverter();
if (converter instanceof ResolvingConverter) {
final AbstractConvertContext context = new AbstractConvertContext() {
+ @Override
@NotNull
public DomElement getInvocationElement() {
return reference;
@@ -97,11 +100,13 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
final Collection<Object> variants = resolvingConverter.getVariants(context);
final List<Pair<String, Icon>> all =
new ArrayList<Pair<String, Icon>>(ContainerUtil.map(variants, new Function<Object, Pair<String, Icon>>() {
+ @Override
public Pair<String, Icon> fun(final Object s) {
return Pair.create(ElementPresentationManager.getElementName(s), ElementPresentationManager.getIcon(s));
}
}));
all.addAll(ContainerUtil.map(resolvingConverter.getAdditionalVariants(context), new Function() {
+ @Override
public Object fun(final Object s) {
return new Pair(s, null);
}
@@ -113,11 +118,13 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
};
}
- public static Factory<List<Pair<String, Icon>>> createPresentationFunction(final Factory<Collection<? extends Object>> variantFactory) {
+ public static Factory<List<Pair<String, Icon>>> createPresentationFunction(final Factory<Collection<?>> variantFactory) {
return new Factory<List<Pair<String, Icon>>>() {
+ @Override
public List<Pair<String, Icon>> create() {
return ContainerUtil.map(variantFactory.create(), new Function<Object, Pair<String, Icon>>() {
+ @Override
public Pair<String, Icon> fun(final Object s) {
return Pair.create(ElementPresentationManager.getElementName(s), ElementPresentationManager.getIcon(s));
}
@@ -129,8 +136,10 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
static Factory<List<Pair<String, Icon>>> createEnumFactory(final Class<? extends Enum> aClass) {
return new Factory<List<Pair<String, Icon>>>() {
+ @Override
public List<Pair<String, Icon>> create() {
return ContainerUtil.map2List(aClass.getEnumConstants(), new Function<Enum, Pair<String, Icon>>() {
+ @Override
public Pair<String, Icon> fun(final Enum s) {
return Pair.create(NamedEnumUtil.getEnumValueByElement(s), ElementPresentationManager.getIcon(s));
}
@@ -151,6 +160,7 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
standardValues.add(pair.first);
}
return initComboBox(comboBox, new Condition<String>() {
+ @Override
public boolean value(final String object) {
return standardValues.contains(object);
}
@@ -176,6 +186,7 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
comboBox.setEditable(false);
comboBox.setPrototypeDisplayValue(new ComboBoxItem("A", null));
comboBox.setRenderer(new DefaultListCellRenderer() {
+ @Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
final Pair<String, Icon> pair = (Pair<String, Icon>)value;
@@ -194,8 +205,10 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
return comboBox;
}
+ @Override
protected JComboBox createMainComponent(final JComboBox boundedComponent) {
return initComboBox(boundedComponent == null ? new JComboBox() : boundedComponent, new Condition<String>() {
+ @Override
public boolean value(final String object) {
return isValidValue(object);
}
@@ -223,10 +236,12 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
return !newData.equals(oldData);
}
+ @Override
protected boolean isCommitted() {
return getComponent().isPopupVisible() || super.isCommitted();
}
+ @Override
protected void doReset() {
final List<Pair<String, Icon>> data = myDataFactory.create();
final JComboBox comboBox = getComponent();
@@ -255,12 +270,14 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
}
}
+ @Override
@Nullable
protected final String getValue() {
final Pair<String, Icon> pair = (Pair<String, Icon>)getComponent().getSelectedItem();
return pair == null || pair == EMPTY ? null : pair.first;
}
+ @Override
protected final void setValue(final String value) {
final JComboBox component = getComponent();
if (!isValidValue(value)) {
@@ -271,6 +288,7 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
}
+ @Override
protected void updateComponent() {
final DomElement domElement = getDomElement();
if (domElement == null || !domElement.isValid()) return;
@@ -279,6 +297,7 @@ public class ComboControl extends BaseModifiableControl<JComboBox, String> {
final Project project = getProject();
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
if (!project.isOpen()) return;
if (!getDomWrapper().isValid()) return;
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboTableCellEditor.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboTableCellEditor.java
index 8e0ef03d067b..c9f61c91a9da 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboTableCellEditor.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/ComboTableCellEditor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,6 +43,7 @@ public class ComboTableCellEditor extends DefaultCellEditor {
comboBox.setBorder(null);
comboBox.putClientProperty("JComboBox.isTableCellEditor", Boolean.TRUE);
ComboControl.initComboBox(comboBox, new Condition<String>() {
+ @Override
public boolean value(final String object) {
return myData != null && myData.containsKey(object) || myNullable && EMPTY.first == object;
}
@@ -53,11 +54,13 @@ public class ComboTableCellEditor extends DefaultCellEditor {
this(ComboControl.createEnumFactory(anEnum), nullable);
}
+ @Override
public Object getCellEditorValue() {
final Pair<String,Icon> cellEditorValue = (Pair<String,Icon>)super.getCellEditorValue();
return EMPTY == cellEditorValue || null == cellEditorValue ? null : cellEditorValue.first;
}
+ @Override
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
final List<Pair<String, Icon>> list = myDataFactory.create();
myData = new HashMap<String,Icon>();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitAdapter.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitAdapter.java
index 537fc1f1145f..d03cf974d1f7 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitAdapter.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitAdapter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -19,9 +19,11 @@ package com.intellij.util.xml.ui;
* @author peter
*/
public abstract class CommitAdapter implements CommitListener{
+ @Override
public void beforeCommit(DomUIControl control) {
}
+ @Override
public void afterCommit(DomUIControl control) {
}
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitablePanelUserActivityListener.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitablePanelUserActivityListener.java
index d34619d3e7c6..6e008c500766 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitablePanelUserActivityListener.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/CommitablePanelUserActivityListener.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,11 +42,13 @@ public class CommitablePanelUserActivityListener implements UserActivityListener
myProject = project;
}
+ @Override
final public void stateChanged() {
if (myApplying) return;
cancel();
cancelAllRequests();
myAlarm.addRequest(new Runnable() {
+ @Override
public void run() {
myApplying = true;
cancel();
@@ -89,6 +91,7 @@ public class CommitablePanelUserActivityListener implements UserActivityListener
myAlarm.cancelAllRequests();
}
+ @Override
public void dispose() {
cancelAllRequests();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/CompositeCommittable.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/CompositeCommittable.java
index edb07490638f..1563f3bdbb3b 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/CompositeCommittable.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/CompositeCommittable.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,18 +32,21 @@ public class CompositeCommittable implements Committable, Highlightable {
return panel;
}
+ @Override
public void commit() {
for (final Committable committable : myComponents) {
committable.commit();
}
}
+ @Override
public void reset() {
for (final Committable committable : myComponents) {
committable.reset();
}
}
+ @Override
public void dispose() {
}
@@ -51,6 +54,7 @@ public class CompositeCommittable implements Committable, Highlightable {
return myComponents;
}
+ @Override
public void updateHighlighting() {
for (final Committable component : myComponents) {
CommittableUtil.updateHighlighting(component);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java
index ba69ab5992b9..54ec270b746d 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionControl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -98,21 +98,25 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
return myEditable;
}
+ @Override
public void bind(JComponent component) {
assert component instanceof DomTableView;
initialize((DomTableView)component);
}
+ @Override
public void addCommitListener(CommitListener listener) {
myDispatcher.addListener(listener);
}
+ @Override
public void removeCommitListener(CommitListener listener) {
myDispatcher.removeListener(listener);
}
+ @Override
public boolean canNavigate(DomElement element) {
final Class<DomElement> aClass = (Class<DomElement>)ReflectionUtil.getRawType(myChildDescription.getType());
@@ -121,6 +125,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
return domElement != null && myCollectionElements.contains(domElement);
}
+ @Override
public void navigate(DomElement element) {
final Class<DomElement> aClass = (Class<DomElement>)ReflectionUtil.getRawType(myChildDescription.getType());
final DomElement domElement = element.getParentOfType(aClass, false);
@@ -131,6 +136,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
myCollectionPanel.getTable().setRowSelectionInterval(index, index);
}
+ @Override
public void calcData(final DataKey key, final DataSink sink) {
if (DOM_COLLECTION_CONTROL.equals(key)) {
sink.put(DOM_COLLECTION_CONTROL, this);
@@ -158,7 +164,8 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
myCollectionPanel.installPopup(ActionPlaces.J2EE_ATTRIBUTES_VIEW_POPUP, createPopupActionGroup());
myCollectionPanel.initializeTable();
myCollectionPanel.addCustomDataProvider(this);
- myCollectionPanel.addChangeListener(new DomTableView.ChangeListener() {
+ myCollectionPanel.addChangeListener(new AbstractTableView.ChangeListener() {
+ @Override
public void changed() {
reset();
}
@@ -197,6 +204,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
}
new WriteCommandAction(getProject(), PsiUtilCore.toPsiFileArray(files)) {
+ @Override
protected void run(Result result) throws Throwable {
for (final T t : toDelete) {
if (t.isValid()) {
@@ -209,6 +217,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
protected final void doRemove() {
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
final int[] selected = myCollectionPanel.getTable().getSelectedRows();
if (selected == null || selected.length == 0) return;
@@ -234,6 +243,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
writeCommandAction.execute();
}
+ @Override
public void commit() {
final CommitListener listener = myDispatcher.getMulticaster();
listener.beforeCommit(this);
@@ -256,6 +266,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
myCollectionPanel.repaint();
}
+ @Override
public void dispose() {
if (myCollectionPanel != null) {
myCollectionPanel.dispose();
@@ -266,6 +277,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
return myParentDomElement.getManager().getProject();
}
+ @Override
public DomTableView getComponent() {
if (myCollectionPanel == null) initialize(null);
@@ -276,10 +288,12 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
return myChildDescription;
}
+ @Override
public final DomElement getDomElement() {
return myParentDomElement;
}
+ @Override
public final void reset() {
myCollectionElements = new ArrayList<T>(getCollectionElements());
myCollectionPanel.reset(createColumnInfos(myParentDomElement), myCollectionElements);
@@ -297,6 +311,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
protected DefaultAddAction createDefaultAction(final String name, final Icon icon, final Type type) {
return new ControlAddAction(name, name, icon) {
+ @Override
protected Type getElementType() {
return type;
}
@@ -321,6 +336,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
return (DomEditorManager)component;
}
+ @Override
public void updateHighlighting() {
if (myCollectionPanel != null) {
myCollectionPanel.revalidate();
@@ -341,10 +357,12 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
super(text, description, icon);
}
+ @Override
protected final DomCollectionChildDescription getDomCollectionChildDescription() {
return myChildDescription;
}
+ @Override
protected final DomElement getParentDomElement() {
return myParentDomElement;
}
@@ -365,7 +383,8 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
}
}
- protected final void afterAddition(final T newElement) {
+ @Override
+ protected final void afterAddition(@NotNull final T newElement) {
reset();
afterAddition(myCollectionPanel.getTable(), myCollectionElements.size() - 1);
}
@@ -381,6 +400,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
setShortcutSet(CommonActionsPanel.getCommonShortcut(CommonActionsPanel.Buttons.ADD));
}
+ @Override
protected boolean isEnabled(final AnActionEvent e) {
return getDomCollectionControl(e) != null;
}
@@ -389,19 +409,23 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
return DomCollectionControl.getDomCollectionControl(e);
}
+ @Override
@NotNull
protected DomCollectionChildDescription[] getDomCollectionChildDescriptions(final AnActionEvent e) {
return new DomCollectionChildDescription[] {getDomCollectionControl(e).getChildDescription()};
}
+ @Override
protected DomElement getParentDomElement(final AnActionEvent e) {
return getDomCollectionControl(e).getDomElement();
}
+ @Override
protected JComponent getComponent(AnActionEvent e) {
return getDomCollectionControl(e).getComponent();
}
+ @Override
@NotNull
public AnAction[] getChildren(final AnActionEvent e) {
final DomCollectionControl control = getDomCollectionControl(e);
@@ -409,6 +433,7 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
return actions == null ? super.getChildren(e) : actions;
}
+ @Override
protected DefaultAddAction createAddingAction(final AnActionEvent e,
final String name,
final Icon icon,
@@ -426,12 +451,14 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
setShortcutSet(CommonActionsPanel.getCommonShortcut(CommonActionsPanel.Buttons.EDIT));
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final DomCollectionControl control = DomCollectionControl.getDomCollectionControl(e);
control.doEdit();
control.reset();
}
+ @Override
public void update(AnActionEvent e) {
final DomCollectionControl control = DomCollectionControl.getDomCollectionControl(e);
final boolean visible = control != null && control.isEditable();
@@ -446,12 +473,14 @@ public class DomCollectionControl<T extends DomElement> extends DomUIControl imp
setShortcutSet(CommonActionsPanel.getCommonShortcut(CommonActionsPanel.Buttons.REMOVE));
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final DomCollectionControl control = DomCollectionControl.getDomCollectionControl(e);
control.doRemove();
control.reset();
}
+ @Override
public void update(AnActionEvent e) {
final boolean enabled;
final DomCollectionControl control = DomCollectionControl.getDomCollectionControl(e);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionWrapper.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionWrapper.java
index b2c25d91d871..77d2be60151d 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionWrapper.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomCollectionWrapper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,16 +50,19 @@ public class DomCollectionWrapper<T> extends DomWrapper<T>{
myGetter = getter;
}
+ @Override
@NotNull
public DomElement getExistingDomElement() {
return myDomElement;
}
+ @Override
public DomElement getWrappedElement() {
final List<? extends DomElement> list = myChildDescription.getValues(myDomElement);
return list.isEmpty() ? null : list.get(0);
}
+ @Override
public void setValue(final T value) throws IllegalAccessException, InvocationTargetException {
final List<? extends DomElement> list = myChildDescription.getValues(myDomElement);
final DomElement domElement;
@@ -71,6 +74,7 @@ public class DomCollectionWrapper<T> extends DomWrapper<T>{
mySetter.invoke(domElement, value);
}
+ @Override
public T getValue() throws IllegalAccessException, InvocationTargetException {
if (!myDomElement.isValid()) return null;
final List<? extends DomElement> list = myChildDescription.getValues(myDomElement);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomColumnInfo.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomColumnInfo.java
index 044bb44a657d..eea9a266c1f1 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomColumnInfo.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomColumnInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,10 +35,12 @@ public abstract class DomColumnInfo<T, Aspect> extends ColumnInfo<T, Aspect> {
myRenderer = renderer;
}
+ @Override
public boolean isCellEditable(final T o) {
return getEditor(o) != null;
}
+ @Override
public TableCellRenderer getRenderer(T value) {
return myRenderer;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFileEditor.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFileEditor.java
index a4f19649d7aa..ee8f1faaf450 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFileEditor.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFileEditor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -46,6 +46,7 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
public DomFileEditor(final Project project, final VirtualFile file, final String name, final T component) {
this(project, file, name, new Factory<T>() {
+ @Override
public T create() {
return component;
}
@@ -58,6 +59,7 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
myName = name;
DomElementAnnotationsManager.getInstance(project).addHighlightingListener(new DomElementAnnotationsManager.DomHighlightingListener() {
+ @Override
public void highlightingFinished(@NotNull DomFileElement element) {
if (isInitialised() && getComponent().isShowing() && element.isValid()) {
updateHighlighting();
@@ -66,12 +68,14 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
}, this);
}
+ @Override
public void updateHighlighting() {
if (checkIsValid()) {
CommittableUtil.updateHighlighting(myComponent);
}
}
+ @Override
public void commit() {
if (checkIsValid() && isInitialised()) {
setShowing(false);
@@ -84,6 +88,7 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
}
}
+ @Override
@Nullable
public JComponent getPreferredFocusedComponent() {
ensureInitialized();
@@ -94,12 +99,14 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
return myComponent;
}
+ @Override
@NotNull
protected JComponent createCustomComponent() {
new MnemonicHelper().register(getComponent());
myComponent = myComponentFactory.create();
DomUIFactory.getDomUIFactory().setupErrorOutdatingUserActivityWatcher(this, getDomElement());
DomManager.getDomManager(getProject()).addDomEventListener(new DomEventListener() {
+ @Override
public void eventOccured(DomEvent event) {
checkIsValid();
}
@@ -108,16 +115,19 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
return myComponent.getComponent();
}
+ @Override
@NotNull
public final String getName() {
return myName;
}
+ @Override
protected DomElement getSelectedDomElement() {
if (myComponent == null) return null;
return DomUINavigationProvider.findDomElement(myComponent);
}
+ @Override
protected void setSelectedDomElement(DomElement domElement) {
final DomUIControl domControl = DomUINavigationProvider.findDomControl(myComponent, domElement);
if (domControl != null) {
@@ -125,6 +135,7 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
}
}
+ @Override
public BackgroundEditorHighlighter getBackgroundHighlighter() {
ensureInitialized();
return DomUIFactory.getDomUIFactory().createDomHighlighter(getProject(), this, getDomElement());
@@ -135,10 +146,12 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
}
+ @Override
public boolean isValid() {
return super.isValid() && (!isInitialised() || getDomElement().isValid());
}
+ @Override
public void reset() {
if (checkIsValid()) {
myComponent.reset();
@@ -152,6 +165,7 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
final XmlFile file = DomUtil.getFile(element);
final Factory<BasicDomElementComponent> factory = new Factory<BasicDomElementComponent>() {
+ @Override
public BasicDomElementComponent create() {
CaptionComponent captionComponent = new CaptionComponent(name, icon);
@@ -162,6 +176,7 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
}
};
return new DomFileEditor<BasicDomElementComponent>(file.getProject(), file.getVirtualFile(), name, factory) {
+ @Override
public JComponent getPreferredFocusedComponent() {
return null;
}
@@ -176,6 +191,7 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
panel.add(element.isValid() ? committablePanel.getComponent() : new JPanel(), BorderLayout.CENTER);
BasicDomElementComponent component = new BasicDomElementComponent(element) {
+ @Override
public JComponent getComponent() {
return panel;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFixedWrapper.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFixedWrapper.java
index 7597791f266a..b43eb0392f5e 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFixedWrapper.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomFixedWrapper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,19 +31,23 @@ public class DomFixedWrapper<T> extends DomWrapper<T>{
myDomElement = domElement;
}
+ @Override
public DomElement getWrappedElement() {
return myDomElement;
}
+ @Override
public void setValue(final T value) throws IllegalAccessException, InvocationTargetException {
DomUIFactory.SET_VALUE_METHOD.invoke(getWrappedElement(), value);
}
+ @Override
public T getValue() throws IllegalAccessException, InvocationTargetException {
final DomElement element = getWrappedElement();
return element.isValid() ? (T)DomUIFactory.GET_VALUE_METHOD.invoke(element) : null;
}
+ @Override
@NotNull
public DomElement getExistingDomElement() {
return myDomElement;
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomStringWrapper.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomStringWrapper.java
index b2e9c2958cdb..32946908413b 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomStringWrapper.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomStringWrapper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,19 +31,23 @@ public class DomStringWrapper extends DomWrapper<String>{
myDomElement = domElement;
}
+ @Override
@NotNull
public DomElement getExistingDomElement() {
return myDomElement;
}
+ @Override
public DomElement getWrappedElement() {
return myDomElement;
}
+ @Override
public void setValue(final String value) throws IllegalAccessException, InvocationTargetException {
myDomElement.setStringValue(value);
}
+ @Override
public String getValue() throws IllegalAccessException, InvocationTargetException {
return myDomElement.isValid() ? myDomElement.getStringValue() : null;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomTableView.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomTableView.java
index f25fbfc798e5..e228ad7756d0 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomTableView.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomTableView.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -44,6 +44,7 @@ public class DomTableView extends AbstractTableView<DomElement> {
myCustomDataProviders.add(provider);
}
+ @Override
public void calcData(final DataKey key, final DataSink sink) {
super.calcData(key, sink);
for (final TypeSafeDataProvider customDataProvider : myCustomDataProviders) {
@@ -56,9 +57,11 @@ public class DomTableView extends AbstractTableView<DomElement> {
installPopup(ActionPlaces.J2EE_ATTRIBUTES_VIEW_POPUP, group);
}
+ @Override
protected void wrapValueSetting(@NotNull final DomElement domElement, final Runnable valueSetter) {
if (domElement.isValid()) {
new WriteCommandAction(getProject(), DomUtil.getFile(domElement)) {
+ @Override
protected void run(final Result result) throws Throwable {
valueSetter.run();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUIFactory.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUIFactory.java
index e5effb1e63bd..2184ff8ca2b7 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUIFactory.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUIFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -44,8 +44,8 @@ public abstract class DomUIFactory {
public final static ExtensionPointName<Consumer<DomUIFactory>> EXTENSION_POINT_NAME = ExtensionPointName.create("com.intellij.dom.uiControlsProvider");
- public static Method GET_VALUE_METHOD = ReflectionUtil.getMethod(GenericDomValue.class, "getValue");
- public static Method SET_VALUE_METHOD = findMethod(GenericDomValue.class, "setValue");
+ public static final Method GET_VALUE_METHOD = ReflectionUtil.getMethod(GenericDomValue.class, "getValue");
+ public static final Method SET_VALUE_METHOD = findMethod(GenericDomValue.class, "setValue");
public static Method GET_STRING_METHOD = ReflectionUtil.getMethod(GenericDomValue.class, "getStringValue");
public static Method SET_STRING_METHOD = findMethod(GenericDomValue.class, "setStringValue");
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUINavigationProvider.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUINavigationProvider.java
index 7aa1e5f54ff5..adfa209ce858 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUINavigationProvider.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/DomUINavigationProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,10 +35,12 @@ public class DomUINavigationProvider extends DomElementNavigationProvider {
}
+ @Override
public String getProviderName() {
return DOM_UI_NAVIGATION_PROVIDER_NAME;
}
+ @Override
public void navigate(DomElement domElement, boolean requestFocus) {
final DomUIControl domUIControl = findDomControl(myComponent, domElement);
if(domUIControl != null) {
@@ -46,6 +48,7 @@ public class DomUINavigationProvider extends DomElementNavigationProvider {
}
}
+ @Override
public boolean canNavigate(DomElement domElement) {
return findDomControl(myComponent, domElement) != null;
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/ErrorableTableCellRenderer.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/ErrorableTableCellRenderer.java
index 59b40c101b58..a92015cca615 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/ErrorableTableCellRenderer.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/ErrorableTableCellRenderer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -48,6 +48,7 @@ public class ErrorableTableCellRenderer<T extends DomElement> extends DefaultTab
myRoot = DomUtil.getRoot(myRowDomElement);
}
+ @Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
final Component component = myRenderer.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if (!myRoot.isValid()) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/GenericValueColumnInfo.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/GenericValueColumnInfo.java
index 033e6095672a..16644b138437 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/GenericValueColumnInfo.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/GenericValueColumnInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,18 +38,22 @@ public class GenericValueColumnInfo<T> extends DomColumnInfo<GenericDomValue<T>,
this(name, columnClass, new DefaultTableCellRenderer(), editor);
}
+ @Override
public final TableCellEditor getEditor(GenericDomValue<T> value) {
return myEditor;
}
+ @Override
public final Class<T> getColumnClass() {
return myColumnClass;
}
+ @Override
public final void setValue(final GenericDomValue<T> o, final String aValue) {
o.setStringValue(aValue);
}
+ @Override
public final String valueOf(GenericDomValue<T> object) {
return object.getStringValue();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/MockDomElementsEditor.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/MockDomElementsEditor.java
index 5cd8a743bcec..ee99db4fe353 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/MockDomElementsEditor.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/MockDomElementsEditor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,6 +50,7 @@ public class MockDomElementsEditor {
protected final <T extends DomElement> T addEditedElement(final Class<T> aClass, final EditedElementDescription<T> description) {
final DomManager domManager = DomManager.getDomManager(myModule.getProject());
final T t = domManager.createStableValue(new Factory<T>() {
+ @Override
public T create() {
T t = description.find();
if (t == null) {
@@ -68,6 +69,7 @@ public class MockDomElementsEditor {
protected final DomFileEditor initFileEditor(final BasicDomElementComponent component, final VirtualFile virtualFile, final String name) {
initFileEditor(component.getProject(), virtualFile, name, new Factory<BasicDomElementComponent>() {
+ @Override
public BasicDomElementComponent create() {
return component;
}
@@ -78,10 +80,12 @@ public class MockDomElementsEditor {
protected final DomFileEditor initFileEditor(final Project project, final VirtualFile virtualFile, final String name, final Factory<? extends BasicDomElementComponent> component) {
myFileEditor = new DomFileEditor<BasicDomElementComponent>(project, virtualFile, name, component) {
+ @Override
public JComponent getPreferredFocusedComponent() {
return null;
}
+ @Override
@NotNull
protected JComponent createCustomComponent() {
final JComponent customComponent = super.createCustomComponent();
@@ -89,6 +93,7 @@ public class MockDomElementsEditor {
return customComponent;
}
+ @Override
public void reset() {
for (final Map.Entry<EditedElementDescription<? extends DomElement>, DomElement> entry : myDomElements.entrySet()) {
final DomElement newValue = entry.getKey().find();
@@ -100,6 +105,7 @@ public class MockDomElementsEditor {
super.reset();
}
+ @Override
public void commit() {
super.commit();
final List<EditedElementDescription> descriptions = new ArrayList<EditedElementDescription>();
@@ -116,6 +122,7 @@ public class MockDomElementsEditor {
}
}
new WriteCommandAction(project, PsiUtilCore.toPsiFileArray(changedFiles)) {
+ @Override
protected void run(Result result) throws Throwable {
for (EditedElementDescription description : descriptions) {
final DomElement editedElement = myDomElements.get(description);
@@ -145,6 +152,7 @@ public class MockDomElementsEditor {
private <T extends DomElement> T createMockElement(final Class<T> aClass, final Module module) {
final Project project = module.getProject();
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
if (myFileEditor.isInitialised()) {
myContents.reset();
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/StringColumnInfo.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/StringColumnInfo.java
index edb3f41fa1a4..c20a715903ab 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/StringColumnInfo.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/StringColumnInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,6 +25,7 @@ public class StringColumnInfo<T extends DomElement> extends DomColumnInfo<T, Str
super(name);
}
+ @Override
public String valueOf(final T object) {
return object.getPresentation().getTypeName();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/StripeTableCellRenderer.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/StripeTableCellRenderer.java
index 98537191cb36..85b27dc63153 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/StripeTableCellRenderer.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/StripeTableCellRenderer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -41,6 +41,7 @@ public class StripeTableCellRenderer implements TableCellRenderer {
Math.max((int)(color.getBlue() *FACTOR), 0));
}
+ @Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
final JComponent component = (JComponent)getRenderer(row, column).getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if (row % 2 != 0 && !isSelected) {
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/UndoHelper.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/UndoHelper.java
index 8af5568b745e..ad671b1a0e69 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/UndoHelper.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/UndoHelper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,6 +36,7 @@ public class UndoHelper {
private final Set<Document> myCurrentDocuments = new HashSet<Document>();
private boolean myDirty;
private final DocumentAdapter myDocumentAdapter = new DocumentAdapter() {
+ @Override
public void documentChanged(DocumentEvent e) {
if (myShowing) {
myDirty = true;
@@ -47,14 +48,17 @@ public class UndoHelper {
myProject = project;
final PsiDocumentManager psiDocumentManager = PsiDocumentManager.getInstance(project);
CommandProcessor.getInstance().addCommandListener(new CommandAdapter() {
+ @Override
public void commandStarted(CommandEvent event) {
undoTransparentActionStarted();
}
+ @Override
public void undoTransparentActionStarted() {
myDirty = false;
}
+ @Override
public void undoTransparentActionFinished() {
if (myDirty) {
psiDocumentManager.commitAllDocuments();
@@ -62,6 +66,7 @@ public class UndoHelper {
}
}
+ @Override
public void commandFinished(CommandEvent event) {
undoTransparentActionFinished();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/AddDomElementAction.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/AddDomElementAction.java
index 31629d52f5fa..4e6cf8a16378 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/AddDomElementAction.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/AddDomElementAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -48,6 +48,7 @@ public abstract class AddDomElementAction extends AnAction {
super(ApplicationBundle.message("action.add"), null, DomCollectionControl.ADD_ICON);
}
+ @Override
public void update(AnActionEvent e) {
if (!isEnabled(e)) {
e.getPresentation().setEnabled(false);
@@ -75,6 +76,7 @@ public abstract class AddDomElementAction extends AnAction {
super.update(e);
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final AnAction[] actions = getChildren(e);
if (actions.length > 1) {
@@ -138,6 +140,7 @@ public abstract class AddDomElementAction extends AnAction {
}
if (actions.size() > 1 && showAsPopup()) {
ActionGroup group = new ActionGroup() {
+ @Override
@NotNull
public AnAction[] getChildren(@Nullable AnActionEvent e) {
return actions.toArray(new AnAction[actions.size()]);
@@ -183,6 +186,7 @@ public abstract class AddDomElementAction extends AnAction {
setShortcutSet(CommonActionsPanel.getCommonShortcut(CommonActionsPanel.Buttons.ADD));
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final ListPopup groupPopup =
JBPopupFactory.getInstance().createActionGroupPopup(null,
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/DefaultAddAction.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/DefaultAddAction.java
index a564e03150fc..eafc360d0248 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/DefaultAddAction.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/DefaultAddAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -66,6 +66,7 @@ public abstract class DefaultAddAction<T extends DomElement> extends AnAction {
protected void afterAddition(@NotNull T newElement) {
}
+ @Override
public final void actionPerformed(final AnActionEvent e) {
final T result = performElementAddition();
if (result != null) {
@@ -80,6 +81,7 @@ public abstract class DefaultAddAction<T extends DomElement> extends AnAction {
final TypeChooser[] oldChoosers = new TypeChooser[]{null};
final Type[] aClass = new Type[]{null};
final StableElement<T> result = new WriteCommandAction<StableElement<T>>(domManager.getProject(), DomUtil.getFile(parent)) {
+ @Override
protected void run(Result<StableElement<T>> result) throws Throwable {
final DomElement parentDomElement = getParentDomElement();
final T t = (T)getDomCollectionChildDescription().addValue(parentDomElement, getElementType());
@@ -89,6 +91,7 @@ public abstract class DefaultAddAction<T extends DomElement> extends AnAction {
final SmartPsiElementPointer pointer =
SmartPointerManager.getInstance(getProject()).createSmartPsiElementPointer(t.getXmlTag());
domManager.getTypeChooserManager().registerTypeChooser(aClass[0], new TypeChooser() {
+ @Override
public Type chooseType(final XmlTag tag) {
if (tag == pointer.getElement()) {
return getElementType();
@@ -96,10 +99,12 @@ public abstract class DefaultAddAction<T extends DomElement> extends AnAction {
return oldChoosers[0].chooseType(tag);
}
+ @Override
public void distinguishTag(final XmlTag tag, final Type aClass) throws IncorrectOperationException {
oldChoosers[0].distinguishTag(tag, aClass);
}
+ @Override
public Type[] getChooserTypes() {
return oldChoosers[0].getChooserTypes();
}
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementAction.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementAction.java
index dd6f1c03ae2c..89229194ea57 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementAction.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,11 +50,14 @@ public class GenerateDomElementAction extends CodeInsightAction {
this(generateProvider, null);
}
+ @Override
@NotNull
protected CodeInsightActionHandler getHandler() {
return new CodeInsightActionHandler() {
+ @Override
public void invoke(@NotNull final Project project, @NotNull final Editor editor, @NotNull final PsiFile file) {
final Runnable runnable = new Runnable() {
+ @Override
public void run() {
final DomElement element = myProvider.generate(project, editor, file);
myProvider.navigate(element);
@@ -63,6 +66,7 @@ public class GenerateDomElementAction extends CodeInsightAction {
if (GenerateDomElementAction.this.startInWriteAction()) {
new WriteCommandAction(project, file) {
+ @Override
protected void run(final Result result) throws Throwable {
runnable.run();
}
@@ -73,6 +77,7 @@ public class GenerateDomElementAction extends CodeInsightAction {
}
}
+ @Override
public boolean startInWriteAction() {
return false;
}
@@ -83,6 +88,7 @@ public class GenerateDomElementAction extends CodeInsightAction {
return true;
}
+ @Override
protected boolean isValidForFile(@NotNull final Project project, @NotNull final Editor editor, @NotNull final PsiFile file) {
final DomElement element = DomUtil.getContextElement(editor);
return element != null && myProvider.isAvailableForElement(element);
diff --git a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementProvider.java b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementProvider.java
index 810a778ab235..1115521da25c 100644
--- a/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementProvider.java
+++ b/xml/dom-openapi/src/com/intellij/util/xml/ui/actions/generate/GenerateDomElementProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -51,6 +51,7 @@ public abstract class GenerateDomElementProvider<T extends DomElement> {
if (navigateProvider != null && navigateProvider.canNavigate(copy)) {
ApplicationManager.getApplication().invokeLater(new Runnable() {
+ @Override
public void run() {
if (!project.isDisposed()) {
doNavigate(navigateProvider, copy);
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/DomBasicsTest.java b/xml/dom-tests/tests/com/intellij/util/xml/DomBasicsTest.java
index 7f059e4f000a..630ad79f03d0 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/DomBasicsTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/DomBasicsTest.java
@@ -200,7 +200,7 @@ public class DomBasicsTest extends DomTestCase {
private void assertFixedChildDescription(final DomFixedChildDescription description,
final DomElement child,
- final String tagName) throws NoSuchMethodException {
+ final String tagName) {
assertEquals(1, description.getCount());
assertEquals(Arrays.asList(child), description.getValues(child.getParent()));
assertEquals(tagName, description.getXmlElementName());
@@ -210,7 +210,7 @@ public class DomBasicsTest extends DomTestCase {
private static void assertGenericChildDescription(final DomFixedChildDescription description,
final DomElement child,
- final String tagName) throws NoSuchMethodException {
+ final String tagName) {
assertEquals(1, description.getCount());
assertEquals(Arrays.asList(child), description.getValues(child.getParent()));
assertEquals(tagName, description.getXmlElementName());
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/DomChildrenTest.java b/xml/dom-tests/tests/com/intellij/util/xml/DomChildrenTest.java
index efd932523d86..60cb32b093cb 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/DomChildrenTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/DomChildrenTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -207,6 +207,7 @@ public class DomChildrenTest extends DomTestCase {
assertEquals(element, child2.getParent());
WriteCommandAction.runWriteCommandAction(null, new Runnable() {
+ @Override
public void run() {
child2.undefine();
assertFalse(child2.isValid());
@@ -409,6 +410,7 @@ public class DomChildrenTest extends DomTestCase {
final MyElement element = createElement("<a><child/></a>");
final MyElement child = element.getChild();
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
element.undefine();
}
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/DomConcurrencyStressTest.java b/xml/dom-tests/tests/com/intellij/util/xml/DomConcurrencyStressTest.java
index 4a94d0e5ba26..d7df24ea570f 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/DomConcurrencyStressTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/DomConcurrencyStressTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -82,6 +82,7 @@ public class DomConcurrencyStressTest extends DomTestCase {
public void run() {
for (int i = 0; i < ITERATIONS; i++) {
ApplicationManager.getApplication().runReadAction(new Runnable() {
+ @Override
public void run() {
final DomFileElementImpl<DomElement> element = getDomManager().getFileElement(file);
assertNotNull(element);
@@ -197,6 +198,7 @@ public class DomConcurrencyStressTest extends DomTestCase {
final Random random = new Random();
for (int i = 0; i < ITERATIONS; i++) {
ApplicationManager.getApplication().runReadAction(new Runnable() {
+ @Override
public void run() {
int offset = random.nextInt(file.getTextLength() - 10);
XmlTag tag = PsiTreeUtil.findElementOfClassAtOffset(file, offset, XmlTag.class, false);
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/DomExtensionsTest.java b/xml/dom-tests/tests/com/intellij/util/xml/DomExtensionsTest.java
index 5aa8c0b2255d..c75fe42d2bc7 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/DomExtensionsTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/DomExtensionsTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,6 +18,7 @@ package com.intellij.util.xml;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.openapi.util.Key;
import com.intellij.testFramework.IdeaTestUtil;
+import com.intellij.testFramework.PlatformTestUtil;
import com.intellij.util.Consumer;
import com.intellij.util.ParameterizedTypeImpl;
import com.intellij.util.ReflectionUtil;
@@ -212,7 +213,7 @@ public class DomExtensionsTest extends DomTestCase {
final DomExtenderEP extenderEP = new DomExtenderEP();
extenderEP.domClassName = domClass.getName();
extenderEP.extenderClassName = extenderClass.getName();
- IdeaTestUtil.registerExtension(Extensions.getRootArea(), DomExtenderEP.EP_NAME, extenderEP, myTestRootDisposable);
+ PlatformTestUtil.registerExtension(Extensions.getRootArea(), DomExtenderEP.EP_NAME, extenderEP, myTestRootDisposable);
}
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/DomIncludesTest.java b/xml/dom-tests/tests/com/intellij/util/xml/DomIncludesTest.java
index 095c9d40b050..d141ce0abcbf 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/DomIncludesTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/DomIncludesTest.java
@@ -66,7 +66,7 @@ public class DomIncludesTest extends CodeInsightFixtureTestCase {
assertEquals("a", element.getXxx().getValue());
}
};
- assertOrderedCollection(children, new Consumer[] { consumer1, consumer2 });
+ assertOrderedCollection(children, consumer1, consumer2);
}
public void testNamespaces() throws Throwable {
@@ -127,6 +127,7 @@ public class DomIncludesTest extends CodeInsightFixtureTestCase {
try {
for (int k = 0; k < iterationCount; k++) {
ApplicationManager.getApplication().runReadAction(new Runnable() {
+ @Override
public void run() {
final List<Boy> boys = rootElement.getBoys();
Thread.yield();
@@ -151,6 +152,7 @@ public class DomIncludesTest extends CodeInsightFixtureTestCase {
for (int i = 0; i < iterationCount; i++) {
WriteCommandAction.runWriteCommandAction(null, new Runnable() {
+ @Override
public void run() {
fileB.getViewProvider().getDocument().insertString(0, " ");
fileD.getViewProvider().getDocument().insertString(0, " ");
@@ -158,14 +160,18 @@ public class DomIncludesTest extends CodeInsightFixtureTestCase {
}
});
Thread.sleep(10);
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
fileC.getViewProvider().getDocument().insertString(0, " ");
fileE.getViewProvider().getDocument().insertString(0, " ");
PsiDocumentManager.getInstance(getProject()).commitAllDocuments(); //clear xinclude caches
}
});
Thread.sleep(10);
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
fileB.getViewProvider().getDocument().setText(textB);
fileC.getViewProvider().getDocument().setText(textC);
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/DomSaxParserTest.java b/xml/dom-tests/tests/com/intellij/util/xml/DomSaxParserTest.java
index c5ec2d4bd9b8..e9ab73077873 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/DomSaxParserTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/DomSaxParserTest.java
@@ -1,6 +1,17 @@
/*
- * Copyright (c) 2000-2005 by JetBrains s.r.o. All Rights Reserved.
- * Use is subject to license terms.
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
package com.intellij.util.xml;
@@ -100,7 +111,7 @@ public class DomSaxParserTest extends LightPlatformCodeInsightFixtureTestCase {
"<!ENTITY % globals SYSTEM \"classpath://auction/persistence/globals.dtd\">\n" + "%globals;\n" + "]><a/>", "a", null, null, "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd");
}
- private void assertData(final String start, @Nullable final String localName, @Nullable String namespace, @Nullable String publicId, @Nullable String systemId) throws IOException, SAXException {
+ private void assertData(final String start, @Nullable final String localName, @Nullable String namespace, @Nullable String publicId, @Nullable String systemId) {
XmlFileHeader expected = new XmlFileHeader(localName, namespace, publicId, systemId);
XmlFile file = createXmlFile(start);
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/ProxyTest.java b/xml/dom-tests/tests/com/intellij/util/xml/ProxyTest.java
index 95c25fc3540a..3db1009c15de 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/ProxyTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/ProxyTest.java
@@ -201,6 +201,7 @@ public class ProxyTest extends TestCase {
}
interface ConcreteInterface extends GenericInterface<String> {
+ @Override
Object foo(String t);
}
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/impl/IncrementalUpdateEventsTest.java b/xml/dom-tests/tests/com/intellij/util/xml/impl/IncrementalUpdateEventsTest.java
index 41c6b49fd168..5568b312844c 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/impl/IncrementalUpdateEventsTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/impl/IncrementalUpdateEventsTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -124,6 +124,7 @@ public class IncrementalUpdateEventsTest extends DomTestCase {
private void deleteTag(final int index) throws IncorrectOperationException {
WriteCommandAction.runWriteCommandAction(null, new Runnable() {
+ @Override
public void run() {
myElement.getXmlTag().getSubTags()[index].delete();
}
diff --git a/xml/dom-tests/tests/com/intellij/util/xml/impl/TreeIncrementalUpdateTest.java b/xml/dom-tests/tests/com/intellij/util/xml/impl/TreeIncrementalUpdateTest.java
index 3ad475aa67b3..32e9f2d5a71c 100644
--- a/xml/dom-tests/tests/com/intellij/util/xml/impl/TreeIncrementalUpdateTest.java
+++ b/xml/dom-tests/tests/com/intellij/util/xml/impl/TreeIncrementalUpdateTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -373,6 +373,7 @@ public class TreeIncrementalUpdateTest extends DomTestCase {
final XmlTag tag = element.getXmlTag();
final XmlTag childTag = tag.getSubTags()[0];
WriteCommandAction.runWriteCommandAction(null, new Runnable() {
+ @Override
public void run() {
childTag.delete();
}
@@ -391,7 +392,9 @@ public class TreeIncrementalUpdateTest extends DomTestCase {
final Sepulka element = createElement("<a><foo/><bar/></a>", Sepulka.class);
final List<MyElement> list = element.getCustomChildren();
final XmlTag tag = element.getXmlTag();
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
tag.getSubTags()[0].delete();
tag.getSubTags()[0].delete();
}
@@ -420,6 +423,7 @@ public class TreeIncrementalUpdateTest extends DomTestCase {
assertNoCache(leafTag);
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
tag.getSubTags()[1].delete();
diff --git a/xml/impl/src/com/intellij/application/options/CodeStyleHtmlPanel.java b/xml/impl/src/com/intellij/application/options/CodeStyleHtmlPanel.java
index bde6a85f6f5f..ba5a72a80beb 100644
--- a/xml/impl/src/com/intellij/application/options/CodeStyleHtmlPanel.java
+++ b/xml/impl/src/com/intellij/application/options/CodeStyleHtmlPanel.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,6 +26,7 @@ import com.intellij.openapi.util.Comparing;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.PsiFile;
import com.intellij.psi.codeStyle.CodeStyleSettings;
+import com.intellij.psi.codeStyle.CommonCodeStyleSettings;
import com.intellij.ui.components.JBScrollPane;
import com.intellij.util.ArrayUtil;
import com.intellij.util.PlatformIcons;
@@ -88,6 +89,7 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
addPanelToWatch(myPanel);
}
+ @Override
protected EditorHighlighter createHighlighter(final EditorColorsScheme scheme) {
return XmlHighlighterFactory.createXMLHighlighter(scheme);
}
@@ -106,6 +108,7 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
uiField.getTextField().setEditable(false);
uiField.setButtonIcon(PlatformIcons.OPEN_EDIT_DIALOG_ICON);
uiField.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
final TagListDialog tagListDialog = new TagListDialog(title);
tagListDialog.setData(createCollectionOn(uiField.getText()));
@@ -129,14 +132,16 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
});
}
+ @Override
protected int getRightMargin() {
return 60;
}
+ @Override
public void apply(CodeStyleSettings settings) {
settings.HTML_KEEP_BLANK_LINES = getIntValue(myKeepBlankLines);
settings.HTML_ATTRIBUTE_WRAP = ourWrappings[myWrapAttributes.getSelectedIndex()];
- settings.HTML_TEXT_WRAP = myWrapText.isSelected() ? CodeStyleSettings.WRAP_AS_NEEDED : CodeStyleSettings.DO_NOT_WRAP;
+ settings.HTML_TEXT_WRAP = myWrapText.isSelected() ? CommonCodeStyleSettings.WRAP_AS_NEEDED : CommonCodeStyleSettings.DO_NOT_WRAP;
settings.HTML_SPACE_INSIDE_EMPTY_TAG = mySpaceInEmptyTag.isSelected();
settings.HTML_ALIGN_ATTRIBUTES = myAlignAttributes.isSelected();
settings.HTML_ALIGN_TEXT = myAlignText.isSelected();
@@ -164,10 +169,11 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
}
}
+ @Override
protected void resetImpl(final CodeStyleSettings settings) {
myKeepBlankLines.setText(String.valueOf(settings.HTML_KEEP_BLANK_LINES));
myWrapAttributes.setSelectedIndex(getIndexForWrapping(settings.HTML_ATTRIBUTE_WRAP));
- myWrapText.setSelected(settings.HTML_TEXT_WRAP != CodeStyleSettings.DO_NOT_WRAP);
+ myWrapText.setSelected(settings.HTML_TEXT_WRAP != CommonCodeStyleSettings.DO_NOT_WRAP);
mySpaceInEmptyTag.setSelected(settings.HTML_SPACE_INSIDE_EMPTY_TAG);
myAlignAttributes.setSelected(settings.HTML_ALIGN_ATTRIBUTES);
myAlignText.setSelected(settings.HTML_ALIGN_TEXT);
@@ -186,6 +192,7 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
myKeepWhiteSpacesTagNames.setText(settings.HTML_KEEP_WHITESPACES_INSIDE);
}
+ @Override
public boolean isModified(CodeStyleSettings settings) {
if (settings.HTML_KEEP_BLANK_LINES != getIntValue(myKeepBlankLines)) {
return true;
@@ -194,7 +201,7 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
return true;
}
- if ((settings.HTML_TEXT_WRAP == CodeStyleSettings.WRAP_AS_NEEDED) != myWrapText.isSelected()) {
+ if ((settings.HTML_TEXT_WRAP == CommonCodeStyleSettings.WRAP_AS_NEEDED) != myWrapText.isSelected()) {
return true;
}
@@ -256,20 +263,24 @@ public class CodeStyleHtmlPanel extends CodeStyleAbstractPanel {
return false;
}
+ @Override
public JComponent getPanel() {
return myPanel;
}
+ @Override
protected String getPreviewText() {
return readFromFile(this.getClass(), "preview.html.template");
}
+ @Override
@NotNull
protected FileType getFileType() {
return StdFileTypes.HTML;
}
+ @Override
protected void prepareForReformat(final PsiFile psiFile) {
//psiFile.putUserData(PsiUtil.FILE_LANGUAGE_LEVEL_KEY, LanguageLevel.HIGHEST);
}
diff --git a/xml/impl/src/com/intellij/application/options/CodeStyleXmlPanel.java b/xml/impl/src/com/intellij/application/options/CodeStyleXmlPanel.java
index b7f0bd3ecac7..ab3126162dde 100644
--- a/xml/impl/src/com/intellij/application/options/CodeStyleXmlPanel.java
+++ b/xml/impl/src/com/intellij/application/options/CodeStyleXmlPanel.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -22,6 +22,7 @@ import com.intellij.openapi.fileTypes.FileType;
import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.psi.PsiFile;
import com.intellij.psi.codeStyle.CodeStyleSettings;
+import com.intellij.psi.codeStyle.CommonCodeStyleSettings;
import com.intellij.psi.formatter.xml.XmlCodeStyleSettings;
import com.intellij.ui.components.JBScrollPane;
import org.jetbrains.annotations.NotNull;
@@ -57,21 +58,24 @@ public class CodeStyleXmlPanel extends CodeStyleAbstractPanel{
addPanelToWatch(myPanel);
}
+ @Override
protected EditorHighlighter createHighlighter(final EditorColorsScheme scheme) {
return XmlHighlighterFactory.createXMLHighlighter(scheme);
}
+ @Override
protected int getRightMargin() {
return 60;
}
+ @Override
public void apply(CodeStyleSettings settings) {
XmlCodeStyleSettings xmlSettings = settings.getCustomSettings(XmlCodeStyleSettings.class);
xmlSettings.XML_KEEP_BLANK_LINES = getIntValue(myKeepBlankLines);
xmlSettings.XML_KEEP_LINE_BREAKS = myKeepLineBreaks.isSelected();
xmlSettings.XML_KEEP_LINE_BREAKS_IN_TEXT = myKeepLineBreaksInText.isSelected();
xmlSettings.XML_ATTRIBUTE_WRAP = ourWrappings[myWrapAttributes.getSelectedIndex()];
- xmlSettings.XML_TEXT_WRAP = myWrapText.isSelected() ? CodeStyleSettings.WRAP_AS_NEEDED : CodeStyleSettings.DO_NOT_WRAP;
+ xmlSettings.XML_TEXT_WRAP = myWrapText.isSelected() ? CommonCodeStyleSettings.WRAP_AS_NEEDED : CommonCodeStyleSettings.DO_NOT_WRAP;
xmlSettings.XML_ALIGN_ATTRIBUTES = myAlignAttributes.isSelected();
xmlSettings.XML_KEEP_WHITESPACES = myKeepWhiteSpaces.isSelected();
xmlSettings.XML_SPACE_AROUND_EQUALITY_IN_ATTRIBUTE = mySpacesAroundEquality.isSelected();
@@ -90,6 +94,7 @@ public class CodeStyleXmlPanel extends CodeStyleAbstractPanel{
}
}
+ @Override
protected void resetImpl(final CodeStyleSettings settings) {
XmlCodeStyleSettings xmlSettings = settings.getCustomSettings(XmlCodeStyleSettings.class);
myKeepBlankLines.setText(String.valueOf(xmlSettings.XML_KEEP_BLANK_LINES));
@@ -106,6 +111,7 @@ public class CodeStyleXmlPanel extends CodeStyleAbstractPanel{
myKeepWhitespaceInsideCDATACheckBox.setSelected(xmlSettings.XML_KEEP_WHITE_SPACES_INSIDE_CDATA);
}
+ @Override
public boolean isModified(CodeStyleSettings settings) {
XmlCodeStyleSettings xmlSettings = settings.getCustomSettings(XmlCodeStyleSettings.class);
if (myWrapText.isSelected() != wrapText(settings)) {
@@ -155,22 +161,26 @@ public class CodeStyleXmlPanel extends CodeStyleAbstractPanel{
private boolean wrapText(final CodeStyleSettings settings) {
XmlCodeStyleSettings xmlSettings = settings.getCustomSettings(XmlCodeStyleSettings.class);
- return xmlSettings.XML_TEXT_WRAP == CodeStyleSettings.WRAP_AS_NEEDED;
+ return xmlSettings.XML_TEXT_WRAP == CommonCodeStyleSettings.WRAP_AS_NEEDED;
}
+ @Override
public JComponent getPanel() {
return myPanel;
}
+ @Override
protected String getPreviewText() {
return readFromFile(getClass(), "preview.xml.template");
}
+ @Override
@NotNull
protected FileType getFileType() {
return StdFileTypes.XML;
}
+ @Override
protected void prepareForReformat(final PsiFile psiFile) {
//psiFile.putUserData(PsiUtil.FILE_LANGUAGE_LEVEL_KEY, LanguageLevel.HIGHEST);
}
diff --git a/xml/impl/src/com/intellij/application/options/HtmlCodeStyleMainPanel.java b/xml/impl/src/com/intellij/application/options/HtmlCodeStyleMainPanel.java
index ba622bf40bc7..96fadfa00b49 100644
--- a/xml/impl/src/com/intellij/application/options/HtmlCodeStyleMainPanel.java
+++ b/xml/impl/src/com/intellij/application/options/HtmlCodeStyleMainPanel.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -15,10 +15,8 @@
*/
package com.intellij.application.options;
-import com.intellij.lang.Language;
import com.intellij.lang.html.HTMLLanguage;
import com.intellij.psi.codeStyle.CodeStyleSettings;
-import org.jetbrains.annotations.Nullable;
/**
* @author Rustam Vishnyakov
diff --git a/xml/impl/src/com/intellij/application/options/HtmlCodeStyleSettingsProvider.java b/xml/impl/src/com/intellij/application/options/HtmlCodeStyleSettingsProvider.java
index 0d2edf5d4f4d..9593c4626ee1 100644
--- a/xml/impl/src/com/intellij/application/options/HtmlCodeStyleSettingsProvider.java
+++ b/xml/impl/src/com/intellij/application/options/HtmlCodeStyleSettingsProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,13 +25,16 @@ import org.jetbrains.annotations.NotNull;
* @author yole
*/
public class HtmlCodeStyleSettingsProvider extends CodeStyleSettingsProvider {
+ @Override
@NotNull
public Configurable createSettingsPage(final CodeStyleSettings settings, final CodeStyleSettings originalSettings) {
return new CodeStyleAbstractConfigurable(settings, originalSettings, ApplicationBundle.message("title.html")) {
+ @Override
protected CodeStyleAbstractPanel createPanel(final CodeStyleSettings settings) {
return new HtmlCodeStyleMainPanel(settings, originalSettings);
}
+ @Override
public String getHelpTopic() {
return "reference.settingsdialog.IDE.globalcodestyle.html";
}
diff --git a/xml/impl/src/com/intellij/application/options/TagListDialog.java b/xml/impl/src/com/intellij/application/options/TagListDialog.java
index 9cdb941078a1..22389c12e55a 100644
--- a/xml/impl/src/com/intellij/application/options/TagListDialog.java
+++ b/xml/impl/src/com/intellij/application/options/TagListDialog.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -88,10 +88,12 @@ public class TagListDialog extends DialogWrapper {
return myData;
}
+ @Override
protected JComponent createCenterPanel() {
return myPanel;
}
+ @Override
public JComponent getPreferredFocusedComponent() {
return myList;
}
diff --git a/xml/impl/src/com/intellij/application/options/XmlAutoImportOptionsProvider.java b/xml/impl/src/com/intellij/application/options/XmlAutoImportOptionsProvider.java
index 23e708377e7b..2e56128a346f 100644
--- a/xml/impl/src/com/intellij/application/options/XmlAutoImportOptionsProvider.java
+++ b/xml/impl/src/com/intellij/application/options/XmlAutoImportOptionsProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,22 +28,27 @@ public class XmlAutoImportOptionsProvider implements AutoImportOptionsProvider {
private JPanel myPanel;
private JCheckBox myShowAutoImportPopups;
+ @Override
public JComponent createComponent() {
return myPanel;
}
+ @Override
public boolean isModified() {
return XmlSettings.getInstance().SHOW_XML_ADD_IMPORT_HINTS != myShowAutoImportPopups.isSelected();
}
+ @Override
public void apply() throws ConfigurationException {
XmlSettings.getInstance().SHOW_XML_ADD_IMPORT_HINTS = myShowAutoImportPopups.isSelected();
}
+ @Override
public void reset() {
myShowAutoImportPopups.setSelected(XmlSettings.getInstance().SHOW_XML_ADD_IMPORT_HINTS);
}
+ @Override
public void disposeUIResources() {
}
diff --git a/xml/impl/src/com/intellij/application/options/XmlCodeStyleSettingsProvider.java b/xml/impl/src/com/intellij/application/options/XmlCodeStyleSettingsProvider.java
index 62ae4f803b35..5a4ac56549d8 100644
--- a/xml/impl/src/com/intellij/application/options/XmlCodeStyleSettingsProvider.java
+++ b/xml/impl/src/com/intellij/application/options/XmlCodeStyleSettingsProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,13 +30,16 @@ public class XmlCodeStyleSettingsProvider extends CodeStyleSettingsProvider {
public static final String CONFIGURABLE_DISPLAY_NAME = ApplicationBundle.message("title.xml");
+ @Override
@NotNull
public Configurable createSettingsPage(final CodeStyleSettings settings, final CodeStyleSettings originalSettings) {
return new CodeStyleAbstractConfigurable(settings, originalSettings, ApplicationBundle.message("title.xml")){
+ @Override
protected CodeStyleAbstractPanel createPanel(final CodeStyleSettings settings) {
return new XmlCodeStyleMainPanel(getCurrentSettings(), settings);
}
+ @Override
public String getHelpTopic() {
return "reference.settingsdialog.IDE.globalcodestyle.xml";
}
diff --git a/xml/impl/src/com/intellij/application/options/XmlSettings.java b/xml/impl/src/com/intellij/application/options/XmlSettings.java
index 5dd5a46802a0..fef3c0e4ef8d 100644
--- a/xml/impl/src/com/intellij/application/options/XmlSettings.java
+++ b/xml/impl/src/com/intellij/application/options/XmlSettings.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,19 +42,23 @@ public class XmlSettings implements PersistentStateComponent<XmlSettings>, Expor
return ServiceManager.getService(XmlSettings.class);
}
+ @Override
public XmlSettings getState() {
return this;
}
+ @Override
public void loadState(final XmlSettings state) {
XmlSerializerUtil.copyBean(state, this);
}
+ @Override
@NotNull
public File[] getExportFiles() {
return new File[]{PathManager.getOptionsFile("editor.codeinsight")};
}
+ @Override
@NotNull
public String getPresentableName() {
return XmlBundle.message("xml.settings");
diff --git a/xml/impl/src/com/intellij/application/options/editor/WebEditorOptionsProvider.java b/xml/impl/src/com/intellij/application/options/editor/WebEditorOptionsProvider.java
index 077d450468ef..1341f95acd16 100644
--- a/xml/impl/src/com/intellij/application/options/editor/WebEditorOptionsProvider.java
+++ b/xml/impl/src/com/intellij/application/options/editor/WebEditorOptionsProvider.java
@@ -35,18 +35,22 @@ public class WebEditorOptionsProvider implements EditorOptionsProvider {
private JBCheckBox myAddQuotasForAttributeValue;
+ @Override
public String getDisplayName() {
return XmlBundle.message("web.editor.configuration.title");
}
+ @Override
public String getHelpTopic() {
return null;
}
+ @Override
public JComponent createComponent() {
return myWholePanel;
}
+ @Override
public boolean isModified() {
final WebEditorOptions xmlEditorOptions = WebEditorOptions.getInstance();
return xmlEditorOptions.isAutomaticallyInsertClosingTag() != myAutomaticallyInsertClosingTagCheckBox.isSelected() ||
@@ -57,6 +61,7 @@ public class WebEditorOptionsProvider implements EditorOptionsProvider {
xmlEditorOptions.isInsertQuotesForAttributeValue() != myAddQuotasForAttributeValue.isSelected();
}
+ @Override
public void apply() throws ConfigurationException {
final WebEditorOptions xmlEditorOptions = WebEditorOptions.getInstance();
xmlEditorOptions.setAutomaticallyInsertClosingTag(myAutomaticallyInsertClosingTagCheckBox.isSelected());
@@ -67,6 +72,7 @@ public class WebEditorOptionsProvider implements EditorOptionsProvider {
xmlEditorOptions.setInsertQuotesForAttributeValue(myAddQuotasForAttributeValue.isSelected());
}
+ @Override
public void reset() {
final WebEditorOptions xmlEditorOptions = WebEditorOptions.getInstance();
myAutomaticallyInsertClosingTagCheckBox.setSelected(xmlEditorOptions.isAutomaticallyInsertClosingTag());
@@ -77,14 +83,17 @@ public class WebEditorOptionsProvider implements EditorOptionsProvider {
myAddQuotasForAttributeValue.setSelected(xmlEditorOptions.isInsertQuotesForAttributeValue());
}
+ @Override
public void disposeUIResources() {
}
+ @Override
@NotNull
public String getId() {
return "editor.preferences.webOptions";
}
+ @Override
public Runnable enableSearch(final String option) {
return null;
}
diff --git a/xml/impl/src/com/intellij/codeInsight/actions/GenerateDTDAction.java b/xml/impl/src/com/intellij/codeInsight/actions/GenerateDTDAction.java
index 0c9c6d70183d..c0930b4d9971 100644
--- a/xml/impl/src/com/intellij/codeInsight/actions/GenerateDTDAction.java
+++ b/xml/impl/src/com/intellij/codeInsight/actions/GenerateDTDAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -46,13 +46,15 @@ import org.jetbrains.annotations.Nullable;
*/
public class GenerateDTDAction extends BaseCodeInsightAction{
private static final Logger LOG = Logger.getInstance("#com.intellij.codeInsight.actions.GenerateDTDAction");
+ @Override
@NotNull
protected CodeInsightActionHandler getHandler(){
return new CodeInsightActionHandler(){
+ @Override
public void invoke(@NotNull Project project, @NotNull Editor editor, @NotNull PsiFile file) {
final XmlDocument document = findSuitableXmlDocument(file);
if (document != null) {
- final @NonNls StringBuffer buffer = new StringBuffer();
+ final @NonNls StringBuilder buffer = new StringBuilder();
buffer.append("<!DOCTYPE " + document.getRootTag().getName() + " [\n");
buffer.append(XmlUtil.generateDocumentDTD(document, true));
buffer.append("]>\n");
@@ -77,6 +79,7 @@ public class GenerateDTDAction extends BaseCodeInsightAction{
}
}
+ @Override
public boolean startInWriteAction(){
return true;
}
@@ -94,6 +97,7 @@ public class GenerateDTDAction extends BaseCodeInsightAction{
return null;
}
+ @Override
public void update(AnActionEvent event) {
super.update(event);
if (ActionPlaces.isPopupPlace(event.getPlace())) {
@@ -102,6 +106,7 @@ public class GenerateDTDAction extends BaseCodeInsightAction{
}
}
+ @Override
protected boolean isValidForFile(@NotNull Project project, @NotNull Editor editor, @NotNull PsiFile file){
return file.getLanguage() == XMLLanguage.INSTANCE && findSuitableXmlDocument(file) != null;
}
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/DtdCompletionData.java b/xml/impl/src/com/intellij/codeInsight/completion/DtdCompletionData.java
index cdc9649d85ab..6b07b1322c23 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/DtdCompletionData.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/DtdCompletionData.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -61,7 +61,7 @@ public class DtdCompletionData extends CompletionData {
new AndFilter(
new LeftNeighbour(
new OrFilter(
- new XmlTextFilter(new String[] {"#", "!", "(", ",", "|", "["}),
+ new XmlTextFilter("#", "!", "(", ",", "|", "["),
new XmlTokenTypeFilter(XmlTokenType.XML_NAME)
)
),
@@ -89,6 +89,7 @@ public class DtdCompletionData extends CompletionData {
}
}
+ @Override
public String findPrefix(PsiElement insertedElement, int offset) {
final PsiElement prevLeaf = PsiTreeUtil.prevLeaf(insertedElement);
final PsiElement prevPrevLeaf = prevLeaf != null ? PsiTreeUtil.prevLeaf(prevLeaf):null;
@@ -109,10 +110,12 @@ public class DtdCompletionData extends CompletionData {
static class DtdEntityGetter implements ContextGetter {
+ @Override
public Object[] get(final PsiElement context, CompletionContext completionContext) {
final List<String> results = new LinkedList<String>();
final PsiElementProcessor processor = new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlEntityDecl) {
final XmlEntityDecl xmlEntityDecl = (XmlEntityDecl)element;
@@ -130,6 +133,7 @@ public class DtdCompletionData extends CompletionData {
}
static class MyInsertHandler extends BasicInsertHandler {
+ @Override
public void handleInsert(InsertionContext context, LookupElement item) {
super.handleInsert(context, item);
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/ExtendedTagInsertHandler.java b/xml/impl/src/com/intellij/codeInsight/completion/ExtendedTagInsertHandler.java
index a96090b2ee28..cbcface40074 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/ExtendedTagInsertHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/ExtendedTagInsertHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -55,6 +55,7 @@ public class ExtendedTagInsertHandler extends XmlTagInsertHandler {
myNamespacePrefix = namespacePrefix;
}
+ @Override
public void handleInsert(final InsertionContext context, final LookupElement item) {
final XmlFile contextFile = (XmlFile)context.getFile();
@@ -81,6 +82,7 @@ public class ExtendedTagInsertHandler extends XmlTagInsertHandler {
final XmlNamespaceHelper.Runner<String, IncorrectOperationException> runAfter =
new XmlNamespaceHelper.Runner<String, IncorrectOperationException>() {
+ @Override
public void run(final String namespacePrefix) {
PsiDocumentManager.getInstance(project).commitDocument(document);
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/XHtmlCompletionData.java b/xml/impl/src/com/intellij/codeInsight/completion/XHtmlCompletionData.java
index c7ce4e63447f..546583b5c0c7 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/XHtmlCompletionData.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/XHtmlCompletionData.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,6 +23,7 @@ public class XHtmlCompletionData extends HtmlCompletionData {
super(false);
}
+ @Override
protected boolean isCaseInsensitive() {
return false;
}
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/XmlAttributeInsertHandler.java b/xml/impl/src/com/intellij/codeInsight/completion/XmlAttributeInsertHandler.java
index af533a782bdb..3e52b819c285 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/XmlAttributeInsertHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/XmlAttributeInsertHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -58,6 +58,7 @@ public class XmlAttributeInsertHandler implements InsertHandler<LookupElement> {
myNamespaceToInsert = namespaceToInsert;
}
+ @Override
public void handleInsert(final InsertionContext context, final LookupElement item) {
final Editor editor = context.getEditor();
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/XmlCharFilter.java b/xml/impl/src/com/intellij/codeInsight/completion/XmlCharFilter.java
index 9f099628a0cc..8f708b7805f3 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/XmlCharFilter.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/XmlCharFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -83,6 +83,7 @@ public class XmlCharFilter extends CharFilter {
return false;
}
+ @Override
public Result acceptChar(char c, final int prefixLength, final Lookup lookup) {
if (!isInXmlContext(lookup)) return null;
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionContributor.java b/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionContributor.java
index 453a825318ce..86a2155124dd 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionContributor.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionContributor.java
@@ -56,6 +56,7 @@ public class XmlCompletionContributor extends CompletionContributor {
@NonNls public static final String TAG_NAME_COMPLETION_FEATURE = "tag.name.completion";
private static final InsertHandlerDecorator<LookupElement> QUOTE_EATER = new InsertHandlerDecorator<LookupElement>() {
+ @Override
public void handleInsert(InsertionContext context, LookupElementDecorator<LookupElement> item) {
final char completionChar = context.getCompletionChar();
if (completionChar == '\'' || completionChar == '\"') {
@@ -95,6 +96,7 @@ public class XmlCompletionContributor extends CompletionContributor {
final Set<String> usedWords = new THashSet<String>();
final Ref<Boolean> addWordVariants = Ref.create(true);
result.runRemainingContributors(parameters, new Consumer<CompletionResult>() {
+ @Override
public void consume(CompletionResult r) {
if (r.getLookupElement().getUserData(WORD_COMPLETION_COMPATIBLE) == null) {
addWordVariants.set(false);
@@ -119,6 +121,7 @@ public class XmlCompletionContributor extends CompletionContributor {
return node != null && node.getElementType() == XmlTokenType.XML_NAME;
}
+ @Override
public void fillCompletionVariants(final CompletionParameters parameters, final CompletionResultSet result) {
super.fillCompletionVariants(parameters, result);
if (result.isStopped()) {
@@ -195,6 +198,7 @@ public class XmlCompletionContributor extends CompletionContributor {
return super.advertise(parameters);
}
+ @Override
public void beforeCompletion(@NotNull final CompletionInitializationContext context) {
final int offset = context.getStartOffset();
final PsiFile file = context.getFile();
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionData.java b/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionData.java
index 8446e8872b58..1ccfd07f2871 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionData.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/XmlCompletionData.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -87,6 +87,7 @@ public class XmlCompletionData extends CompletionData {
{
final CompletionVariant variant = new CompletionVariant(
new AndFilter(new XmlTokenTypeFilter(XmlTokenType.XML_DATA_CHARACTERS), new NotFilter(entityCompletionFilter), new ElementFilter() {
+ @Override
public boolean isAcceptable(Object element, PsiElement context) {
XmlTag tag = PsiTreeUtil.getParentOfType(context, XmlTag.class, false);
if (tag != null) {
@@ -95,6 +96,7 @@ public class XmlCompletionData extends CompletionData {
return false;
}
+ @Override
public boolean isClassAcceptable(Class hintClass) {
return true;
}
@@ -144,6 +146,7 @@ public class XmlCompletionData extends CompletionData {
}
private static class SimpleTagContentEnumerationValuesGetter implements ContextGetter {
+ @Override
public Object[] get(final PsiElement context, CompletionContext completionContext) {
XmlTag tag = PsiTreeUtil.getParentOfType(context, XmlTag.class, false);
if (tag != null) {
@@ -199,6 +202,7 @@ public class XmlCompletionData extends CompletionData {
return null;
}
+ @Override
public Object[] get(final PsiElement context, CompletionContext completionContext) {
XmlFile containingFile = null;
XmlFile descriptorFile = null;
@@ -236,6 +240,7 @@ public class XmlCompletionData extends CompletionData {
final boolean acceptSystemEntities = containingFile.getFileType() == StdFileTypes.XML;
final PsiElementProcessor processor = new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlEntityDecl) {
final XmlEntityDecl xmlEntityDecl = (XmlEntityDecl)element;
@@ -275,6 +280,7 @@ public class XmlCompletionData extends CompletionData {
}
protected static class EntityRefInsertHandler extends BasicInsertHandler {
+ @Override
public void handleInsert(InsertionContext context, LookupElement item) {
super.handleInsert(context, item);
context.setAddCompletionChar(false);
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/XmlSmartEnterProcessor.java b/xml/impl/src/com/intellij/codeInsight/completion/XmlSmartEnterProcessor.java
index 108ba0951aef..a819b65640f7 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/XmlSmartEnterProcessor.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/XmlSmartEnterProcessor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,7 @@ import org.jetbrains.annotations.Nullable;
public class XmlSmartEnterProcessor extends SmartEnterProcessor {
private static final Logger LOG = Logger.getInstance("#com.intellij.codeInsight.completion.XmlSmartEnterProcessor");
+ @Override
public boolean process(@NotNull final Project project, @NotNull final Editor editor, @NotNull final PsiFile psiFile) {
return completeEndTag(project, editor, psiFile);
}
diff --git a/xml/impl/src/com/intellij/codeInsight/completion/XmlTagInsertHandler.java b/xml/impl/src/com/intellij/codeInsight/completion/XmlTagInsertHandler.java
index 40b7db81ded8..aa983fc9bc5d 100644
--- a/xml/impl/src/com/intellij/codeInsight/completion/XmlTagInsertHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/completion/XmlTagInsertHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -57,6 +57,7 @@ public class XmlTagInsertHandler implements InsertHandler<LookupElement> {
public static final XmlTagInsertHandler INSTANCE = new XmlTagInsertHandler();
+ @Override
public void handleInsert(InsertionContext context, LookupElement item) {
Project project = context.getProject();
Editor editor = context.getEditor();
@@ -149,6 +150,7 @@ public class XmlTagInsertHandler implements InsertHandler<LookupElement> {
myAttrValueMarker = editor.getDocument().createRangeMarker(offset + 1, offset + 4);
}
+ @Override
public void templateFinished(final Template template, boolean brokenOff) {
final int offset = editor.getCaretModel().getOffset();
@@ -156,6 +158,7 @@ public class XmlTagInsertHandler implements InsertHandler<LookupElement> {
char c = editor.getDocument().getCharsSequence().charAt(offset - 3);
if (c == '/' || (c == ' ' && brokenOff)) {
new WriteCommandAction.Simple(project) {
+ @Override
protected void run() throws Throwable {
editor.getDocument().replaceString(offset - 2, offset + 1, ">");
}
@@ -164,6 +167,7 @@ public class XmlTagInsertHandler implements InsertHandler<LookupElement> {
}
}
+ @Override
public void templateCancelled(final Template template) {
if (myAttrValueMarker == null) {
return;
@@ -178,6 +182,7 @@ public class XmlTagInsertHandler implements InsertHandler<LookupElement> {
final int startOffset = myAttrValueMarker.getStartOffset();
final int endOffset = myAttrValueMarker.getEndOffset();
new WriteCommandAction.Simple(project) {
+ @Override
protected void run() throws Throwable {
editor.getDocument().replaceString(startOffset, endOffset, ">");
}
diff --git a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/AddSchemaPrefixIntention.java b/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/AddSchemaPrefixIntention.java
index 5ce032e24dfd..2cec8cacd6ce 100644
--- a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/AddSchemaPrefixIntention.java
+++ b/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/AddSchemaPrefixIntention.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -82,7 +82,7 @@ public class AddSchemaPrefixIntention extends PsiElementBaseIntentionAction {
final List<XmlAttributeValue> values = new ArrayList<XmlAttributeValue>();
new WriteCommandAction(project, NAME, tag.getContainingFile()) {
@Override
- protected void run(Result result) throws Throwable {
+ protected void run(@NotNull Result result) throws Throwable {
tag.accept(new XmlRecursiveElementVisitor() {
@Override
public void visitXmlTag(XmlTag tag) {
diff --git a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/InsertRequiredAttributeFix.java b/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/InsertRequiredAttributeFix.java
index 1a4a5842443d..ae3b12492881 100644
--- a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/InsertRequiredAttributeFix.java
+++ b/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/InsertRequiredAttributeFix.java
@@ -107,7 +107,7 @@ public class InsertRequiredAttributeFix extends LocalQuickFixAndIntentionActionO
}
Expression expression = new Expression() {
- TextResult result = new TextResult("");
+ final TextResult result = new TextResult("");
@Override
public Result calculateResult(ExpressionContext context) {
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/DtdSelectioner.java b/xml/impl/src/com/intellij/codeInsight/editorActions/DtdSelectioner.java
index b394bf953985..2e09e9715756 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/DtdSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/DtdSelectioner.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,10 +27,12 @@ import java.util.ArrayList;
import java.util.List;
public class DtdSelectioner extends ExtendWordSelectionHandlerBase {
+ @Override
public boolean canSelect(PsiElement e) {
return e instanceof XmlAttlistDecl || e instanceof XmlElementDecl;
}
+ @Override
public List<TextRange> select(PsiElement e, CharSequence editorText, int cursorOffset, Editor editor) {
PsiElement[] children = e.getChildren();
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/EnterBetweenXmlTagsHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/EnterBetweenXmlTagsHandler.java
index 9a3e9d64e954..96309e2bdb34 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/EnterBetweenXmlTagsHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/EnterBetweenXmlTagsHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,7 +18,6 @@ package com.intellij.codeInsight.editorActions;
import com.intellij.codeInsight.editorActions.enter.EnterHandlerDelegateAdapter;
import com.intellij.openapi.actionSystem.CommonDataKeys;
import com.intellij.openapi.actionSystem.DataContext;
-import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.editor.actionSystem.EditorActionHandler;
import com.intellij.openapi.editor.ex.EditorEx;
@@ -36,6 +35,7 @@ import com.intellij.psi.xml.XmlTokenType;
import org.jetbrains.annotations.NotNull;
public class EnterBetweenXmlTagsHandler extends EnterHandlerDelegateAdapter {
+ @Override
public Result preprocessEnter(@NotNull final PsiFile file, @NotNull final Editor editor, @NotNull final Ref<Integer> caretOffset, @NotNull final Ref<Integer> caretAdvance,
@NotNull final DataContext dataContext, final EditorActionHandler originalHandler) {
final Project project = CommonDataKeys.PROJECT.getData(dataContext);
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlQuoteHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlQuoteHandler.java
index 1c66926637de..7c3b19652d42 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlQuoteHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlQuoteHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -22,7 +22,7 @@ import com.intellij.openapi.editor.highlighter.HighlighterIterator;
* @author peter
*/
public class HtmlQuoteHandler implements QuoteHandler {
- private QuoteHandler myBaseQuoteHandler;
+ private final QuoteHandler myBaseQuoteHandler;
public HtmlQuoteHandler() {
this(new XmlQuoteHandler());
@@ -32,23 +32,27 @@ public class HtmlQuoteHandler implements QuoteHandler {
myBaseQuoteHandler = _baseHandler;
}
+ @Override
public boolean isClosingQuote(HighlighterIterator iterator, int offset) {
if (myBaseQuoteHandler.isClosingQuote(iterator, offset)) return true;
return false;
}
+ @Override
public boolean isOpeningQuote(HighlighterIterator iterator, int offset) {
if (myBaseQuoteHandler.isOpeningQuote(iterator, offset)) return true;
return false;
}
+ @Override
public boolean hasNonClosedLiteral(Editor editor, HighlighterIterator iterator, int offset) {
if (myBaseQuoteHandler.hasNonClosedLiteral(editor,iterator, offset)) return true;
return false;
}
+ @Override
public boolean isInsideLiteral(HighlighterIterator iterator) {
if (myBaseQuoteHandler.isInsideLiteral(iterator)) return true;
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlSelectioner.java b/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlSelectioner.java
index be9035661247..d9f7d5dd5e9f 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/HtmlSelectioner.java
@@ -56,6 +56,7 @@ public class HtmlSelectioner extends AbstractWordSelectioner {
};
private static final String CLASS_ATTRIBUTE_NAME = "class";
+ @Override
public boolean canSelect(PsiElement e) {
return canSelectElement(e);
}
@@ -67,6 +68,7 @@ public class HtmlSelectioner extends AbstractWordSelectioner {
return false;
}
+ @Override
public List<TextRange> select(PsiElement e, @NotNull CharSequence editorText, int cursorOffset, @NotNull Editor editor) {
List<TextRange> result;
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java
index 97cbbcef64c8..a3a6ec7a6a70 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ import com.intellij.psi.xml.XmlTag;
import com.intellij.xml.util.XmlUtil;
public class XmlAutoPopupHandler extends TypedHandlerDelegate {
+ @Override
public Result checkAutoPopup(final char charTyped, final Project project, final Editor editor, final PsiFile file) {
final boolean isXmlLikeFile = file.getLanguage() instanceof XMLLanguage || file.getViewProvider().getBaseLanguage() instanceof XMLLanguage;
boolean spaceInTag = isXmlLikeFile && charTyped == ' ';
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlBasicWordSelectionFilter.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlBasicWordSelectionFilter.java
index d17ddc0500f0..3874666d088f 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlBasicWordSelectionFilter.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlBasicWordSelectionFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,6 +24,7 @@ import com.intellij.psi.xml.XmlElement;
* @author yole
*/
public class XmlBasicWordSelectionFilter implements Condition<PsiElement> {
+ @Override
public boolean value(final PsiElement e) {
return !(e instanceof XmlToken) &&
!(e instanceof XmlElement);
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCDATAContentSelectioner.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCDATAContentSelectioner.java
index fe440e00a0d4..eda5c4f80a37 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCDATAContentSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCDATAContentSelectioner.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,11 +26,13 @@ import com.intellij.openapi.editor.Editor;
import java.util.List;
public class XmlCDATAContentSelectioner extends ExtendWordSelectionHandlerBase {
+ @Override
public boolean canSelect(PsiElement e) {
return e instanceof CompositePsiElement &&
((CompositePsiElement)e).getElementType() == XmlElementType.XML_CDATA;
}
+ @Override
public List<TextRange> select(PsiElement e, CharSequence editorText, int cursorOffset, Editor editor) {
List<TextRange> result = super.select(e, editorText, cursorOffset, editor);
PsiElement[] children = e.getChildren();
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCopyPastePreProcessor.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCopyPastePreProcessor.java
index 2d75db73ac92..fa2f9c276a40 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCopyPastePreProcessor.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlCopyPastePreProcessor.java
@@ -27,10 +27,7 @@ import com.intellij.psi.impl.source.tree.TreeUtil;
import com.intellij.psi.impl.source.xml.behavior.EncodeEachSymbolPolicy;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.util.PsiUtilCore;
-import com.intellij.psi.xml.XmlAttributeValue;
-import com.intellij.psi.xml.XmlElement;
-import com.intellij.psi.xml.XmlElementType;
-import com.intellij.psi.xml.XmlText;
+import com.intellij.psi.xml.*;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -41,11 +38,13 @@ public class XmlCopyPastePreProcessor implements CopyPastePreProcessor {
private static final EncodeEachSymbolPolicy ENCODE_EACH_SYMBOL_POLICY = new EncodeEachSymbolPolicy();
+ @Override
@Nullable
public String preprocessOnCopy(PsiFile file, int[] startOffsets, int[] endOffsets, String text) {
return null;
}
+ @Override
@NotNull
public String preprocessOnPaste(Project project, PsiFile file, Editor editor, String text, RawText rawText) {
final Document document = editor.getDocument();
@@ -57,8 +56,8 @@ public class XmlCopyPastePreProcessor implements CopyPastePreProcessor {
if (node != null) {
boolean hasMarkup = text.indexOf('>') >= 0 || text.indexOf('<') >= 0;
if (element.getTextOffset() == caretOffset &&
- node.getElementType() == XmlElementType.XML_END_TAG_START &&
- node.getTreePrev().getElementType() == XmlElementType.XML_TAG_END) {
+ node.getElementType() == XmlTokenType.XML_END_TAG_START &&
+ node.getTreePrev().getElementType() == XmlTokenType.XML_TAG_END) {
return hasMarkup ? text : encode(text, element);
} else {
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlElementSelectioner.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlElementSelectioner.java
index a0b512148e9e..2adc391c903a 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlElementSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlElementSelectioner.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,6 +20,7 @@ import com.intellij.psi.xml.XmlAttribute;
import com.intellij.psi.xml.XmlAttributeValue;
class XmlElementSelectioner extends ExtendWordSelectionHandlerBase {
+ @Override
public boolean canSelect(PsiElement e) {
return e instanceof XmlAttribute || e instanceof XmlAttributeValue;
}
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlEqTypedHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlEqTypedHandler.java
index 35080e98b9e5..43084679f455 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlEqTypedHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlEqTypedHandler.java
@@ -31,7 +31,7 @@ import org.jetbrains.annotations.NotNull;
import java.util.List;
public class XmlEqTypedHandler extends TypedHandlerDelegate {
- private List<Caret> caretsForInsertingQuotes = ContainerUtil.newSmartList();
+ private final List<Caret> caretsForInsertingQuotes = ContainerUtil.newSmartList();
@Override
public Result beforeCharTyped(char c, Project project, Editor editor, PsiFile file, FileType fileType) {
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlGtTypedHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlGtTypedHandler.java
index c50403033c04..2c0143ebeda6 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlGtTypedHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlGtTypedHandler.java
@@ -36,7 +36,6 @@ import com.intellij.psi.impl.source.xml.XmlTokenImpl;
import com.intellij.psi.templateLanguages.OuterLanguageElement;
import com.intellij.psi.templateLanguages.TemplateLanguageFileViewProvider;
import com.intellij.psi.tree.IElementType;
-import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.xml.*;
import com.intellij.util.IncorrectOperationException;
import com.intellij.util.containers.ContainerUtil;
@@ -51,6 +50,7 @@ import java.util.Collection;
public class XmlGtTypedHandler extends TypedHandlerDelegate {
private static final Logger LOG = Logger.getInstance("#com.intellij.codeInsight.editorActions.TypedHandler");
+ @Override
public Result beforeCharTyped(final char c, final Project project, Editor editor, PsiFile editedFile, final FileType fileType) {
final WebEditorOptions webEditorOptions = WebEditorOptions.getInstance();
if (c == '>' && webEditorOptions != null && webEditorOptions.isAutomaticallyInsertClosingTag() && fileContainsXmlLanguage(editedFile)) {
@@ -182,55 +182,24 @@ public class XmlGtTypedHandler extends TypedHandlerDelegate {
if (BraceMatchingUtil.matchBrace(editor.getDocument().getCharsSequence(), editedFile.getFileType(), iterator, true,true)) {
PsiElement parent = tag.getParent();
boolean hasBalance = true;
-
- while(parent instanceof XmlTag && name.equals(((XmlTag)parent).getName())) {
- ASTNode astNode = XmlChildRole.CLOSING_TAG_NAME_FINDER.findChild(parent.getNode());
- if (astNode == null) {
+ loop: while(parent instanceof XmlTag) {
+ if (name.equals(((XmlTag)parent).getName())) {
hasBalance = false;
- break;
- }
-
- parent = parent.getParent();
- }
-
- if (hasBalance) {
- hasBalance = false;
- for(ASTNode node=parent.getNode().getLastChildNode(); node != null; node = node.getTreePrev()) {
- ASTNode leaf = node;
- if (leaf.getElementType() == TokenType.ERROR_ELEMENT) {
- ASTNode firstChild = leaf.getFirstChildNode();
- if (firstChild != null) leaf = firstChild;
- else {
- PsiElement psiElement = PsiTreeUtil.nextLeaf(leaf.getPsi());
- leaf = psiElement != null ? psiElement.getNode() : null;
- }
- if (leaf != null && leaf.getElementType() == TokenType.WHITE_SPACE) {
- PsiElement psiElement = PsiTreeUtil.nextLeaf(leaf.getPsi());
- if (psiElement != null) leaf = psiElement.getNode();
- }
+ ASTNode astNode = XmlChildRole.CLOSING_TAG_NAME_FINDER.findChild(parent.getNode());
+ if (astNode == null) {
+ hasBalance = true;
+ break;
}
-
- if (leaf != null && leaf.getElementType() == XmlTokenType.XML_END_TAG_START) {
- ASTNode treeNext = leaf.getTreeNext();
- IElementType treeNextType;
- if (treeNext != null &&
- ((treeNextType = treeNext.getElementType()) == XmlTokenType.XML_NAME ||
- treeNextType == XmlTokenType.XML_TAG_NAME
- )
- ) {
- if (name.equals(treeNext.getText())) {
- ASTNode parentEndName = parent instanceof XmlTag ?
- XmlChildRole.CLOSING_TAG_NAME_FINDER.findChild(parent.getNode()):null;
- hasBalance = !(parent instanceof XmlTag) ||
- parentEndName != null && !parentEndName.getText().equals(name);
- break;
- }
+ for (PsiElement el = parent.getNextSibling(); el != null; el = el.getNextSibling()) {
+ if (el instanceof PsiErrorElement && el.getText().startsWith("</" + name)) {
+ hasBalance = true;
+ break loop;
}
}
}
+ parent = parent.getParent();
}
-
- if (hasBalance) return Result.CONTINUE;
+ if (hasBalance) return Result.CONTINUE;
}
Collection<TextRange> cdataReformatRanges = null;
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlLineSelectioner.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlLineSelectioner.java
index 76a25de71c55..4a11e842341b 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlLineSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlLineSelectioner.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ import java.util.List;
* @author yole
*/
public class XmlLineSelectioner extends ExtendWordSelectionHandlerBase {
+ @Override
public boolean canSelect(final PsiElement e) {
return e instanceof XmlToken && ((XmlToken)e).getTokenType() == XmlTokenType.XML_DATA_CHARACTERS;
}
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlQuoteHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlQuoteHandler.java
index 1f87de23ce01..b6a35a50dcb6 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlQuoteHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlQuoteHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,18 +23,22 @@ import com.intellij.psi.xml.XmlTokenType;
* @author peter
*/
public class XmlQuoteHandler implements QuoteHandler {
+ @Override
public boolean isClosingQuote(HighlighterIterator iterator, int offset) {
return iterator.getTokenType() == XmlTokenType.XML_ATTRIBUTE_VALUE_END_DELIMITER;
}
+ @Override
public boolean isOpeningQuote(HighlighterIterator iterator, int offset) {
return iterator.getTokenType() == XmlTokenType.XML_ATTRIBUTE_VALUE_START_DELIMITER;
}
+ @Override
public boolean hasNonClosedLiteral(Editor editor, HighlighterIterator iterator, int offset) {
return true;
}
+ @Override
public boolean isInsideLiteral(HighlighterIterator iterator) {
return false;
}
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlSlashTypedHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlSlashTypedHandler.java
index 051a75044e74..fbfc6df08044 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlSlashTypedHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlSlashTypedHandler.java
@@ -29,10 +29,12 @@ import com.intellij.psi.templateLanguages.OuterLanguageElement;
import com.intellij.psi.tree.IElementType;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.xml.*;
+import com.intellij.xml.util.XmlTagUtil;
import com.intellij.xml.util.XmlUtil;
import org.jetbrains.annotations.NotNull;
-public class XmlSlashTypedHandler extends TypedHandlerDelegate implements XmlTokenType {
+public class XmlSlashTypedHandler extends TypedHandlerDelegate {
+ @Override
public Result beforeCharTyped(final char c, final Project project, final Editor editor, final PsiFile editedFile, final FileType fileType) {
if ((editedFile.getLanguage() instanceof XMLLanguage || editedFile.getViewProvider().getBaseLanguage() instanceof XMLLanguage) && c == '/') {
PsiDocumentManager.getInstance(project).commitAllDocuments();
@@ -67,6 +69,7 @@ public class XmlSlashTypedHandler extends TypedHandlerDelegate implements XmlTok
return Result.CONTINUE;
}
+ @Override
public Result charTyped(final char c, final Project project, @NotNull final Editor editor, @NotNull final PsiFile editedFile) {
if ((editedFile.getLanguage() instanceof XMLLanguage || editedFile.getViewProvider().getBaseLanguage() instanceof XMLLanguage) && c == '/') {
PsiDocumentManager.getInstance(project).commitAllDocuments();
@@ -82,7 +85,7 @@ public class XmlSlashTypedHandler extends TypedHandlerDelegate implements XmlTok
ASTNode prevLeaf = element.getNode();
if (prevLeaf == null) return Result.CONTINUE;
final String prevLeafText = prevLeaf.getText();
- if ("</".equals(prevLeafText) && prevLeaf.getElementType() == XML_END_TAG_START) {
+ if ("</".equals(prevLeafText) && prevLeaf.getElementType() == XmlTokenType.XML_END_TAG_START) {
XmlTag tag = PsiTreeUtil.getParentOfType(element, XmlTag.class);
if (tag != null && StringUtil.isNotEmpty(tag.getName()) && TreeUtil.findSibling(prevLeaf, XmlTokenType.XML_NAME) == null) {
// check for template language like JSP
@@ -91,13 +94,13 @@ public class XmlSlashTypedHandler extends TypedHandlerDelegate implements XmlTok
if (element1 != null && element1.getText().startsWith("</")) {
// case of top-level jsp tag
XmlTag tag1 = PsiTreeUtil.getParentOfType(element1, XmlTag.class);
- if (tag1 != null && tag1 != tag && tag1.getTextOffset() > tag.getTextOffset()) {
+ if (shouldReplace(tag, tag1)) {
tag = tag1;
}
else {
// if we have enclosing jsp tag, actual tag to be completed will be previous sibling
tag1 = PsiTreeUtil.getPrevSiblingOfType(element1.getParent(), XmlTag.class);
- if (tag1 != null && tag1 != tag && tag1.getTextOffset() > tag.getTextOffset()) {
+ if (shouldReplace(tag, tag1)) {
tag = tag1;
}
}
@@ -135,4 +138,9 @@ public class XmlSlashTypedHandler extends TypedHandlerDelegate implements XmlTok
}
return Result.CONTINUE;
}
+
+ public boolean shouldReplace(XmlTag tag, XmlTag tag1) {
+ return tag1 != null && tag1 != tag && tag1.getTextOffset() > tag.getTextOffset() &&
+ XmlUtil.getTokenOfType(tag1, XmlTokenType.XML_EMPTY_ELEMENT_END) == null && XmlTagUtil.getEndTagNameElement(tag1) == null;
+ }
} \ No newline at end of file
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagSelectioner.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagSelectioner.java
index cc05ceae075b..8641ec81017b 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagSelectioner.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,10 +24,12 @@ import com.intellij.openapi.editor.Editor;
import java.util.List;
public class XmlTagSelectioner extends ExtendWordSelectionHandlerBase {
+ @Override
public boolean canSelect(PsiElement e) {
return e instanceof XmlTag;
}
+ @Override
public List<TextRange> select(PsiElement e, CharSequence editorText, int cursorOffset, Editor editor) {
List<TextRange> result = super.select(e, editorText, cursorOffset, editor);
PsiElement[] children = e.getChildren();
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTokenSelectioner.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTokenSelectioner.java
index c7e4b515aa29..76c72a5eff4c 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTokenSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTokenSelectioner.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,11 +25,13 @@ import java.util.List;
import java.util.ArrayList;
class XmlTokenSelectioner extends ExtendWordSelectionHandlerBase {
+ @Override
public boolean canSelect(PsiElement e) {
return e instanceof XmlToken &&
!HtmlSelectioner.canSelectElement(e);
}
+ @Override
public List<TextRange> select(PsiElement e, CharSequence editorText, int cursorOffset, Editor editor) {
XmlToken token = (XmlToken)e;
diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java b/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java
index da385b0112f6..a010c43e194e 100644
--- a/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java
+++ b/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@ import org.jetbrains.annotations.NotNull;
class XmlMover extends LineMover {
//private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.editor.actions.moveUpDown.XmlMover");
+ @Override
public boolean checkAvailable(@NotNull final Editor editor, @NotNull final PsiFile file, @NotNull final MoveInfo info, final boolean down) {
if (!(file instanceof XmlFile)) {
return false;
diff --git a/xml/impl/src/com/intellij/codeInsight/folding/impl/XmlElementSignatureProvider.java b/xml/impl/src/com/intellij/codeInsight/folding/impl/XmlElementSignatureProvider.java
index b9b576c35179..84289eb6a3f6 100644
--- a/xml/impl/src/com/intellij/codeInsight/folding/impl/XmlElementSignatureProvider.java
+++ b/xml/impl/src/com/intellij/codeInsight/folding/impl/XmlElementSignatureProvider.java
@@ -34,6 +34,7 @@ import java.util.StringTokenizer;
public class XmlElementSignatureProvider extends AbstractElementSignatureProvider {
private static final Logger LOG = Logger.getInstance("#com.intellij.codeInsight.folding.impl.XmlElementSignatureProvider");
+ @Override
public String getSignature(@NotNull PsiElement element) {
if (element instanceof XmlTag) {
XmlTag tag = (XmlTag)element;
diff --git a/xml/impl/src/com/intellij/codeInsight/hint/TagDeclarationRangeHandler.java b/xml/impl/src/com/intellij/codeInsight/hint/TagDeclarationRangeHandler.java
index 34fe453241d4..52a308d35c66 100644
--- a/xml/impl/src/com/intellij/codeInsight/hint/TagDeclarationRangeHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/hint/TagDeclarationRangeHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,6 +24,7 @@ import com.intellij.psi.xml.XmlToken;
import com.intellij.psi.xml.XmlTokenType;
public class TagDeclarationRangeHandler implements DeclarationRangeHandler {
+ @Override
@NotNull
public TextRange getDeclarationRange(@NotNull final PsiElement container) {
XmlTag xmlTag = (XmlTag)container;
diff --git a/xml/impl/src/com/intellij/codeInsight/hint/XmlImplementationTextSelectioner.java b/xml/impl/src/com/intellij/codeInsight/hint/XmlImplementationTextSelectioner.java
index 977a0dd6b8de..ada24ed0a1e8 100644
--- a/xml/impl/src/com/intellij/codeInsight/hint/XmlImplementationTextSelectioner.java
+++ b/xml/impl/src/com/intellij/codeInsight/hint/XmlImplementationTextSelectioner.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,10 +30,12 @@ import org.jetbrains.annotations.NotNull;
public class XmlImplementationTextSelectioner implements ImplementationTextSelectioner {
private static final Logger LOG = Logger.getInstance("#" + XmlImplementationTextSelectioner.class.getName());
+ @Override
public int getTextStartOffset(@NotNull final PsiElement parent) {
return parent.getTextRange().getStartOffset();
}
+ @Override
public int getTextEndOffset(@NotNull PsiElement element) {
if (element instanceof XmlAttributeValue) {
final XmlTag xmlTag = PsiTreeUtil.getParentOfType(element, XmlTag.class);// for convenience
diff --git a/xml/impl/src/com/intellij/codeInsight/hint/api/impls/XmlParameterInfoHandler.java b/xml/impl/src/com/intellij/codeInsight/hint/api/impls/XmlParameterInfoHandler.java
index 087943d56b33..62e7a2255681 100644
--- a/xml/impl/src/com/intellij/codeInsight/hint/api/impls/XmlParameterInfoHandler.java
+++ b/xml/impl/src/com/intellij/codeInsight/hint/api/impls/XmlParameterInfoHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -41,11 +41,13 @@ import java.util.Comparator;
*/
public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlElementDescriptor> {
private static final Comparator<XmlAttributeDescriptor> COMPARATOR = new Comparator<XmlAttributeDescriptor>() {
+ @Override
public int compare(final XmlAttributeDescriptor o1, final XmlAttributeDescriptor o2) {
return o1.getName().compareTo(o2.getName());
}
};
+ @Override
public Object[] getParametersForLookup(LookupElement item, ParameterInfoContext context) {
if (!(item instanceof MutableLookupElement)) return null;
final Object lookupItem = item.getObject();
@@ -53,6 +55,7 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
return null;
}
+ @Override
public Object[] getParametersForDocumentation(final XmlElementDescriptor p, final ParameterInfoContext context) {
return getSortedDescriptors(p);
}
@@ -63,10 +66,12 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
return xmlAttributeDescriptors;
}
+ @Override
public boolean couldShowInLookup() {
return true;
}
+ @Override
public XmlTag findElementForParameterInfo(@NotNull final CreateParameterInfoContext context) {
final XmlTag tag = findXmlTag(context.getFile(), context.getOffset());
final XmlElementDescriptor descriptor = tag != null ? tag.getDescriptor() : null;
@@ -80,10 +85,12 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
return tag;
}
+ @Override
public void showParameterInfo(final @NotNull XmlTag element, @NotNull final CreateParameterInfoContext context) {
context.showHint(element, element.getTextRange().getStartOffset() + 1, this);
}
+ @Override
public XmlTag findElementForUpdatingParameterInfo(@NotNull final UpdateParameterInfoContext context) {
final XmlTag tag = findXmlTag(context.getFile(), context.getOffset());
if (tag != null) {
@@ -94,6 +101,7 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
return null;
}
+ @Override
public void updateParameterInfo(@NotNull final XmlTag parameterOwner, @NotNull final UpdateParameterInfoContext context) {
if (context.getParameterOwner() == null || parameterOwner.equals(context.getParameterOwner())) {
context.setParameterOwner(parameterOwner);
@@ -102,10 +110,12 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
}
}
+ @Override
public String getParameterCloseChars() {
return null;
}
+ @Override
public boolean tracksParameterIndex() {
return false;
}
@@ -145,6 +155,7 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
return null;
}
+ @Override
public void updateUI(XmlElementDescriptor o, @NotNull final ParameterInfoUIContext context) {
updateElementDescriptor(
o,
@@ -152,8 +163,9 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
new Function<String, Boolean>() {
final XmlTag parameterOwner = (XmlTag)context.getParameterOwner();
+ @Override
public Boolean fun(String s) {
- return parameterOwner != null ? parameterOwner.getAttributeValue(s) != null:false;
+ return parameterOwner != null && parameterOwner.getAttributeValue(s) != null;
}
});
}
@@ -162,7 +174,7 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
Function<String, Boolean> attributePresentFun) {
final XmlAttributeDescriptor[] attributes = descriptor != null ? getSortedDescriptors(descriptor) : XmlAttributeDescriptor.EMPTY;
- StringBuffer buffer = new StringBuffer();
+ StringBuilder buffer = new StringBuilder();
int highlightStartOffset = -1;
int highlightEndOffset = -1;
@@ -170,9 +182,9 @@ public class XmlParameterInfoHandler implements ParameterInfoHandler<XmlTag,XmlE
buffer.append(CodeInsightBundle.message("xml.tag.info.no.attributes"));
}
else {
- StringBuffer text1 = new StringBuffer(" ");
- StringBuffer text2 = new StringBuffer(" ");
- StringBuffer text3 = new StringBuffer(" ");
+ StringBuilder text1 = new StringBuilder(" ");
+ StringBuilder text2 = new StringBuilder(" ");
+ StringBuilder text3 = new StringBuilder(" ");
for (XmlAttributeDescriptor attribute : attributes) {
if (Boolean.TRUE.equals(attributePresentFun.fun(attribute.getName()))) {
diff --git a/xml/impl/src/com/intellij/codeInsight/intentions/XmlChooseColorIntentionAction.java b/xml/impl/src/com/intellij/codeInsight/intentions/XmlChooseColorIntentionAction.java
index b8cc1801af96..1ebde34ec92c 100644
--- a/xml/impl/src/com/intellij/codeInsight/intentions/XmlChooseColorIntentionAction.java
+++ b/xml/impl/src/com/intellij/codeInsight/intentions/XmlChooseColorIntentionAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -47,11 +47,13 @@ public class XmlChooseColorIntentionAction extends PsiElementBaseIntentionAction
setText(CodeInsightBundle.message("intention.color.chooser.dialog"));
}
+ @Override
public boolean isAvailable(@NotNull final Project project, final Editor editor, @NotNull final PsiElement element) {
final PsiElement parent = element.getParent();
return parent instanceof XmlAttributeValue && ColorUtil.fromHex(((XmlAttributeValue)parent).getValue(), null) != null;
}
+ @Override
@NotNull
public String getFamilyName() {
return getText();
@@ -82,6 +84,7 @@ public class XmlChooseColorIntentionAction extends PsiElementBaseIntentionAction
final PsiManager manager = literal.getManager();
final XmlAttribute newAttribute = XmlElementFactory.getInstance(manager.getProject()).createXmlAttribute("name", newText);
final Runnable replaceRunnable = new Runnable() {
+ @Override
public void run() {
final XmlAttributeValue valueElement = newAttribute.getValueElement();
assert valueElement != null;
diff --git a/xml/impl/src/com/intellij/codeInsight/template/XmlDefaultLiveTemplatesProvider.java b/xml/impl/src/com/intellij/codeInsight/template/XmlDefaultLiveTemplatesProvider.java
index 9b13138bd37e..edb58e85634b 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/XmlDefaultLiveTemplatesProvider.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/XmlDefaultLiveTemplatesProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@ import com.intellij.codeInsight.template.impl.DefaultLiveTemplatesProvider;
* @author yole
*/
public class XmlDefaultLiveTemplatesProvider implements DefaultLiveTemplatesProvider {
+ @Override
public String[] getDefaultLiveTemplateFiles() {
return new String[] { "/liveTemplates/html_xml", "/liveTemplates/zen_html", "/liveTemplates/zen_xsl" };
}
diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/EmmetParser.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/EmmetParser.java
index b9fb54d3b31a..6bc71f9f8549 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/emmet/EmmetParser.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/EmmetParser.java
@@ -67,12 +67,11 @@ public abstract class EmmetParser {
}
final String filterSuffix = ((IdentifierToken)token).getText();
- if (!ZenCodingUtil.checkFilterSuffix(filterSuffix)) {
- return null;
+ if (ZenCodingUtil.checkFilterSuffix(filterSuffix)) {
+ result = new FilterNode(result, filterSuffix);
}
advance();
- result = new FilterNode(result, filterSuffix);
}
}
diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/XmlEmmetParser.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/XmlEmmetParser.java
index f3977a5bfebd..4ab715a404bf 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/emmet/XmlEmmetParser.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/XmlEmmetParser.java
@@ -263,10 +263,10 @@ public class XmlEmmetParser extends EmmetParser {
final List<Couple<String>> attrList = parseSelector();
if (attrList == null) {
if (classAttrPosition != -1) {
- result.set(classAttrPosition, Couple.newOne(CLASS, classAttrBuilder.toString()));
+ result.set(classAttrPosition, Couple.of(CLASS, classAttrBuilder.toString()));
}
if (idAttrPosition != -1) {
- result.set(idAttrPosition, Couple.newOne(ID, idAttrBuilder.toString()));
+ result.set(idAttrPosition, Couple.of(ID, idAttrBuilder.toString()));
}
return result;
}
@@ -320,7 +320,7 @@ public class XmlEmmetParser extends EmmetParser {
if (!value.isEmpty()) {
advance();
}
- return Collections.singletonList(Couple.newOne(name, value));
+ return Collections.singletonList(Couple.of(name, value));
}
return null;
@@ -369,7 +369,7 @@ public class XmlEmmetParser extends EmmetParser {
advance();
token = getToken();
if (token != ZenCodingTokens.EQ) {
- return Couple.newOne(name, "");
+ return Couple.of(name, "");
}
advance();
@@ -386,6 +386,6 @@ public class XmlEmmetParser extends EmmetParser {
}
while (token != null && token != ZenCodingTokens.CLOSING_SQ_BRACKET
&& token != ZenCodingTokens.SPACE && token != ZenCodingTokens.COMMA);
- return Couple.newOne(name, attrValueBuilder.toString());
+ return Couple.of(name, attrValueBuilder.toString());
}
}
diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java
index a4db758146fc..46d5a5640f53 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java
@@ -120,6 +120,7 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
return parse(key, callback, generator, null) != null;
}
+ @Override
public void expand(@NotNull String key, @NotNull CustomTemplateCallback callback) {
ZenCodingGenerator defaultGenerator = findApplicableDefaultGenerator(callback.getContext(), false);
assert defaultGenerator != null;
@@ -300,6 +301,7 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
return false;
}
+ @Override
public void wrap(@NotNull final String selection, @NotNull final CustomTemplateCallback callback) {
final TextFieldWithStoredHistory field = new TextFieldWithStoredHistory(EMMET_RECENT_WRAP_ABBREVIATIONS_KEY);
final Dimension fieldPreferredSize = field.getPreferredSize();
@@ -321,7 +323,7 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
});
field.addKeyboardListener(new KeyAdapter() {
@Override
- public void keyPressed(KeyEvent e) {
+ public void keyPressed(@NotNull KeyEvent e) {
if (!field.isPopupVisible()) {
switch (e.getKeyCode()) {
case KeyEvent.VK_ENTER:
@@ -396,6 +398,7 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
return checkTemplateKey(inputString, callback, generator);
}
+ @Override
public boolean isApplicable(PsiFile file, int offset, boolean wrapping) {
if (file == null) {
return false;
@@ -416,10 +419,13 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
final ZenCodingGenerator defaultGenerator = findApplicableDefaultGenerator(callback.getContext(), true);
assert defaultGenerator != null;
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
CommandProcessor.getInstance().executeCommand(callback.getProject(), new Runnable() {
+ @Override
public void run() {
callback.getEditor().getCaretModel().runForEachCaret(new CaretAction() {
+ @Override
public void perform(Caret caret) {
String selectedText = callback.getEditor().getSelectionModel().getSelectedText();
if (selectedText != null) {
@@ -443,21 +449,25 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
});
}
+ @Override
@NotNull
public String getTitle() {
return XmlBundle.message("emmet.title");
}
+ @Override
public char getShortcut() {
return (char)EmmetOptions.getInstance().getEmmetExpandShortcut();
}
+ @Override
public String computeTemplateKey(@NotNull CustomTemplateCallback callback) {
ZenCodingGenerator generator = findApplicableDefaultGenerator(callback.getContext(), false);
if (generator == null) return null;
return generator.computeTemplateKey(callback);
}
+ @Override
public boolean supportsWrapping() {
return true;
}
@@ -499,6 +509,8 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
}
}).isEmpty();
+ CompletionResultSet resultSet = result.withPrefixMatcher(result.getPrefixMatcher().cloneWithPrefix(templatePrefix));
+ resultSet.restartCompletionOnPrefixChange(StandardPatterns.string().startsWith(templatePrefix));
if (!regularTemplateWithSamePrefixExists) {
// exclude perfect matches with existing templates because LiveTemplateCompletionContributor handles it
final Collection<SingleLineEmmetFilter> extraFilters = ContainerUtil.newLinkedList(new SingleLineEmmetFilter());
@@ -508,9 +520,8 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase {
template.setKey(templatePrefix);
template.setDescription(template.getTemplateText());
- CompletionResultSet resultSet = result.withPrefixMatcher(result.getPrefixMatcher().cloneWithPrefix(templatePrefix));
- resultSet.restartCompletionOnPrefixChange(StandardPatterns.string().startsWith(templatePrefix));
- resultSet.addElement(new CustomLiveTemplateLookupElement(this, template.getKey(), template.getKey(), template.getDescription(), true, true));
+ resultSet.addElement(new CustomLiveTemplateLookupElement(this, template.getKey(), template.getKey(), template.getDescription(),
+ !LiveTemplateCompletionContributor.shouldShowAllTemplates(), true));
}
}
}
diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/filters/BemEmmetFilter.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/filters/BemEmmetFilter.java
index 5d91960b6f3e..64d097d54777 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/emmet/filters/BemEmmetFilter.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/filters/BemEmmetFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -123,7 +123,7 @@ public class BemEmmetFilter extends ZenCodingFilter {
return processClassName(className, node);
}
})));
- attribute2Value.add(Couple.newOne("class", CLASS_NAME_JOINER.join(newClassNames)));
+ attribute2Value.add(Couple.of("class", CLASS_NAME_JOINER.join(newClassNames)));
}
return node;
}
diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGenerator.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGenerator.java
index 6bcd6fd4e6cc..62e752312126 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGenerator.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGenerator.java
@@ -15,13 +15,20 @@
*/
package com.intellij.codeInsight.template.emmet.generators;
+import com.intellij.codeInsight.template.CustomTemplateCallback;
+import com.intellij.codeInsight.template.emmet.ZenCodingTemplate;
import com.intellij.codeInsight.template.emmet.tokens.TemplateToken;
import com.intellij.codeInsight.template.impl.TemplateImpl;
+import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.util.Couple;
+import com.intellij.openapi.util.TextRange;
+import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.PsiElement;
+import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.xml.XmlDocument;
import com.intellij.psi.xml.XmlFile;
import com.intellij.psi.xml.XmlTag;
+import com.intellij.psi.xml.XmlTokenType;
import com.intellij.xml.util.HtmlUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -36,7 +43,9 @@ public abstract class XmlZenCodingGenerator extends ZenCodingGenerator {
@Override
public TemplateImpl generateTemplate(@NotNull TemplateToken token, boolean hasChildren, @NotNull PsiElement context) {
String s = toString(token, hasChildren, context);
- TemplateImpl template = token.getTemplate().copy();
+ TemplateImpl tokenTemplate = token.getTemplate();
+ assert tokenTemplate != null;
+ TemplateImpl template = tokenTemplate.copy();
template.setString(s);
return template;
}
@@ -75,5 +84,31 @@ public abstract class XmlZenCodingGenerator extends ZenCodingGenerator {
int numberInIteration,
int totalIterations, @Nullable String surroundedText);
+ @Override
public abstract boolean isMyContext(@NotNull PsiElement context, boolean wrapping);
+
+ @Nullable
+ @Override
+ public String computeTemplateKey(@NotNull CustomTemplateCallback callback) {
+ Editor editor = callback.getEditor();
+ int currentOffset = editor.getCaretModel().getOffset();
+ int startOffset = editor.getDocument().getLineStartOffset(editor.getCaretModel().getLogicalPosition().line);
+
+ CharSequence documentText = editor.getDocument().getCharsSequence();
+ PsiElement prevVisibleLeaf = callback.getContext();
+ while (prevVisibleLeaf != null) {
+ TextRange textRange = prevVisibleLeaf.getTextRange();
+ if (textRange.getEndOffset() <= startOffset) {
+ break;
+ }
+ if (prevVisibleLeaf.getNode().getElementType() == XmlTokenType.XML_TAG_END) {
+ startOffset = textRange.getEndOffset();
+ break;
+ }
+ prevVisibleLeaf = PsiTreeUtil.prevVisibleLeaf(prevVisibleLeaf);
+ }
+
+ String key = computeKey(documentText.subSequence(startOffset, currentOffset));
+ return !StringUtil.isEmpty(key) && ZenCodingTemplate.checkTemplateKey(key, callback, this) ? key : null;
+ }
}
diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGeneratorImpl.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGeneratorImpl.java
index 1bf6998c245c..488247c883b0 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGeneratorImpl.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/XmlZenCodingGeneratorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -51,6 +51,7 @@ public class XmlZenCodingGeneratorImpl extends XmlZenCodingGenerator {
return type == StdFileTypes.XHTML || type == StdFileTypes.JSPX || type == StdFileTypes.XML;
}
+ @Override
@NotNull
public String toString(@NotNull XmlTag tag,
@NotNull List<Couple<String>> attribute2Value,
@@ -63,6 +64,7 @@ public class XmlZenCodingGeneratorImpl extends XmlZenCodingGenerator {
return tag.getContainingFile().getText();
}
+ @Override
@NotNull
public String buildAttributesString(@NotNull List<Couple<String>> attribute2value,
boolean hasChildren,
@@ -81,6 +83,7 @@ public class XmlZenCodingGeneratorImpl extends XmlZenCodingGenerator {
return result.toString();
}
+ @Override
public boolean isMyContext(@NotNull PsiElement context, boolean wrapping) {
return isMyLanguage(context.getLanguage()) && (wrapping || HtmlTextContextType.isInContext(context));
}
@@ -89,6 +92,7 @@ public class XmlZenCodingGeneratorImpl extends XmlZenCodingGenerator {
return language instanceof XMLLanguage;
}
+ @Override
public String getSuffix() {
return "html";
}
@@ -98,6 +102,7 @@ public class XmlZenCodingGeneratorImpl extends XmlZenCodingGenerator {
return EmmetOptions.getInstance().isEmmetEnabled();
}
+ @Override
public boolean isAppliedByDefault(@NotNull PsiElement context) {
return true;
}
@@ -131,6 +136,7 @@ public class XmlZenCodingGeneratorImpl extends XmlZenCodingGenerator {
final Document document = FileDocumentManager.getInstance().getDocument(file);
documentManager.doPostponedOperationsAndUnblockDocument(document);
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
document.replaceString(offset, tag.getTextRange().getEndOffset(), "/>");
documentManager.commitDocument(document);
diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java
index 4e1dbdf31d9b..c919eacc6a7f 100644
--- a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java
+++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java
@@ -25,12 +25,8 @@ import com.intellij.codeInsight.template.impl.TemplateImpl;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.extensions.ExtensionPointName;
import com.intellij.openapi.options.UnnamedConfigurable;
+import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.PsiElement;
-import com.intellij.psi.PsiErrorElement;
-import com.intellij.psi.PsiWhiteSpace;
-import com.intellij.psi.impl.source.tree.LeafPsiElement;
-import com.intellij.psi.tree.TokenSet;
-import com.intellij.psi.xml.XmlTokenType;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -43,9 +39,7 @@ import java.util.List;
* @author Eugene.Kudelevsky
*/
public abstract class ZenCodingGenerator {
- private static final ExtensionPointName<ZenCodingGenerator> EP_NAME =
- new ExtensionPointName<ZenCodingGenerator>("com.intellij.xml.zenCodingGenerator");
- private static final TokenSet VALID_LEAF_TYPES = TokenSet.create(XmlTokenType.XML_DATA_CHARACTERS, XmlTokenType.XML_CHAR_ENTITY_REF);
+ private static final ExtensionPointName<ZenCodingGenerator> EP_NAME = new ExtensionPointName<ZenCodingGenerator>("com.intellij.xml.zenCodingGenerator");
public abstract TemplateImpl generateTemplate(@NotNull TemplateToken token, boolean hasChildren, @NotNull PsiElement context);
@@ -75,96 +69,71 @@ public abstract class ZenCodingGenerator {
@Nullable
public String computeTemplateKey(@NotNull CustomTemplateCallback callback) {
Editor editor = callback.getEditor();
- final int currentOffset = editor.getCaretModel().getOffset();
- final CharSequence documentText = editor.getDocument().getCharsSequence();
- PsiElement element = callback.getContext();
- int line = editor.getCaretModel().getLogicalPosition().line;
- int lineStart = editor.getDocument().getLineStartOffset(line);
- int elementStart = -1;
- do {
- PsiElement e = element;
- while ((e instanceof LeafPsiElement && VALID_LEAF_TYPES.contains(((LeafPsiElement)e).getElementType())) ||
- e instanceof PsiWhiteSpace || e instanceof PsiErrorElement) {
- elementStart = e.getTextRange().getStartOffset();
- e = e.getPrevSibling();
- }
- if (elementStart >= 0) {
- int startOffset = Math.max(elementStart, lineStart);
- String key = computeKey(startOffset, currentOffset, documentText);
- if (key != null) {
- while (key.length() > 0 && !ZenCodingTemplate.checkTemplateKey(key, callback, this)) {
- key = key.substring(1);
- }
- if (key.length() > 0) {
- return key;
- }
- }
- }
- element = element.getParent();
- }
- while (element != null && elementStart > lineStart);
- return null;
+ int currentOffset = editor.getCaretModel().getOffset();
+ int startOffset = editor.getDocument().getLineStartOffset(editor.getCaretModel().getLogicalPosition().line);
+ String key = computeKey(editor.getDocument().getCharsSequence().subSequence(startOffset, currentOffset));
+ return !StringUtil.isEmpty(key) && ZenCodingTemplate.checkTemplateKey(key, callback, this) ? key : null;
}
-
+
@Nullable
- protected static String computeKey(int startOffset, int currentOffset, CharSequence documentText) {
- if (currentOffset < startOffset || startOffset > documentText.length() || currentOffset > documentText.length()) {
- return null;
- }
- String s = documentText.subSequence(startOffset, currentOffset).toString();
- int index = 0;
- while (index < s.length() && Character.isWhitespace(s.charAt(index))) {
- index++;
- }
- String key = s.substring(index);
- int lastWhitespaceIndex = -1;
- int lastQuoteIndex = -1;
- int lastApostropheIndex = -1;
- boolean inBrackets = false;
- int bracesStack = 0;
-
- for (int i = 0; i < key.length(); i++) {
- char c = key.charAt(i);
- if (lastQuoteIndex >= 0 || lastApostropheIndex >= 0) {
- if (c == '"') {
- lastQuoteIndex = -1;
- }
- else if (c == '\'') lastApostropheIndex = -1;
- }
- else if (Character.isWhitespace(c)) {
- lastWhitespaceIndex = i;
- }
- else if (c == '"') {
- lastQuoteIndex = i;
- }
- else if (c == '\'') {
- lastApostropheIndex = i;
+ protected String computeKey(@NotNull CharSequence text) {
+ int currentOffset = text.length();
+ int groupCount = 0;
+ int bracketCount = 0;
+ int textCount = 0;
+
+ while (currentOffset > 0) {
+ currentOffset--;
+ char c = text.charAt(currentOffset);
+
+ if (c == ']') {
+ bracketCount++;
}
else if (c == '[') {
- inBrackets = true;
+ if (bracketCount == 0) {
+ currentOffset++;
+ break;
+ }
+ bracketCount--;
}
- else if (c == ']' && inBrackets) {
- lastWhitespaceIndex = -1;
- inBrackets = false;
+ else if (c == '}') {
+ textCount++;
}
else if (c == '{') {
- bracesStack++;
+ if (textCount == 0) {
+ currentOffset++;
+ break;
+ }
+ textCount--;
+ }
+ else if (c == ')') {
+ groupCount++;
}
- else if (c == '}' && bracesStack > 0) {
- bracesStack--;
- if (bracesStack == 0) {
- lastWhitespaceIndex = -1;
+ else if (c == '(') {
+ if (groupCount == 0) {
+ currentOffset++;
+ break;
+ }
+ groupCount--;
+ }
+ else {
+ if (bracketCount > 0 || textCount > 0) {
+ // respect all characters inside attribute sets or text nodes
+ continue;
+ }
+ if (!isAllowedChar(c)) {
+ currentOffset++;
+ break;
}
}
}
- if (lastQuoteIndex >= 0 || lastApostropheIndex >= 0) {
- int max = Math.max(lastQuoteIndex, lastApostropheIndex);
- return max < key.length() - 1 ? key.substring(max) : null;
- }
- if (lastWhitespaceIndex >= 0 && lastWhitespaceIndex < key.length() - 1) {
- return key.substring(lastWhitespaceIndex + 1);
- }
- return key;
+ return groupCount == 0 && textCount == 0 && bracketCount == 0 && currentOffset >= 0 && currentOffset < text.length()
+ ? text.subSequence(currentOffset, text.length()).toString().replaceFirst("^[*+>^]+", "")
+ : null;
+ }
+
+ private static boolean isAllowedChar(char c) {
+ return (Character.isDigit(c) || Character.isLetter(c) || StringUtil.containsChar("/>+^[](){}#.*:$-_!@|%", c));
}
@NotNull
diff --git a/xml/impl/src/com/intellij/featureStatistics/XmlProductivityFeatureProvider.java b/xml/impl/src/com/intellij/featureStatistics/XmlProductivityFeatureProvider.java
index 78d44790d03b..0ded2bdb053a 100644
--- a/xml/impl/src/com/intellij/featureStatistics/XmlProductivityFeatureProvider.java
+++ b/xml/impl/src/com/intellij/featureStatistics/XmlProductivityFeatureProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,6 +24,7 @@ import java.util.Collections;
* @author Dmitry Avdeev
*/
public class XmlProductivityFeatureProvider extends ProductivityFeaturesProvider {
+ @Override
public FeatureDescriptor[] getFeatureDescriptors() {
return new FeatureDescriptor[] { new FeatureDescriptor(XmlCompletionContributor.TAG_NAME_COMPLETION_FEATURE,
"completion",
@@ -36,10 +37,12 @@ public class XmlProductivityFeatureProvider extends ProductivityFeaturesProvider
this)};
}
+ @Override
public GroupDescriptor[] getGroupDescriptors() {
return new GroupDescriptor[0];
}
+ @Override
public ApplicabilityFilter[] getApplicabilityFilters() {
return new ApplicabilityFilter[0];
}
diff --git a/xml/impl/src/com/intellij/html/HtmlLineMarkerProvider.java b/xml/impl/src/com/intellij/html/HtmlLineMarkerProvider.java
index a9c9a3324a34..1d6e5bdad35a 100644
--- a/xml/impl/src/com/intellij/html/HtmlLineMarkerProvider.java
+++ b/xml/impl/src/com/intellij/html/HtmlLineMarkerProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,6 +38,7 @@ import java.util.Map;
public class HtmlLineMarkerProvider implements LineMarkerProvider {
private final Map<Language, LineMarkerProvider> embeddedLanguagesLineMarkerProviders = new THashMap<Language, LineMarkerProvider>();
+ @Override
public LineMarkerInfo getLineMarkerInfo(@NotNull final PsiElement element) {
if (element instanceof PsiWhiteSpace) return null;
final Language language = element.getLanguage();
@@ -62,6 +63,7 @@ public class HtmlLineMarkerProvider implements LineMarkerProvider {
return markerProvider;
}
+ @Override
public void collectSlowLineMarkers(@NotNull final List<PsiElement> elements, @NotNull final Collection<LineMarkerInfo> result) {
Map<Language, LineMarkerProvider> localEmbeddedLanguagesLineMarkerProviders = null;
Map<LineMarkerProvider, List<PsiElement>> embeddedLineMarkersWorkItems = null;
diff --git a/xml/impl/src/com/intellij/javaee/EditLocationDialog.java b/xml/impl/src/com/intellij/javaee/EditLocationDialog.java
index a07d23213227..d8364019e85f 100644
--- a/xml/impl/src/com/intellij/javaee/EditLocationDialog.java
+++ b/xml/impl/src/com/intellij/javaee/EditLocationDialog.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,9 +18,9 @@ package com.intellij.javaee;
import com.intellij.openapi.fileChooser.FileChooser;
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
import com.intellij.openapi.project.Project;
+import com.intellij.openapi.ui.ComponentWithBrowseButton;
import com.intellij.openapi.ui.DialogWrapper;
import com.intellij.openapi.ui.FixedSizeButton;
-import com.intellij.openapi.ui.TextFieldWithBrowseButton;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.util.Consumer;
import com.intellij.xml.XmlBundle;
@@ -93,7 +93,7 @@ public class EditLocationDialog extends DialogWrapper {
new GridBagConstraints(1, 3, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 10, 5), 0, 0)
);
- TextFieldWithBrowseButton.MyDoClickAction.addTo(myBtnBrowseLocalPath, myTfPath);
+ ComponentWithBrowseButton.MyDoClickAction.addTo(myBtnBrowseLocalPath, myTfPath);
myBtnBrowseLocalPath.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ignored) {
diff --git a/xml/impl/src/com/intellij/javaee/ExternalResourceConfigurable.java b/xml/impl/src/com/intellij/javaee/ExternalResourceConfigurable.java
index 26d956a976cd..a0df2d24972b 100644
--- a/xml/impl/src/com/intellij/javaee/ExternalResourceConfigurable.java
+++ b/xml/impl/src/com/intellij/javaee/ExternalResourceConfigurable.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -64,27 +64,33 @@ public class ExternalResourceConfigurable extends BaseConfigurable
myNewPairs = newResources;
}
+ @Override
public String getDisplayName() {
return XmlBundle.message("display.name.edit.external.resource");
}
+ @Override
public JComponent createComponent() {
myPanel = new JPanel(new GridBagLayout()) {
+ @Override
public Dimension getPreferredSize() {
return new Dimension(-1, 400);
}
};
myExtPanel = new AddEditRemovePanel<NameLocationPair>(new ExtUrlsTableModel(), myPairs, XmlBundle.message("label.edit.external.resource.configure.external.resources")) {
+ @Override
protected NameLocationPair addItem() {
return addExtLocation();
}
+ @Override
protected boolean removeItem(NameLocationPair o) {
setModified(true);
return true;
}
+ @Override
protected NameLocationPair editItem(NameLocationPair o) {
return editExtLocation(o);
}
@@ -100,20 +106,24 @@ public class ExternalResourceConfigurable extends BaseConfigurable
}
table.getModel().addTableModelListener(new TableModelListener() {
+ @Override
public void tableChanged(TableModelEvent e) {
setModified(true);
}
});
myIgnorePanel = new AddEditRemovePanel<String>(new IgnoredUrlsModel(), myIgnoredUrls, XmlBundle.message("label.edit.external.resource.configure.ignored.resources")) {
+ @Override
protected String addItem() {
return addIgnoreLocation();
}
+ @Override
protected boolean removeItem(String o) {
setModified(true);
return true;
}
+ @Override
protected String editItem(String o) {
return editIgnoreLocation(o);
}
@@ -149,8 +159,10 @@ public class ExternalResourceConfigurable extends BaseConfigurable
return myPanel;
}
+ @Override
public void apply() {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
ExternalResourceManagerEx manager = ExternalResourceManagerEx.getInstanceEx();
@@ -183,6 +195,7 @@ public class ExternalResourceConfigurable extends BaseConfigurable
setModified(false);
}
+ @Override
public void reset() {
myPairs = new ArrayList<NameLocationPair>(myNewPairs);
@@ -230,6 +243,7 @@ public class ExternalResourceConfigurable extends BaseConfigurable
setModified(!myNewPairs.isEmpty());
}
+ @Override
public void disposeUIResources() {
myPanel = null;
myExtPanel = null;
@@ -237,6 +251,7 @@ public class ExternalResourceConfigurable extends BaseConfigurable
myHtmlLanguageLevelForm = null;
}
+ @Override
public String getHelpTopic() {
return "preferences.externalResources";
}
@@ -282,6 +297,7 @@ public class ExternalResourceConfigurable extends BaseConfigurable
}
private static class PathRenderer extends DefaultTableCellRenderer {
+ @Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
final Component rendererComponent = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if (value != null) {
@@ -304,26 +320,32 @@ public class ExternalResourceConfigurable extends BaseConfigurable
private static class IgnoredUrlsModel extends AddEditRemovePanel.TableModel<String> {
private final String[] myNames = {XmlBundle.message("column.name.edit.external.resource.uri")};
+ @Override
public int getColumnCount() {
return myNames.length;
}
+ @Override
public Object getField(String o, int columnIndex) {
return o;
}
+ @Override
public Class getColumnClass(int columnIndex) {
return String.class;
}
+ @Override
public boolean isEditable(int column) {
return false;
}
+ @Override
public void setValue(Object aValue, String data, int columnIndex) {
}
+ @Override
public String getColumnName(int column) {
return myNames[column];
}
@@ -342,10 +364,12 @@ public class ExternalResourceConfigurable extends BaseConfigurable
myNames = ArrayUtil.toStringArray(names);
}
+ @Override
public int getColumnCount() {
return myNames.length;
}
+ @Override
public Object getField(NameLocationPair pair, int columnIndex) {
switch (columnIndex) {
case 0:
@@ -359,18 +383,22 @@ public class ExternalResourceConfigurable extends BaseConfigurable
return "";
}
+ @Override
public Class getColumnClass(int columnIndex) {
return columnIndex == 2 ? Boolean.class : String.class;
}
+ @Override
public boolean isEditable(int column) {
return column == 2;
}
+ @Override
public void setValue(Object aValue, NameLocationPair data, int columnIndex) {
data.myShared = !((Boolean)aValue).booleanValue();
}
+ @Override
public String getColumnName(int column) {
return myNames[column];
}
diff --git a/xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java b/xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java
deleted file mode 100644
index 8606e11e899c..000000000000
--- a/xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2000-2012 JetBrains s.r.o.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.intellij.javaee;
-
-import com.intellij.application.options.PathMacrosImpl;
-import com.intellij.openapi.components.ServiceManager;
-import com.intellij.openapi.components.State;
-import com.intellij.openapi.components.Storage;
-import com.intellij.openapi.components.StoragePathMacros;
-import com.intellij.openapi.project.Project;
-import com.intellij.openapi.util.JDOMExternalizable;
-import com.intellij.openapi.util.NotNullLazyKey;
-
-/**
- * @author mike
- */
-@State(name = "ExternalResourceManagerImpl",
- storages = {@Storage( file = StoragePathMacros.APP_CONFIG + "/other.xml")})
-public class ExternalResourceManagerImpl extends ExternalResourceManagerExImpl implements JDOMExternalizable {
- public ExternalResourceManagerImpl(PathMacrosImpl pathMacros) {
- super(pathMacros);
- }
-
- private static final NotNullLazyKey<ProjectResources, Project> INSTANCE_CACHE = ServiceManager.createLazyKey(ProjectResources.class);
-
- @Override
- protected ExternalResourceManagerExImpl getProjectResources(Project project) {
- return INSTANCE_CACHE.getValue(project);
- }
-}
diff --git a/xml/impl/src/com/intellij/javaee/ExternalResourcesRootsProvider.java b/xml/impl/src/com/intellij/javaee/ExternalResourcesRootsProvider.java
index ddfcd6597cc0..5dc52269d396 100644
--- a/xml/impl/src/com/intellij/javaee/ExternalResourcesRootsProvider.java
+++ b/xml/impl/src/com/intellij/javaee/ExternalResourcesRootsProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,13 +38,13 @@ public class ExternalResourcesRootsProvider extends IndexableSetContributor {
@NotNull
@Override
protected Set<String> compute() {
- ExternalResourceManagerImpl manager = (ExternalResourceManagerImpl)ExternalResourceManager.getInstance();
- Collection<Map<String,ExternalResourceManagerImpl.Resource>> resources = manager.getStandardResources();
- Set<ExternalResourceManagerImpl.Resource> dirs = new HashSet<ExternalResourceManagerImpl.Resource>();
+ ExternalResourceManagerExImpl manager = (ExternalResourceManagerExImpl)ExternalResourceManager.getInstance();
+ Collection<Map<String, ExternalResourceManagerExImpl.Resource>> resources = manager.getStandardResources();
+ Set<ExternalResourceManagerExImpl.Resource> dirs = new HashSet<ExternalResourceManagerExImpl.Resource>();
Set<String> set = new HashSet<String>();
- for (Map<String, ExternalResourceManagerImpl.Resource> map : resources) {
- for (ExternalResourceManagerImpl.Resource resource : map.values()) {
- ExternalResourceManagerImpl.Resource dir = new ExternalResourceManagerImpl.Resource(
+ for (Map<String, ExternalResourceManagerExImpl.Resource> map : resources) {
+ for (ExternalResourceManagerExImpl.Resource resource : map.values()) {
+ ExternalResourceManagerExImpl.Resource dir = new ExternalResourceManagerExImpl.Resource(
resource.directoryName(), resource);
if (dirs.add(dir)) {
@@ -59,6 +59,7 @@ public class ExternalResourcesRootsProvider extends IndexableSetContributor {
}
};
+ @Override
public Set<VirtualFile> getAdditionalRootsToIndex() {
HashSet<VirtualFile> roots = new HashSet<VirtualFile>();
diff --git a/xml/impl/src/com/intellij/javaee/MapExternalResourceDialog.java b/xml/impl/src/com/intellij/javaee/MapExternalResourceDialog.java
index 617f5a9bb814..e09101ab5cbe 100644
--- a/xml/impl/src/com/intellij/javaee/MapExternalResourceDialog.java
+++ b/xml/impl/src/com/intellij/javaee/MapExternalResourceDialog.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,7 +28,7 @@ import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.DialogWrapper;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
-import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiManager;
@@ -163,7 +163,7 @@ public class MapExternalResourceDialog extends DialogWrapper {
schema = XmlUtil.findNamespaceByLocation(file, uri);
}
else if (location != null) {
- VirtualFile virtualFile = VfsUtil.findRelativeFile(location, null);
+ VirtualFile virtualFile = VfsUtilCore.findRelativeFile(location, null);
if (virtualFile != null) {
schema = PsiManager.getInstance(project).findFile(virtualFile);
}
diff --git a/xml/impl/src/com/intellij/javaee/NameLocationPair.java b/xml/impl/src/com/intellij/javaee/NameLocationPair.java
index 724d2a557136..bd3dd4614c3f 100644
--- a/xml/impl/src/com/intellij/javaee/NameLocationPair.java
+++ b/xml/impl/src/com/intellij/javaee/NameLocationPair.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,8 +20,8 @@ package com.intellij.javaee;
* Date: 7/18/12
*/
public class NameLocationPair implements Comparable {
- String myName;
- String myLocation;
+ final String myName;
+ final String myLocation;
boolean myShared;
public NameLocationPair(String name, String location, boolean shared) {
@@ -30,6 +30,7 @@ public class NameLocationPair implements Comparable {
myShared = shared;
}
+ @Override
public int compareTo(Object o) {
return myName.compareTo(((NameLocationPair)o).myName);
}
diff --git a/xml/impl/src/com/intellij/javaee/PsiExternalResourceNotifier.java b/xml/impl/src/com/intellij/javaee/PsiExternalResourceNotifier.java
index 30fa2e2565bd..3f5559370e28 100644
--- a/xml/impl/src/com/intellij/javaee/PsiExternalResourceNotifier.java
+++ b/xml/impl/src/com/intellij/javaee/PsiExternalResourceNotifier.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,18 +40,21 @@ public class PsiExternalResourceNotifier extends AbstractProjectComponent {
final ExternalResourceListener myExternalResourceListener = new MyExternalResourceListener();
myExternalResourceManager.addExternalResourceListener(myExternalResourceListener);
Disposer.register(project, new Disposable() {
+ @Override
public void dispose() {
myExternalResourceManager.removeExternalResourceListener(myExternalResourceListener);
}
});
}
+ @Override
@NotNull
public String getComponentName() {
return "PsiExternalResourceNotifier";
}
private class MyExternalResourceListener implements ExternalResourceListener {
+ @Override
public void externalResourceChanged() {
myPsiManager.beforeChange(true);
myDaemonCodeAnalyzer.restart();
diff --git a/xml/impl/src/com/intellij/lang/html/HtmlFormattingModelBuilder.java b/xml/impl/src/com/intellij/lang/html/HtmlFormattingModelBuilder.java
index 1b004ecae08e..16259e895005 100644
--- a/xml/impl/src/com/intellij/lang/html/HtmlFormattingModelBuilder.java
+++ b/xml/impl/src/com/intellij/lang/html/HtmlFormattingModelBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@ import com.intellij.lang.xml.XmlFormattingModel;
import org.jetbrains.annotations.NotNull;
public class HtmlFormattingModelBuilder implements FormattingModelBuilder {
+ @Override
@NotNull
public FormattingModel createModel(final PsiElement element, final CodeStyleSettings settings) {
final PsiFile psiFile = element.getContainingFile();
@@ -44,6 +45,7 @@ public class HtmlFormattingModelBuilder implements FormattingModelBuilder {
documentModel);
}
+ @Override
public TextRange getRangeAffectingIndent(PsiFile file, int offset, ASTNode elementAtOffset) {
return null;
}
diff --git a/xml/impl/src/com/intellij/lang/xhtml/XhtmlFormattingModelBuilder.java b/xml/impl/src/com/intellij/lang/xhtml/XhtmlFormattingModelBuilder.java
index 769f7cc871bb..b1001fc0c4a7 100644
--- a/xml/impl/src/com/intellij/lang/xhtml/XhtmlFormattingModelBuilder.java
+++ b/xml/impl/src/com/intellij/lang/xhtml/XhtmlFormattingModelBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@ import com.intellij.lang.xml.XmlFormattingModel;
import org.jetbrains.annotations.NotNull;
public class XhtmlFormattingModelBuilder implements FormattingModelBuilder {
+ @Override
@NotNull
public FormattingModel createModel(final PsiElement element, final CodeStyleSettings settings) {
final PsiFile psiFile = element.getContainingFile();
@@ -45,6 +46,7 @@ public class XhtmlFormattingModelBuilder implements FormattingModelBuilder {
documentModel);
}
+ @Override
public TextRange getRangeAffectingIndent(PsiFile file, int offset, ASTNode elementAtOffset) {
return null;
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlAttributeValueRenameValidator.java b/xml/impl/src/com/intellij/lang/xml/XmlAttributeValueRenameValidator.java
index b0618e798a6d..4f8f104e241d 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlAttributeValueRenameValidator.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlAttributeValueRenameValidator.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,6 +29,7 @@ public class XmlAttributeValueRenameValidator implements RenameInputValidator {
return psiElement(XmlAttributeValue.class);
}
+ @Override
public boolean isInputValid(final String newName, final PsiElement element, final ProcessingContext context) {
return true;
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlElementRenameValidator.java b/xml/impl/src/com/intellij/lang/xml/XmlElementRenameValidator.java
index 332436691303..a37be99d6fb4 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlElementRenameValidator.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlElementRenameValidator.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,7 +16,7 @@
package com.intellij.lang.xml;
import com.intellij.patterns.ElementPattern;
-import com.intellij.patterns.PlatformPatterns;
+import com.intellij.patterns.StandardPatterns;
import com.intellij.patterns.XmlPatterns;
import com.intellij.psi.PsiElement;
import com.intellij.psi.xml.XmlAttributeDecl;
@@ -34,18 +34,19 @@ public class XmlElementRenameValidator implements RenameInputValidator {
public ElementPattern<? extends PsiElement> getPattern() {
return or(
XmlPatterns.xmlTag().withMetaData(
- or(PlatformPatterns.instanceOf(XmlElementDescriptor.class),
- PlatformPatterns.instanceOf(XmlAttributeDescriptor.class))
+ or(StandardPatterns.instanceOf(XmlElementDescriptor.class),
+ StandardPatterns.instanceOf(XmlAttributeDescriptor.class))
),
psiElement(XmlElementDecl.class),
psiElement(XmlAttributeDecl.class),
XmlPatterns.xmlTag().withDescriptor(
- or(PlatformPatterns.instanceOf(XmlElementDescriptor.class),
- PlatformPatterns.instanceOf(XmlAttributeDescriptor.class))
+ or(StandardPatterns.instanceOf(XmlElementDescriptor.class),
+ StandardPatterns.instanceOf(XmlAttributeDescriptor.class))
)
);
}
+ @Override
public boolean isInputValid(final String newName, final PsiElement element, final ProcessingContext context) {
return newName.trim().matches("([\\d\\w\\_\\.\\-]+:)?[\\d\\w\\_\\.\\-]+");
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlEnclosingTagUnwrapper.java b/xml/impl/src/com/intellij/lang/xml/XmlEnclosingTagUnwrapper.java
index 825f1684eb70..b40ca4b64f60 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlEnclosingTagUnwrapper.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlEnclosingTagUnwrapper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,21 +30,26 @@ import java.util.List;
import java.util.Collections;
public class XmlEnclosingTagUnwrapper implements Unwrapper {
+ @Override
public boolean isApplicableTo(PsiElement e) {
return true;
}
+ @Override
public void collectElementsToIgnore(PsiElement element, Set<PsiElement> result) {
}
+ @Override
public String getDescription(PsiElement e) {
return XmlBundle.message("unwrap.enclosing.tag.name.action.name", ((XmlTag)e).getName());
}
+ @Override
public PsiElement collectAffectedElements(PsiElement e, List<PsiElement> toExtract) {
return e;
}
+ @Override
public List<PsiElement> unwrap(Editor editor, PsiElement element) throws IncorrectOperationException {
final TextRange range = element.getTextRange();
final ASTNode startTagNameEnd = XmlChildRole.START_TAG_END_FINDER.findChild(element.getNode());
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlFormattingModel.java b/xml/impl/src/com/intellij/lang/xml/XmlFormattingModel.java
index 522a64557197..0bf523f5e343 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlFormattingModel.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlFormattingModel.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,7 +32,7 @@ import com.intellij.psi.formatter.FormattingDocumentModelImpl;
import com.intellij.psi.formatter.PsiBasedFormattingModel;
import com.intellij.psi.impl.source.tree.TreeUtil;
import com.intellij.psi.tree.IElementType;
-import com.intellij.psi.xml.XmlElementType;
+import com.intellij.psi.xml.XmlTokenType;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.Nullable;
@@ -49,10 +49,12 @@ public class XmlFormattingModel extends PsiBasedFormattingModel {
myProject = file.getProject();
}
+ @Override
public TextRange shiftIndentInsideRange(TextRange textRange, int shift) {
return shiftIndentInsideWithPsi(textRange, shift);
}
+ @Override
public void commitChanges() {
}
@@ -68,6 +70,7 @@ public class XmlFormattingModel extends PsiBasedFormattingModel {
return textRange;
}
+ @Override
protected String replaceWithPsiInLeaf(final TextRange textRange, String whiteSpace, ASTNode leafElement) {
if (!myCanModifyAllWhiteSpaces) {
if (leafElement.getElementType() == TokenType.WHITE_SPACE) return null;
@@ -91,7 +94,7 @@ public class XmlFormattingModel extends PsiBasedFormattingModel {
}
final @NonNls String cdataEndMarker = "]]>";
- if(type == XmlElementType.XML_CDATA_END && whiteSpace.indexOf(cdataEndMarker) == -1) {
+ if(type == XmlTokenType.XML_CDATA_END && whiteSpace.indexOf(cdataEndMarker) == -1) {
final ASTNode at = findElementAt(prevNode.getStartOffset());
if (at != null && at.getPsi() instanceof PsiWhiteSpace) {
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlFormattingModelBuilder.java b/xml/impl/src/com/intellij/lang/xml/XmlFormattingModelBuilder.java
index 8eaa97ede692..138a1bd7654d 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlFormattingModelBuilder.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlFormattingModelBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,6 +36,7 @@ import org.jetbrains.annotations.NotNull;
public class XmlFormattingModelBuilder implements FormattingModelBuilder {
+ @Override
@NotNull
public FormattingModel createModel(final PsiElement element, final CodeStyleSettings settings) {
final ASTNode root = TreeUtil.getFileElement((TreeElement)SourceTreeToPsiMap.psiElementToTree(element));
@@ -47,6 +48,7 @@ public class XmlFormattingModelBuilder implements FormattingModelBuilder {
return new XmlBlock(root, null, null, new XmlPolicy(settings, documentModel), null, null, false);
}
+ @Override
public TextRange getRangeAffectingIndent(PsiFile file, int offset, ASTNode elementAtOffset) {
return null;
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlSurroundDescriptor.java b/xml/impl/src/com/intellij/lang/xml/XmlSurroundDescriptor.java
index 1cce551e293d..3d9e1a8b5c0d 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlSurroundDescriptor.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlSurroundDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,6 +38,7 @@ import java.util.List;
* @author ven
*/
public class XmlSurroundDescriptor implements SurroundDescriptor {
+ @Override
@NotNull public PsiElement[] getElementsToSurround(PsiFile file, int startOffset, int endOffset) {
final Pair<XmlTagChild, XmlTagChild> childrenInRange = XmlUtil.findTagChildrenInRange(file, startOffset, endOffset);
if (childrenInRange == null) {
@@ -60,6 +61,7 @@ public class XmlSurroundDescriptor implements SurroundDescriptor {
return PsiUtilCore.toPsiElementArray(result);
}
+ @Override
@NotNull public Surrounder[] getSurrounders() {
return new Surrounder[0]; //everything is in live templates now
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlUnwrapDescriptor.java b/xml/impl/src/com/intellij/lang/xml/XmlUnwrapDescriptor.java
index deb51879cb77..1462e97c46d9 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlUnwrapDescriptor.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlUnwrapDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,6 +35,7 @@ import java.util.Comparator;
import java.util.List;
public class XmlUnwrapDescriptor implements UnwrapDescriptor {
+ @Override
public List<Pair<PsiElement, Unwrapper>> collectUnwrappers(Project project, Editor editor, PsiFile file) {
int offset = editor.getCaretModel().getOffset();
@@ -78,10 +79,12 @@ public class XmlUnwrapDescriptor implements UnwrapDescriptor {
return result;
}
+ @Override
public boolean showOptionsDialog() {
return true;
}
+ @Override
public boolean shouldTryToRestoreCaretPosition() {
return false;
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlWhiteSpaceFormattingStrategy.java b/xml/impl/src/com/intellij/lang/xml/XmlWhiteSpaceFormattingStrategy.java
index 10cab622cd93..2f8c47a710b1 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlWhiteSpaceFormattingStrategy.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlWhiteSpaceFormattingStrategy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -78,6 +78,7 @@ public class XmlWhiteSpaceFormattingStrategy extends WhiteSpaceFormattingStrateg
return false;
}
+ @Override
public boolean addWhitespace(@NotNull final ASTNode treePrev, @NotNull final LeafElement whiteSpaceElement) {
if (isInsideTagBody(treePrev)) {
addWhitespaceToTagBody(treePrev, whiteSpaceElement);
@@ -87,6 +88,7 @@ public class XmlWhiteSpaceFormattingStrategy extends WhiteSpaceFormattingStrateg
return false;
}
+ @Override
public boolean containsWhitespacesOnly(@NotNull final ASTNode node) {
return (node.getElementType() == XmlTokenType.XML_DATA_CHARACTERS) &&
node.getText().trim().length() == 0;
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlWordCompletionFilter.java b/xml/impl/src/com/intellij/lang/xml/XmlWordCompletionFilter.java
index 3fbd001cb180..7057ed4940d4 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlWordCompletionFilter.java
+++ b/xml/impl/src/com/intellij/lang/xml/XmlWordCompletionFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -19,8 +19,6 @@
*/
package com.intellij.lang.xml;
-import com.intellij.codeInsight.completion.CompletionProcess;
-import com.intellij.codeInsight.completion.CompletionService;
import com.intellij.lang.DefaultWordCompletionFilter;
import com.intellij.psi.tree.IElementType;
import com.intellij.psi.tree.TokenSet;
@@ -31,6 +29,7 @@ public class XmlWordCompletionFilter extends DefaultWordCompletionFilter {
private final static TokenSet ENABLED_TOKENS = TokenSet.create(XmlElementType.XML_CDATA,
XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN,
XmlTokenType.XML_DATA_CHARACTERS);
+ @Override
public boolean isWordCompletionEnabledIn(final IElementType element) {
return super.isWordCompletionEnabledIn(element) || ENABLED_TOKENS.contains(element);
}
diff --git a/xml/impl/src/com/intellij/openapi/options/colors/pages/HTMLColorsPage.java b/xml/impl/src/com/intellij/openapi/options/colors/pages/HTMLColorsPage.java
index 417fcf3b01db..5608faf95e7b 100644
--- a/xml/impl/src/com/intellij/openapi/options/colors/pages/HTMLColorsPage.java
+++ b/xml/impl/src/com/intellij/openapi/options/colors/pages/HTMLColorsPage.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -44,20 +44,24 @@ public class HTMLColorsPage implements ColorSettingsPage {
};
private static final String FULL_PRODUCT_NAME = ApplicationNamesInfo.getInstance().getFullProductName();
+ @Override
@NotNull
public String getDisplayName() {
return OptionsBundle.message("options.html.display.name");
}
+ @Override
public Icon getIcon() {
return StdFileTypes.HTML.getIcon();
}
+ @Override
@NotNull
public AttributesDescriptor[] getAttributeDescriptors() {
return ATTRS;
}
+ @Override
@NotNull
public ColorDescriptor[] getColorDescriptors() {
// todo: make preview for it
@@ -73,11 +77,13 @@ public class HTMLColorsPage implements ColorSettingsPage {
return colorDescriptors;
}
+ @Override
@NotNull
public SyntaxHighlighter getHighlighter() {
return new HtmlFileHighlighter();
}
+ @Override
@NotNull
public String getDemoText() {
return "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">\n" +
@@ -96,6 +102,7 @@ public class HTMLColorsPage implements ColorSettingsPage {
"</html>";
}
+ @Override
public Map<String, TextAttributesKey> getAdditionalHighlightingTagToDescriptorMap() {
return null;
}
diff --git a/xml/impl/src/com/intellij/openapi/options/colors/pages/XMLColorsPage.java b/xml/impl/src/com/intellij/openapi/options/colors/pages/XMLColorsPage.java
index 93098c1501e8..b774c8e9e82f 100644
--- a/xml/impl/src/com/intellij/openapi/options/colors/pages/XMLColorsPage.java
+++ b/xml/impl/src/com/intellij/openapi/options/colors/pages/XMLColorsPage.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -44,30 +44,36 @@ public class XMLColorsPage implements ColorSettingsPage {
new AttributesDescriptor(OptionsBundle.message("options.xml.attribute.descriptor.descriptor.entity,reference"), XmlHighlighterColors.XML_ENTITY_REFERENCE),
};
+ @Override
@NotNull
public String getDisplayName() {
return OptionsBundle.message("options.xml.display.name");
}
+ @Override
public Icon getIcon() {
return StdFileTypes.XML.getIcon();
}
+ @Override
@NotNull
public AttributesDescriptor[] getAttributeDescriptors() {
return ATTRS;
}
+ @Override
@NotNull
public ColorDescriptor[] getColorDescriptors() {
return ColorDescriptor.EMPTY_ARRAY;
}
+ @Override
@NotNull
public SyntaxHighlighter getHighlighter() {
return new XmlFileHighlighter();
}
+ @Override
@NotNull
public String getDemoText() {
return "<?xml version='1.0' encoding='ISO-8859-1' ?>\n" +
@@ -84,6 +90,7 @@ public class XMLColorsPage implements ColorSettingsPage {
"</index>";
}
+ @Override
public Map<String, TextAttributesKey> getAdditionalHighlightingTagToDescriptorMap() {
return ContainerUtil.newHashMap(Pair.create("np", XmlHighlighterColors.XML_NS_PREFIX),
Pair.create("bg", XmlHighlighterColors.XML_TAG));
diff --git a/xml/impl/src/com/intellij/psi/filters/getters/HtmlAttributeValueGetter.java b/xml/impl/src/com/intellij/psi/filters/getters/HtmlAttributeValueGetter.java
index ce0e500d7d96..ac0ac5705fa7 100644
--- a/xml/impl/src/com/intellij/psi/filters/getters/HtmlAttributeValueGetter.java
+++ b/xml/impl/src/com/intellij/psi/filters/getters/HtmlAttributeValueGetter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,6 +40,7 @@ public class HtmlAttributeValueGetter extends XmlAttributeValueGetter {
myCaseSensitive = _caseSensitive;
}
+ @Override
@Nullable
@NonNls
protected String[] addSpecificCompletions(final XmlAttribute attribute) {
diff --git a/xml/impl/src/com/intellij/psi/filters/getters/XmlAttributeValueGetter.java b/xml/impl/src/com/intellij/psi/filters/getters/XmlAttributeValueGetter.java
index 929162b3b01e..dd2ce2740ad6 100644
--- a/xml/impl/src/com/intellij/psi/filters/getters/XmlAttributeValueGetter.java
+++ b/xml/impl/src/com/intellij/psi/filters/getters/XmlAttributeValueGetter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,7 @@ import org.jetbrains.annotations.Nullable;
public class XmlAttributeValueGetter implements ContextGetter {
public XmlAttributeValueGetter() {}
+ @Override
public Object[] get(PsiElement context, CompletionContext completionContext) {
return getApplicableAttributeVariants(context);
}
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/AbstractSyntheticBlock.java b/xml/impl/src/com/intellij/psi/formatter/xml/AbstractSyntheticBlock.java
index b95867f2e232..39b5ae7fb072 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/AbstractSyntheticBlock.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/AbstractSyntheticBlock.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -81,14 +81,17 @@ public abstract class AbstractSyntheticBlock implements Block {
return myEndTreeNode.getElementType() == XmlTokenType.XML_TAG_END;
}
+ @Override
public Wrap getWrap() {
return null;
}
+ @Override
public Indent getIndent() {
return myIndent;
}
+ @Override
public Alignment getAlignment() {
return null;
}
@@ -153,6 +156,7 @@ public abstract class AbstractSyntheticBlock implements Block {
subBlocks.get(subBlocks.size() - 1).getTextRange().getEndOffset());
}
+ @Override
public boolean isIncomplete() {
return getSubBlocks().get(getSubBlocks().size() - 1).isIncomplete();
}
@@ -187,6 +191,7 @@ public abstract class AbstractSyntheticBlock implements Block {
return (myStartTreeNode == myEndTreeNode) && (myStartTreeNode instanceof OuterLanguageElement);
}
+ @Override
public boolean isLeaf() {
return false;
}
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/AbstractXmlBlock.java b/xml/impl/src/com/intellij/psi/formatter/xml/AbstractXmlBlock.java
index 1f8e2ef380ae..6e1b89912814 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/AbstractXmlBlock.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/AbstractXmlBlock.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,7 +43,7 @@ import java.util.List;
public abstract class AbstractXmlBlock extends AbstractBlock {
protected XmlFormattingPolicy myXmlFormattingPolicy;
- protected XmlInjectedLanguageBlockBuilder myInjectedBlockBuilder;
+ protected final XmlInjectedLanguageBlockBuilder myInjectedBlockBuilder;
private final boolean myPreserveSpace;
protected AbstractXmlBlock(final ASTNode node,
@@ -238,6 +238,7 @@ public abstract class AbstractXmlBlock extends AbstractBlock {
private static XmlTag[] collectSubTags(final XmlElement node) {
final List<XmlTag> result = new ArrayList<XmlTag>();
node.processElements(new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlTag) {
result.add((XmlTag)element);
@@ -292,6 +293,7 @@ public abstract class AbstractXmlBlock extends AbstractBlock {
} else if (child.getElementType() == XmlElementType.XML_DOCTYPE) {
result.add(
new XmlBlock(child, wrap, alignment, myXmlFormattingPolicy, indent, null, isPreserveSpace()) {
+ @Override
protected Wrap getDefaultWrap(final ASTNode node) {
final IElementType type = node.getElementType();
return type == XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN
@@ -406,6 +408,7 @@ public abstract class AbstractXmlBlock extends AbstractBlock {
return leaf;
}
+ @Override
public boolean isLeaf() {
return (isComment(myNode)) ||
myNode.getElementType() == TokenType.WHITE_SPACE ||
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/AnotherLanguageBlockWrapper.java b/xml/impl/src/com/intellij/psi/formatter/xml/AnotherLanguageBlockWrapper.java
index d33a2aa01f5c..207f8993fce7 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/AnotherLanguageBlockWrapper.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/AnotherLanguageBlockWrapper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -41,36 +41,44 @@ public class AnotherLanguageBlockWrapper extends AbstractXmlBlock{
myIndent = indent;
}
+ @Override
public Indent getIndent() {
return myIndent;
}
+ @Override
public boolean insertLineBreakBeforeTag() {
return false;
}
+ @Override
public boolean removeLineBreakBeforeTag() {
return false;
}
+ @Override
public boolean isTextElement() {
return true;
}
+ @Override
protected List<Block> buildChildren() {
return myInjectedBlock.getSubBlocks();
}
+ @Override
@NotNull
public TextRange getTextRange() {
return myInjectedBlock.getTextRange();
}
+ @Override
@Nullable
public Spacing getSpacing(Block child1, @NotNull Block child2) {
return myInjectedBlock.getSpacing(child1, child2);
}
+ @Override
@NotNull
public ChildAttributes getChildAttributes(final int newChildIndex) {
return myInjectedBlock.getChildAttributes(newChildIndex);
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/HtmlPolicy.java b/xml/impl/src/com/intellij/psi/formatter/xml/HtmlPolicy.java
index d8a865ef44e6..57e653828954 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/HtmlPolicy.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/HtmlPolicy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,7 +25,6 @@ import com.intellij.psi.codeStyle.CodeStyleSettings;
import com.intellij.psi.impl.source.SourceTreeToPsiMap;
import com.intellij.psi.impl.source.tree.LeafElement;
import com.intellij.psi.xml.XmlAttribute;
-import com.intellij.psi.xml.XmlElementType;
import com.intellij.psi.xml.XmlTag;
import com.intellij.psi.xml.XmlTokenType;
@@ -41,6 +40,7 @@ public class HtmlPolicy extends XmlFormattingPolicy {
mySettings = settings;
}
+ @Override
public boolean indentChildrenOf(final XmlTag parentTag) {
if (parentTag == null) {
return true;
@@ -77,6 +77,7 @@ public class HtmlPolicy extends XmlFormattingPolicy {
return myDocumentModel.getLineNumber(textRange.getEndOffset()) - myDocumentModel.getLineNumber(textRange.getStartOffset());
}
+ @Override
public boolean insertLineBreakBeforeTag(final XmlTag xmlTag) {
PsiElement prev = xmlTag.getPrevSibling();
if (prev == null) return false;
@@ -116,6 +117,7 @@ public class HtmlPolicy extends XmlFormattingPolicy {
return true;
}
+ @Override
public boolean removeLineBreakBeforeTag(final XmlTag xmlTag) {
return checkName(xmlTag, mySettings.HTML_ELEMENTS_TO_REMOVE_NEW_LINE_BEFORE);
}
@@ -139,14 +141,17 @@ public class HtmlPolicy extends XmlFormattingPolicy {
return splits;
}
+ @Override
public boolean keepWhiteSpacesInsideTag(final XmlTag tag) {
return checkName(tag, mySettings.HTML_KEEP_WHITESPACES_INSIDE) || "jsp:attribute".equals(tag.getName());
}
+ @Override
public WrapType getWrappingTypeForTagEnd(final XmlTag xmlTag) {
return shouldBeWrapped(xmlTag) ? WrapType.ALWAYS : WrapType.NORMAL;
}
+ @Override
public WrapType getWrappingTypeForTagBegin(final XmlTag tag) {
if (shouldBeWrapped(tag)) {
return WrapType.ALWAYS;
@@ -166,8 +171,7 @@ public class HtmlPolicy extends XmlFormattingPolicy {
private boolean hasInlineContentOnly(final XmlTag tag) {
final XmlTag[] tags = tag.getSubTags();
- for (int i = 0; i < tags.length; i++) {
- XmlTag xmlTag = tags[i];
+ for (XmlTag xmlTag : tags) {
if (!isInlineTag(xmlTag)) return false;
if (!hasInlineContentOnly(xmlTag)) return false;
}
@@ -183,46 +187,57 @@ public class HtmlPolicy extends XmlFormattingPolicy {
return false;
}
+ @Override
public boolean isTextElement(XmlTag tag) {
return isInlineTag(tag);
}
+ @Override
public int getTextWrap(final XmlTag tag) {
return mySettings.HTML_TEXT_WRAP;
}
+ @Override
public int getAttributesWrap() {
return mySettings.HTML_ATTRIBUTE_WRAP;
}
+ @Override
public boolean getShouldAlignAttributes() {
return mySettings.HTML_ALIGN_ATTRIBUTES;
}
+ @Override
public boolean getShouldAlignText() {
return mySettings.HTML_ALIGN_TEXT;
}
+ @Override
public boolean getShouldKeepWhiteSpaces() {
return mySettings.HTML_KEEP_WHITESPACES;
}
+ @Override
public boolean getShouldAddSpaceAroundEqualityInAttribute() {
return mySettings.HTML_SPACE_AROUND_EQUALITY_IN_ATTRINUTE;
}
+ @Override
public boolean getShouldAddSpaceAroundTagName() {
return mySettings.HTML_SPACE_AFTER_TAG_NAME;
}
+ @Override
public int getKeepBlankLines() {
return mySettings.HTML_KEEP_BLANK_LINES;
}
+ @Override
public boolean getShouldKeepLineBreaks() {
return mySettings.HTML_KEEP_LINE_BREAKS;
}
+ @Override
public boolean getShouldKeepLineBreaksInText() {
return mySettings.HTML_KEEP_LINE_BREAKS_IN_TEXT;
}
@@ -237,14 +252,17 @@ public class HtmlPolicy extends XmlFormattingPolicy {
return XmlCodeStyleSettings.WS_AROUND_CDATA_PRESERVE;
}
+ @Override
public CodeStyleSettings getSettings() {
return mySettings;
}
+ @Override
public boolean addSpaceIntoEmptyTag() {
return mySettings.HTML_SPACE_INSIDE_EMPTY_TAG;
}
+ @Override
public boolean shouldSaveSpacesBetweenTagAndText() {
return true;
}
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/ReadOnlyBlock.java b/xml/impl/src/com/intellij/psi/formatter/xml/ReadOnlyBlock.java
index 7898f77ff63a..3f67ad01f4e9 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/ReadOnlyBlock.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/ReadOnlyBlock.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,14 +31,17 @@ public class ReadOnlyBlock extends AbstractBlock {
super(node, null, null);
}
+ @Override
public Spacing getSpacing(Block child1, @NotNull Block child2) {
return null;
}
+ @Override
public boolean isLeaf() {
return true;
}
+ @Override
protected List<Block> buildChildren() {
return EMPTY;
}
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/SyntheticBlock.java b/xml/impl/src/com/intellij/psi/formatter/xml/SyntheticBlock.java
index 3a5ba30d9c78..159edca4b385 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/SyntheticBlock.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/SyntheticBlock.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,16 +39,19 @@ public class SyntheticBlock extends AbstractSyntheticBlock implements Block, Rea
myChildIndent = childIndent;
}
+ @Override
@NotNull
public TextRange getTextRange() {
return calculateTextRange(mySubBlocks);
}
+ @Override
@NotNull
public List<Block> getSubBlocks() {
return mySubBlocks;
}
+ @Override
public Spacing getSpacing(Block child1, @NotNull Block child2) {
if (child1 instanceof ReadOnlyBlock || child2 instanceof ReadOnlyBlock) {
return Spacing.getReadOnlySpacing();
@@ -213,6 +216,7 @@ public class SyntheticBlock extends AbstractSyntheticBlock implements Block, Rea
;
}
+ @Override
@NotNull
public ChildAttributes getChildAttributes(final int newChildIndex) {
if (isOuterLanguageBlock()) return ChildAttributes.DELEGATE_TO_NEXT_CHILD;
@@ -234,6 +238,7 @@ public class SyntheticBlock extends AbstractSyntheticBlock implements Block, Rea
return false;
}
+ @Override
public boolean isIncomplete() {
return getSubBlocks().get(getSubBlocks().size() - 1).isIncomplete();
}
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/XmlBlock.java b/xml/impl/src/com/intellij/psi/formatter/xml/XmlBlock.java
index b7f6c81418da..ff2b0170abc1 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/XmlBlock.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/XmlBlock.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -65,6 +65,7 @@ public class XmlBlock extends AbstractXmlBlock {
myTextRange = textRange;
}
+ @Override
@NotNull
public TextRange getTextRange() {
if (myTextRange != null && !(isCDATAStart() || isCDATAEnd())) {
@@ -75,6 +76,7 @@ public class XmlBlock extends AbstractXmlBlock {
}
}
+ @Override
protected List<Block> buildChildren() {
//
@@ -237,6 +239,7 @@ public class XmlBlock extends AbstractXmlBlock {
}
}
+ @Override
public Spacing getSpacing(Block child1, @NotNull Block child2) {
if (!(child1 instanceof AbstractBlock) || !(child2 instanceof AbstractBlock)) {
return null;
@@ -293,6 +296,7 @@ public class XmlBlock extends AbstractXmlBlock {
}
}
+ @Override
public Indent getIndent() {
if (myNode.getElementType() == XmlElementType.XML_PROLOG || myNode.getElementType() == XmlElementType.XML_DOCTYPE ||
SourceTreeToPsiMap.treeElementToPsi(myNode) instanceof XmlDocument) {
@@ -301,14 +305,17 @@ public class XmlBlock extends AbstractXmlBlock {
return myIndent;
}
+ @Override
public boolean insertLineBreakBeforeTag() {
return false;
}
+ @Override
public boolean removeLineBreakBeforeTag() {
return false;
}
+ @Override
public boolean isTextElement() {
return myNode.getElementType() == XmlElementType.XML_TEXT || myNode.getElementType() == XmlTokenType.XML_DATA_CHARACTERS ||
myNode.getElementType() == XmlTokenType.XML_CHAR_ENTITY_REF;
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/XmlPolicy.java b/xml/impl/src/com/intellij/psi/formatter/xml/XmlPolicy.java
index 22616aca2bbe..91cde788fd49 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/XmlPolicy.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/XmlPolicy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,10 +35,12 @@ public class XmlPolicy extends XmlFormattingPolicy{
myXmlSettings = settings.getCustomSettings(XmlCodeStyleSettings.class);
}
+ @Override
public boolean indentChildrenOf(final XmlTag parentTag) {
return !(parentTag.getFirstChild() instanceof PsiErrorElement);
}
+ @Override
public boolean insertLineBreakBeforeTag(final XmlTag xmlTag) {
return false;
}
@@ -58,64 +60,79 @@ public class XmlPolicy extends XmlFormattingPolicy{
return false;
}
+ @Override
public boolean removeLineBreakBeforeTag(final XmlTag xmlTag) {
return false;
}
+ @Override
public WrapType getWrappingTypeForTagEnd(final XmlTag xmlTag) {
return xmlTag.getSubTags().length > 0 ? WrapType.ALWAYS
: WrapType.NORMAL;
}
+ @Override
public WrapType getWrappingTypeForTagBegin(final XmlTag tag) {
final PsiElement element = tag.getNextSibling();
if (element instanceof XmlText && !(element.getFirstChild() instanceof PsiWhiteSpace) && tag.getSubTags().length == 0) return WrapType.NORMAL;
return WrapType.ALWAYS;
}
+ @Override
public boolean isTextElement(XmlTag tag) {
return false;
}
+ @Override
public boolean keepWhiteSpacesInsideTag(final XmlTag tag) {
return false;
}
+ @Override
public int getTextWrap(final XmlTag tag) {
return myXmlSettings.XML_TEXT_WRAP;
}
+ @Override
public int getAttributesWrap() {
return myXmlSettings.XML_ATTRIBUTE_WRAP;
}
+ @Override
public boolean getShouldAlignAttributes() {
return myXmlSettings.XML_ALIGN_ATTRIBUTES;
}
+ @Override
public boolean getShouldAlignText() {
return myXmlSettings.XML_ALIGN_TEXT;
}
+ @Override
public boolean getShouldKeepWhiteSpaces() {
return myXmlSettings.XML_KEEP_WHITESPACES;
}
+ @Override
public boolean getShouldAddSpaceAroundEqualityInAttribute() {
return myXmlSettings.XML_SPACE_AROUND_EQUALITY_IN_ATTRIBUTE;
}
+ @Override
public boolean getShouldAddSpaceAroundTagName() {
return myXmlSettings.XML_SPACE_AFTER_TAG_NAME;
}
+ @Override
public int getKeepBlankLines() {
return myXmlSettings.XML_KEEP_BLANK_LINES;
}
+ @Override
public boolean getShouldKeepLineBreaks() {
return myXmlSettings.XML_KEEP_LINE_BREAKS;
}
+ @Override
public boolean getShouldKeepLineBreaksInText() {
return myXmlSettings.XML_KEEP_LINE_BREAKS_IN_TEXT;
}
@@ -130,14 +147,17 @@ public class XmlPolicy extends XmlFormattingPolicy{
return myXmlSettings.XML_WHITE_SPACE_AROUND_CDATA;
}
+ @Override
public CodeStyleSettings getSettings() {
return mySettings;
}
+ @Override
public boolean addSpaceIntoEmptyTag() {
return myXmlSettings.XML_SPACE_INSIDE_EMPTY_TAG;
}
+ @Override
public boolean shouldSaveSpacesBetweenTagAndText() {
return false;
}
diff --git a/xml/impl/src/com/intellij/psi/formatter/xml/XmlTagBlock.java b/xml/impl/src/com/intellij/psi/formatter/xml/XmlTagBlock.java
index 5fcb7fb9dcb3..3884692f3566 100644
--- a/xml/impl/src/com/intellij/psi/formatter/xml/XmlTagBlock.java
+++ b/xml/impl/src/com/intellij/psi/formatter/xml/XmlTagBlock.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,6 +50,7 @@ public class XmlTagBlock extends AbstractXmlBlock{
myIndent = indent;
}
+ @Override
protected List<Block> buildChildren() {
ASTNode child = myNode.getFirstChildNode();
final Wrap attrWrap = Wrap.createWrap(getWrapType(myXmlFormattingPolicy.getAttributesWrap()), false);
@@ -135,6 +136,7 @@ public class XmlTagBlock extends AbstractXmlBlock{
return false;
}
+ @Override
@Nullable
protected
ASTNode processChild(List<Block> result, final ASTNode child, final Wrap wrap, final Alignment alignment, final Indent indent) {
@@ -161,6 +163,7 @@ public class XmlTagBlock extends AbstractXmlBlock{
: Indent.getNoneIndent();
}
+ @Override
public Indent getIndent() {
return myIndent;
}
@@ -175,7 +178,7 @@ public class XmlTagBlock extends AbstractXmlBlock{
final Alignment alignment
) {
while (child != null) {
- if (!XmlBlock.containsWhiteSpacesOnly(child) && child.getTextLength() > 0){
+ if (!AbstractXmlBlock.containsWhiteSpacesOnly(child) && child.getTextLength() > 0){
final Indent indent = getChildrenIndent();
child = processChild(list,child, wrap, alignment, indent);
if (child == null) return child;
@@ -204,6 +207,7 @@ public class XmlTagBlock extends AbstractXmlBlock{
return createSyntheticBlock(localResult, null);
}
+ @Override
public Spacing getSpacing(Block child1, @NotNull Block child2) {
if (isPreserveSpace()) return Spacing.getReadOnlySpacing();
if(child1 instanceof AbstractSyntheticBlock && child2 instanceof AbstractSyntheticBlock) {
@@ -292,14 +296,17 @@ public class XmlTagBlock extends AbstractXmlBlock{
}
}
+ @Override
public boolean insertLineBreakBeforeTag() {
return myXmlFormattingPolicy.insertLineBreakBeforeTag(getTag());
}
+ @Override
public boolean removeLineBreakBeforeTag() {
return myXmlFormattingPolicy.removeLineBreakBeforeTag(getTag());
}
+ @Override
public boolean isTextElement() {
return myXmlFormattingPolicy.isTextElement(getTag());
}
diff --git a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/HtmlIdIndexer.java b/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/HtmlIdIndexer.java
index 2fe8b09837ad..3686118ac246 100644
--- a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/HtmlIdIndexer.java
+++ b/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/HtmlIdIndexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -22,6 +22,7 @@ import com.intellij.psi.impl.cache.impl.OccurrenceConsumer;
import com.intellij.psi.impl.cache.impl.id.LexerBasedIdIndexer;
public class HtmlIdIndexer extends LexerBasedIdIndexer {
+ @Override
public Lexer createLexer(final OccurrenceConsumer consumer) {
return createIndexingLexer(consumer);
}
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/CreateXmlElementIntentionAction.java b/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/CreateXmlElementIntentionAction.java
index 6e93313b99d3..31933758fffd 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/CreateXmlElementIntentionAction.java
+++ b/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/CreateXmlElementIntentionAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -52,16 +52,19 @@ class CreateXmlElementIntentionAction implements IntentionAction {
myDeclarationTagName = declarationTagName;
}
+ @Override
@NotNull
public String getText() {
return XmlBundle.message(myMessageKey, XmlUtil.findLocalNameByQualifiedName(myRef.getCanonicalText()));
}
+ @Override
@NotNull
public String getFamilyName() {
return XmlBundle.message("xml.create.xml.declaration.intention.type");
}
+ @Override
public boolean isAvailable(@NotNull final Project project, final Editor editor, final PsiFile file) {
if (!myIsAvailableEvaluated) {
final XmlTag tag = PsiTreeUtil.getParentOfType(myRef.getElement(), XmlTag.class);
@@ -80,6 +83,7 @@ class CreateXmlElementIntentionAction implements IntentionAction {
return myTargetFile != null;
}
+ @Override
public void invoke(@NotNull final Project project, final Editor editor, final PsiFile file) throws IncorrectOperationException {
if (!FileModificationService.getInstance().prepareFileForWrite(file)) return;
@@ -113,6 +117,7 @@ class CreateXmlElementIntentionAction implements IntentionAction {
template.setToReformat(true);
}
+ @Override
public boolean startInWriteAction() {
return true;
}
diff --git a/xml/impl/src/com/intellij/refactoring/rename/RenameXmlAttributeProcessor.java b/xml/impl/src/com/intellij/refactoring/rename/RenameXmlAttributeProcessor.java
index 1f7885b4d913..3876031f1e48 100644
--- a/xml/impl/src/com/intellij/refactoring/rename/RenameXmlAttributeProcessor.java
+++ b/xml/impl/src/com/intellij/refactoring/rename/RenameXmlAttributeProcessor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,10 +35,12 @@ import org.jetbrains.annotations.Nullable;
public class RenameXmlAttributeProcessor extends RenamePsiElementProcessor {
private static final Logger LOG = Logger.getInstance("#com.intellij.refactoring.rename.RenameXmlAttributeProcessor");
+ @Override
public boolean canProcessElement(@NotNull final PsiElement element) {
return element instanceof XmlAttribute || element instanceof XmlAttributeValue;
}
+ @Override
public void renameElement(final PsiElement element,
final String newName,
final UsageInfo[] usages,
diff --git a/xml/impl/src/com/intellij/refactoring/util/XmlNonCodeSearchElementDescriptionProvider.java b/xml/impl/src/com/intellij/refactoring/util/XmlNonCodeSearchElementDescriptionProvider.java
index dac3df8c6943..5b631b5668b3 100644
--- a/xml/impl/src/com/intellij/refactoring/util/XmlNonCodeSearchElementDescriptionProvider.java
+++ b/xml/impl/src/com/intellij/refactoring/util/XmlNonCodeSearchElementDescriptionProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,13 +21,13 @@ import com.intellij.psi.PsiElement;
import com.intellij.psi.xml.XmlAttribute;
import com.intellij.psi.xml.XmlAttributeValue;
import com.intellij.psi.xml.XmlTag;
-import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.NotNull;
/**
* @author yole
*/
public class XmlNonCodeSearchElementDescriptionProvider implements ElementDescriptionProvider {
+ @Override
public String getElementDescription(@NotNull final PsiElement element, @NotNull final ElementDescriptionLocation location) {
if (!(location instanceof NonCodeSearchDescriptionLocation)) return null;
final NonCodeSearchDescriptionLocation ncdLocation = (NonCodeSearchDescriptionLocation)location;
diff --git a/xml/impl/src/com/intellij/vcsUtil/XmlVcsSelectionProvider.java b/xml/impl/src/com/intellij/vcsUtil/XmlVcsSelectionProvider.java
index 50b92791f962..b1094ba5bb45 100644
--- a/xml/impl/src/com/intellij/vcsUtil/XmlVcsSelectionProvider.java
+++ b/xml/impl/src/com/intellij/vcsUtil/XmlVcsSelectionProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ import com.intellij.psi.xml.XmlText;
* @author yole
*/
public class XmlVcsSelectionProvider implements VcsSelectionProvider {
+ @Override
public VcsSelection getSelection(VcsContext context) {
final Editor editor = context.getEditor();
if (editor == null) return null;
diff --git a/xml/impl/src/com/intellij/xml/DefaultXmlNamespaceHelper.java b/xml/impl/src/com/intellij/xml/DefaultXmlNamespaceHelper.java
index f0d62fc702bb..73c7d6dc85b9 100644
--- a/xml/impl/src/com/intellij/xml/DefaultXmlNamespaceHelper.java
+++ b/xml/impl/src/com/intellij/xml/DefaultXmlNamespaceHelper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,10 +42,12 @@ import java.util.*;
public class DefaultXmlNamespaceHelper extends XmlNamespaceHelper {
private static final Logger LOG = Logger.getInstance(DefaultXmlNamespaceHelper.class);
+ @Override
protected boolean isAvailable(PsiFile file) {
return true;
}
+ @Override
public void insertNamespaceDeclaration(@NotNull final XmlFile file,
@Nullable final Editor editor,
@NotNull final Set<String> possibleNamespaces,
@@ -160,6 +162,7 @@ public class DefaultXmlNamespaceHelper extends XmlNamespaceHelper {
return location;
}
+ @Override
@NotNull
public Set<String> guessUnboundNamespaces(@NotNull final PsiElement element, @NotNull XmlFile file) {
if (!(element instanceof XmlTag)) {
@@ -216,6 +219,7 @@ public class DefaultXmlNamespaceHelper extends XmlNamespaceHelper {
return possibleUris;
}
+ @Override
@NotNull
public Set<String> getNamespacesByTagName(@NotNull final String tagName, @NotNull final XmlFile context) {
final List<XmlSchemaProvider> providers = XmlSchemaProvider.getAvailableProviders(context);
diff --git a/xml/impl/src/com/intellij/xml/XmlFileTypeFactory.java b/xml/impl/src/com/intellij/xml/XmlFileTypeFactory.java
index fa5d933726e3..3000402d8ec7 100644
--- a/xml/impl/src/com/intellij/xml/XmlFileTypeFactory.java
+++ b/xml/impl/src/com/intellij/xml/XmlFileTypeFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,6 +29,7 @@ import org.jetbrains.annotations.NotNull;
* @author yole
*/
public class XmlFileTypeFactory extends FileTypeFactory {
+ @Override
public void createFileTypes(@NotNull final FileTypeConsumer consumer) {
consumer.consume(HtmlFileType.INSTANCE, "html;htm;sht;shtm;shtml");
consumer.consume(XHtmlFileType.INSTANCE, "xhtml");
diff --git a/xml/impl/src/com/intellij/xml/actions/validate/StdErrorReporter.java b/xml/impl/src/com/intellij/xml/actions/validate/StdErrorReporter.java
index eabb303b79d1..ac63a174ee57 100644
--- a/xml/impl/src/com/intellij/xml/actions/validate/StdErrorReporter.java
+++ b/xml/impl/src/com/intellij/xml/actions/validate/StdErrorReporter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,11 +50,14 @@ public class StdErrorReporter extends ErrorReporter {
myErrorsView = new NewErrorTreeViewPanel(project, null, true, true, rerunAction);
}
+ @Override
public void startProcessing() {
final Runnable task = new Runnable() {
+ @Override
public void run() {
try {
ApplicationManager.getApplication().runReadAction(new Runnable() {
+ @Override
public void run() {
StdErrorReporter.super.startProcessing();
}
@@ -62,10 +65,12 @@ public class StdErrorReporter extends ErrorReporter {
SwingUtilities.invokeLater(
new Runnable() {
+ @Override
public void run() {
if (!myErrorsDetected) {
SwingUtilities.invokeLater(
new Runnable() {
+ @Override
public void run() {
removeCompileContents(null);
WindowManager.getInstance().getStatusBar(myProject).setInfo(
@@ -79,7 +84,7 @@ public class StdErrorReporter extends ErrorReporter {
);
}
finally {
- boolean b = Thread.interrupted(); // reset interrupted
+ Thread.interrupted(); // reset interrupted
}
}
};
@@ -96,6 +101,7 @@ public class StdErrorReporter extends ErrorReporter {
CommandProcessor commandProcessor = CommandProcessor.getInstance();
commandProcessor.executeCommand(
myProject, new Runnable() {
+ @Override
public void run() {
MessageView messageView = MessageView.SERVICE.getInstance(myProject);
final Content content = ContentFactory.SERVICE.getInstance().createContent(myErrorsView.getComponent(), CONTENT_NAME, true);
@@ -127,6 +133,7 @@ public class StdErrorReporter extends ErrorReporter {
}
}
+ @Override
public void processError(final SAXParseException ex, final ValidateXmlActionHandler.ProblemType problemType) {
if (LOG.isDebugEnabled()) {
String error = myHandler.buildMessageString(ex);
@@ -138,6 +145,7 @@ public class StdErrorReporter extends ErrorReporter {
if (!ApplicationManager.getApplication().isUnitTestMode()) {
SwingUtilities.invokeLater(
new Runnable() {
+ @Override
public void run() {
final VirtualFile file = myHandler.getFile(ex.getPublicId(), ex.getSystemId());
myErrorsView.addMessage(
@@ -163,6 +171,7 @@ public class StdErrorReporter extends ErrorReporter {
myMessageView = messageView;
}
+ @Override
public void contentRemoved(ContentManagerEvent event) {
final Content eventContent = event.getContent();
if (!eventContent.equals(myContent)) {
@@ -176,10 +185,13 @@ public class StdErrorReporter extends ErrorReporter {
eventContent.putUserData(KEY, null);
}
+ @Override
public void contentAdded(ContentManagerEvent event) {
}
+ @Override
public void contentRemoveQuery(ContentManagerEvent event) {
}
+ @Override
public void selectionChanged(ContentManagerEvent event) {
}
}
@@ -193,6 +205,7 @@ public class StdErrorReporter extends ErrorReporter {
myContentManager = contentManager;
}
+ @Override
public void contentRemoved(ContentManagerEvent event) {
if (event.getContent() == myContent) {
myErrorsView.stopProcess();
@@ -203,6 +216,7 @@ public class StdErrorReporter extends ErrorReporter {
}
}
+ @Override
public void contentRemoveQuery(ContentManagerEvent event) {
if (event.getContent() == myContent) {
if (!myErrorsView.isProcessStopped()) {
@@ -226,12 +240,14 @@ public class StdErrorReporter extends ErrorReporter {
myFuture = future;
}
+ @Override
public void stopProcess() {
if (myFuture != null) {
myFuture.cancel(true);
}
}
+ @Override
public boolean isProcessStopped() {
return myFuture != null && myFuture.isDone();
}
diff --git a/xml/impl/src/com/intellij/xml/actions/validate/TestErrorReporter.java b/xml/impl/src/com/intellij/xml/actions/validate/TestErrorReporter.java
index 8906d335d178..6458f7afc92e 100644
--- a/xml/impl/src/com/intellij/xml/actions/validate/TestErrorReporter.java
+++ b/xml/impl/src/com/intellij/xml/actions/validate/TestErrorReporter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,15 +28,18 @@ public class TestErrorReporter extends ErrorReporter {
super(handler);
}
+ @Override
public boolean isStopOnUndeclaredResource() {
return true;
}
+ @Override
public boolean filterValidationException(final Exception ex) {
if (ex instanceof XmlResourceResolver.IgnoredResourceException) throw (XmlResourceResolver.IgnoredResourceException)ex;
return errors.add(ex.getMessage());
}
+ @Override
public void processError(SAXParseException ex, ValidateXmlActionHandler.ProblemType warning) {
errors.add(myHandler.buildMessageString(ex));
}
diff --git a/xml/impl/src/com/intellij/xml/actions/validate/ValidateXmlAction.java b/xml/impl/src/com/intellij/xml/actions/validate/ValidateXmlAction.java
index 8abbe220e60b..ea26f4593c92 100644
--- a/xml/impl/src/com/intellij/xml/actions/validate/ValidateXmlAction.java
+++ b/xml/impl/src/com/intellij/xml/actions/validate/ValidateXmlAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -40,6 +40,7 @@ public class ValidateXmlAction extends AnAction {
handler.setErrorReporter(
new StdErrorReporter(handler, file.getProject(),
new Runnable() {
+ @Override
public void run() {
doRunAction(file);
}
@@ -49,6 +50,7 @@ public class ValidateXmlAction extends AnAction {
return handler;
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final PsiFile psiFile = CommonDataKeys.PSI_FILE.getData(e.getDataContext());
if (psiFile != null) {
@@ -59,8 +61,10 @@ public class ValidateXmlAction extends AnAction {
private void doRunAction(final @NotNull PsiFile psiFile) {
CommandProcessor.getInstance().executeCommand(psiFile.getProject(), new Runnable(){
+ @Override
public void run(){
final Runnable action = new Runnable() {
+ @Override
public void run() {
try {
psiFile.putUserData(runningValidationKey, "");
@@ -86,6 +90,7 @@ public class ValidateXmlAction extends AnAction {
return text != null ? text : "";
}
+ @Override
public void update(AnActionEvent event) {
super.update(event);
diff --git a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaAction.java b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaAction.java
index be0b8bf29558..57f53d77b23e 100644
--- a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaAction.java
+++ b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,7 +20,6 @@ import com.intellij.openapi.actionSystem.ActionPlaces;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.CommonDataKeys;
-import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.fileEditor.FileDocumentManager;
import com.intellij.openapi.fileEditor.FileEditorManager;
@@ -30,7 +29,7 @@ import com.intellij.openapi.util.Computable;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.LocalFileSystem;
-import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiManager;
@@ -62,12 +61,14 @@ public class GenerateInstanceDocumentFromSchemaAction extends AnAction {
}
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final Project project = CommonDataKeys.PROJECT.getData(e.getDataContext());
final VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(e.getDataContext());
final GenerateInstanceDocumentFromSchemaDialog dialog = new GenerateInstanceDocumentFromSchemaDialog(project, file);
dialog.setOkAction(new Runnable() {
+ @Override
public void run() {
doAction(project, dialog);
}
@@ -82,7 +83,7 @@ public class GenerateInstanceDocumentFromSchemaAction extends AnAction {
@NonNls List<String> parameters = new LinkedList<String>();
final String url = dialog.getUrl().getText();
- final VirtualFile relativeFile = VfsUtil.findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(url), null);
+ final VirtualFile relativeFile = VfsUtilCore.findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(url), null);
final PsiFile file = PsiManager.getInstance(project).findFile(relativeFile);
if (! (file instanceof XmlFile)) {
Messages.showErrorDialog(project, "This is not XmlFile" + file == null ? "" : " (" + file.getFileType().getName() + ")", XmlBundle.message("error"));
@@ -121,6 +122,7 @@ public class GenerateInstanceDocumentFromSchemaAction extends AnAction {
(XmlFile) file,
new THashMap<String, String>(),
new Xsd2InstanceUtils.SchemaReferenceProcessor() {
+ @Override
public void processSchema(String schemaFileName, byte[] schemaContent) {
try {
final String fullFileName = tempDir.getPath() + File.separatorChar + schemaFileName;
@@ -169,6 +171,7 @@ public class GenerateInstanceDocumentFromSchemaAction extends AnAction {
final File xmlFile = new File(xmlFileName);
VirtualFile virtualFile = ApplicationManager.getApplication().runWriteAction(new Computable<VirtualFile>() {
+ @Override
@Nullable
public VirtualFile compute() {
return LocalFileSystem.getInstance().refreshAndFindFileByIoFile(xmlFile);
diff --git a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaDialog.java b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaDialog.java
index 33d75610bbe5..ffc37a5e9136 100644
--- a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaDialog.java
+++ b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateInstanceDocumentFromSchemaDialog.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,7 +20,7 @@ import com.intellij.javaee.ExternalResourceManager;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.DialogWrapper;
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
-import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiManager;
@@ -88,14 +88,17 @@ public class GenerateInstanceDocumentFromSchemaDialog extends DialogWrapper {
if (component instanceof JTextField) {
((JTextField)component).getDocument().addDocumentListener(new DocumentListener() {
+ @Override
public void insertUpdate(DocumentEvent e) {
validateData();
}
+ @Override
public void removeUpdate(DocumentEvent e) {
validateData();
}
+ @Override
public void changedUpdate(DocumentEvent e) {
validateData();
}
@@ -105,20 +108,24 @@ public class GenerateInstanceDocumentFromSchemaDialog extends DialogWrapper {
JComboBox jComboBox = ((JComboBox)component);
jComboBox.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
validateData();
}
});
((JTextField)jComboBox.getEditor().getEditorComponent()).getDocument().addDocumentListener(new DocumentListener() {
+ @Override
public void insertUpdate(DocumentEvent e) {
validateData();
}
+ @Override
public void removeUpdate(DocumentEvent e) {
validateData();
}
+ @Override
public void changedUpdate(DocumentEvent e) {
validateData();
}
@@ -126,6 +133,7 @@ public class GenerateInstanceDocumentFromSchemaDialog extends DialogWrapper {
if (jComboBox.isEditable()) {
jComboBox.getEditor().getEditorComponent().addKeyListener(new KeyAdapter() {
+ @Override
public void keyTyped(KeyEvent e) {
validateData();
}
@@ -203,7 +211,7 @@ public class GenerateInstanceDocumentFromSchemaDialog extends DialogWrapper {
@Nullable
private PsiFile findFile(String uri) {
final VirtualFile file =
- uri != null ? VfsUtil.findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(uri), null) : null;
+ uri != null ? VfsUtilCore.findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(uri), null) : null;
return file != null ? PsiManager.getInstance(myProject).findFile(file) : null;
}
@@ -264,6 +272,7 @@ public class GenerateInstanceDocumentFromSchemaDialog extends DialogWrapper {
return status;
}
+ @Override
protected JComponent createCenterPanel() {
return panel;
}
@@ -292,6 +301,7 @@ public class GenerateInstanceDocumentFromSchemaDialog extends DialogWrapper {
}
}
+ @Override
@NotNull
protected String getHelpId() {
return "webservices.GenerateInstanceDocumentFromSchema";
diff --git a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentAction.java b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentAction.java
index 76abf637945c..4a84ad70f2dc 100644
--- a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentAction.java
+++ b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,18 +16,17 @@
package com.intellij.xml.actions.xmlbeans;
import com.intellij.javaee.ExternalResourceManager;
+import com.intellij.openapi.actionSystem.ActionPlaces;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
-import com.intellij.openapi.actionSystem.ActionPlaces;
import com.intellij.openapi.actionSystem.CommonDataKeys;
-import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.fileEditor.FileDocumentManager;
import com.intellij.openapi.fileEditor.FileEditorManager;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.vfs.LocalFileSystem;
-import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.util.ArrayUtil;
import com.intellij.xml.XmlBundle;
@@ -36,10 +35,10 @@ import org.jetbrains.annotations.NonNls;
import java.io.File;
import java.io.IOException;
+import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
-import java.util.HashMap;
/**
* @author Konstantin Bulenkov
@@ -67,12 +66,14 @@ public class GenerateSchemaFromInstanceDocumentAction extends AnAction {
}
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final Project project = CommonDataKeys.PROJECT.getData(e.getDataContext());
final VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(e.getDataContext());
final GenerateSchemaFromInstanceDocumentDialog dialog = new GenerateSchemaFromInstanceDocumentDialog(project, file);
dialog.setOkAction(new Runnable() {
+ @Override
public void run() {
doAction(project, dialog);
}
@@ -85,7 +86,7 @@ public class GenerateSchemaFromInstanceDocumentAction extends AnAction {
FileDocumentManager.getInstance().saveAllDocuments();
final String url = dialog.getUrl().getText();
- final VirtualFile relativeFile = VfsUtil.findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(url), null);
+ final VirtualFile relativeFile = VfsUtilCore.findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(url), null);
VirtualFile relativeFileDir;
if (relativeFile == null) {
Messages.showErrorDialog(project, XmlBundle.message("file.doesnt.exist", url), XmlBundle.message("error"));
@@ -129,6 +130,7 @@ public class GenerateSchemaFromInstanceDocumentAction extends AnAction {
final VirtualFile xsdFile = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(xsd);
if (xsdFile != null) {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
try {
xsdFile.delete(null);
diff --git a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentDialog.java b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentDialog.java
index e57a7532295a..351eb1ae1def 100644
--- a/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentDialog.java
+++ b/xml/impl/src/com/intellij/xml/actions/xmlbeans/GenerateSchemaFromInstanceDocumentDialog.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -132,14 +132,17 @@ public class GenerateSchemaFromInstanceDocumentDialog extends DialogWrapper {
if (component instanceof JTextField) {
((JTextField)component).getDocument().addDocumentListener(new DocumentListener() {
+ @Override
public void insertUpdate(DocumentEvent e) {
validateData();
}
+ @Override
public void removeUpdate(DocumentEvent e) {
validateData();
}
+ @Override
public void changedUpdate(DocumentEvent e) {
validateData();
}
@@ -148,6 +151,7 @@ public class GenerateSchemaFromInstanceDocumentDialog extends DialogWrapper {
JComboBox jComboBox = ((JComboBox) component);
jComboBox.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
validateData();
}
@@ -155,6 +159,7 @@ public class GenerateSchemaFromInstanceDocumentDialog extends DialogWrapper {
if (jComboBox.isEditable()) {
jComboBox.getEditor().getEditorComponent().addKeyListener(new KeyAdapter() {
+ @Override
public void keyTyped(KeyEvent e) {
validateData();
}
@@ -179,6 +184,7 @@ public class GenerateSchemaFromInstanceDocumentDialog extends DialogWrapper {
return status;
}
+ @Override
protected JComponent createCenterPanel() {
return panel;
}
@@ -217,6 +223,7 @@ public class GenerateSchemaFromInstanceDocumentDialog extends DialogWrapper {
return null;
}
+ @Override
@NotNull
protected String getHelpId() {
return "webservices.GenerateSchemaFromInstanceDocument";
diff --git a/xml/impl/src/com/intellij/xml/actions/xmlbeans/UIUtils.java b/xml/impl/src/com/intellij/xml/actions/xmlbeans/UIUtils.java
index cdde9af2d021..80df3ad11067 100644
--- a/xml/impl/src/com/intellij/xml/actions/xmlbeans/UIUtils.java
+++ b/xml/impl/src/com/intellij/xml/actions/xmlbeans/UIUtils.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,6 +23,7 @@ import com.intellij.openapi.ui.TextFieldWithBrowseButton;
import com.intellij.openapi.util.SystemInfo;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.xml.XmlBundle;
@@ -45,10 +46,12 @@ public class UIUtils {
wsdlUrl.getButton().setToolTipText(XmlBundle.message("browse.button.tooltip"));
wsdlUrl.getButton().addActionListener(
new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent actionEvent) {
final FileChooserDescriptor fileChooserDescriptor = new FileChooserDescriptor(true, false, false, false, false, multipleFileSelection) {
private final List<String> extensions = Arrays.asList(_extensions);
+ @Override
public boolean isFileSelectable(VirtualFile virtualFile) {
return extensions.contains(virtualFile.getExtension());
}
@@ -64,7 +67,8 @@ public class UIUtils {
VirtualFile initialFile = myProject.getBaseDir();
String selectedItem = wsdlUrl.getTextField().getText();
if (selectedItem != null && selectedItem.startsWith(LocalFileSystem.PROTOCOL_PREFIX)) {
- VirtualFile fileByPath = VfsUtil.findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(VfsUtil.fixURLforIDEA(selectedItem)), null);
+ VirtualFile fileByPath = VfsUtilCore
+ .findRelativeFile(ExternalResourceManager.getInstance().getResourceLocation(VfsUtil.fixURLforIDEA(selectedItem)), null);
if (fileByPath != null) initialFile = fileByPath;
}
@@ -79,6 +83,6 @@ public class UIUtils {
}
public static String fixIDEAUrl(String url) {
- return SystemInfo.isWindows ? VfsUtil.fixIDEAUrl(url) : url;
+ return SystemInfo.isWindows ? VfsUtilCore.fixIDEAUrl(url) : url;
}
}
diff --git a/xml/impl/src/com/intellij/xml/actions/xmlbeans/Xsd2InstanceUtils.java b/xml/impl/src/com/intellij/xml/actions/xmlbeans/Xsd2InstanceUtils.java
index c6c358eda169..963544945212 100644
--- a/xml/impl/src/com/intellij/xml/actions/xmlbeans/Xsd2InstanceUtils.java
+++ b/xml/impl/src/com/intellij/xml/actions/xmlbeans/Xsd2InstanceUtils.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -79,18 +79,15 @@ public class Xsd2InstanceUtils {
// Process Schema files
List sdocs = new ArrayList();
- for (int i = 0; i < schemaFiles.length; i++)
- {
- try
- {
- sdocs.add(XmlObject.Factory.parse(schemaFiles[i],
- (new XmlOptions()).setLoadLineNumbers().setLoadMessageDigest()));
- }
- catch (Exception e)
- {
- throw new IllegalArgumentException("Can not load schema file: " + schemaFiles[i] + ": " + e.getLocalizedMessage());
- }
+ for (File schemaFile : schemaFiles) {
+ try {
+ sdocs.add(XmlObject.Factory.parse(schemaFile,
+ (new XmlOptions()).setLoadLineNumbers().setLoadMessageDigest()));
+ }
+ catch (Exception e) {
+ throw new IllegalArgumentException("Can not load schema file: " + schemaFile + ": " + e.getLocalizedMessage());
}
+ }
XmlObject[] schemas = (XmlObject[]) sdocs.toArray(new XmlObject[sdocs.size()]);
@@ -121,14 +118,12 @@ public class Xsd2InstanceUtils {
}
SchemaType[] globalElems = sts.documentTypes();
SchemaType elem = null;
- for (int i = 0; i < globalElems.length; i++)
- {
- if (rootName.equals(globalElems[i].getDocumentElementName().getLocalPart()))
- {
- elem = globalElems[i];
- break;
- }
+ for (SchemaType globalElem : globalElems) {
+ if (rootName.equals(globalElem.getDocumentElementName().getLocalPart())) {
+ elem = globalElem;
+ break;
}
+ }
if (elem == null) {
throw new IllegalArgumentException("Could not find a global element with name \"" + rootName + "\"");
diff --git a/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsLoaderComponent.java b/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsLoaderComponent.java
index 9a3a11385062..aeff2abfdf40 100644
--- a/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsLoaderComponent.java
+++ b/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsLoaderComponent.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml.breadcrumbs;
import com.intellij.application.options.editor.WebEditorOptions;
@@ -24,12 +39,14 @@ public class BreadcrumbsLoaderComponent extends AbstractProjectComponent {
super(project);
}
+ @Override
@NonNls
@NotNull
public String getComponentName() {
return "HtmlBreadcrumbsComponent";
}
+ @Override
public void initComponent() {
myProject.getMessageBus().connect().subscribe(FileEditorManagerListener.FILE_EDITOR_MANAGER, new MyFileEditorManagerListener());
}
@@ -40,6 +57,7 @@ public class BreadcrumbsLoaderComponent extends AbstractProjectComponent {
}
private static class MyFileEditorManagerListener extends FileEditorManagerAdapter {
+ @Override
public void fileOpened(@NotNull final FileEditorManager source, @NotNull final VirtualFile file) {
if (isEnabled() && isSuitable(source.getProject(), file)) {
final FileEditor[] fileEditors = source.getEditors(file);
@@ -51,6 +69,7 @@ public class BreadcrumbsLoaderComponent extends AbstractProjectComponent {
Disposer.register(fileEditor, wrapper);
Disposer.register(fileEditor, new Disposable() {
+ @Override
public void dispose() {
source.removeTopComponent(fileEditor, c);
}
diff --git a/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsPsiItem.java b/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsPsiItem.java
index f0c6c756b6ff..925785608948 100644
--- a/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsPsiItem.java
+++ b/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsPsiItem.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,10 +35,12 @@ public class BreadcrumbsPsiItem extends BreadcrumbsItem {
myPresentation = presentation;
}
+ @Override
public String getDisplayText() {
return isValid() ? myProvider.getElementInfo(myElement) : "INVALID";
}
+ @Override
public String getTooltip() {
final String s = isValid() ? myProvider.getElementTooltip(myElement) : "";
return s == null ? "" : s;
diff --git a/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsXmlWrapper.java b/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsXmlWrapper.java
index 1b2fabde81b3..bbee880bfde1 100644
--- a/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsXmlWrapper.java
+++ b/xml/impl/src/com/intellij/xml/breadcrumbs/BreadcrumbsXmlWrapper.java
@@ -86,10 +86,12 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
final FileStatusManager manager = FileStatusManager.getInstance(project);
manager.addFileStatusListener(new FileStatusListener() {
+ @Override
public void fileStatusesChanged() {
updateCrumbs();
}
+ @Override
public void fileStatusChanged(@NotNull final VirtualFile virtualFile) {
}
}, this);
@@ -105,6 +107,7 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
myInfoProvider = findInfoProvider(findViewProvider(myFile, myProject));
final CaretListener caretListener = new CaretAdapter() {
+ @Override
public void caretPositionChanged(final CaretEvent e) {
if (myUserCaretChange) {
queueUpdate(editor);
@@ -116,6 +119,7 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
editor.getCaretModel().addCaretListener(caretListener);
Disposer.register(this, new Disposable() {
+ @Override
public void dispose() {
editor.getCaretModel().removeCaretListener(caretListener);
}
@@ -163,6 +167,7 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
myComponent.setFont(editorFont.deriveFont(Font.PLAIN, editorFont.getSize2D()));
final ComponentAdapter resizeListener = new ComponentAdapter() {
+ @Override
public void componentResized(final ComponentEvent e) {
queueUpdate(editor);
}
@@ -170,6 +175,7 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
myComponent.addComponentListener(resizeListener);
Disposer.register(this, new Disposable() {
+ @Override
public void dispose() {
myComponent.removeComponentListener(resizeListener);
}
@@ -299,6 +305,7 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
if (file == null || !file.isValid()) return null;
PriorityQueue<PsiElement> leafs = new PriorityQueue<PsiElement>(3, new Comparator<PsiElement>() {
+ @Override
public int compare(final PsiElement o1, final PsiElement o2) {
return o2.getTextRange().getStartOffset() - o1.getTextRange().getStartOffset();
}
@@ -365,6 +372,7 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
return myWrapperPanel;
}
+ @Override
public void itemSelected(@NotNull final BreadcrumbsPsiItem item, final int modifiers) {
final PsiElement psiElement = item.getPsiElement();
moveEditorCaretTo(psiElement);
@@ -380,6 +388,7 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
return editor.getUserData(BREADCRUMBS_COMPONENT_KEY);
}
+ @Override
public void dispose() {
myEditor.putUserData(BREADCRUMBS_COMPONENT_KEY, null);
myEditor = null;
@@ -409,10 +418,12 @@ public class BreadcrumbsXmlWrapper implements BreadcrumbsItemListener<Breadcrumb
myEditor = editor;
}
+ @Override
public void run() {
myBreadcrumbsComponent.updateCrumbs(myEditor.getCaretModel().getLogicalPosition());
}
+ @Override
public boolean canEat(final Update update) {
return true;
}
diff --git a/xml/impl/src/com/intellij/xml/breadcrumbs/XmlLanguageBreadcrumbsInfoProvider.java b/xml/impl/src/com/intellij/xml/breadcrumbs/XmlLanguageBreadcrumbsInfoProvider.java
index 9f736ee21345..43470c2d55f4 100644
--- a/xml/impl/src/com/intellij/xml/breadcrumbs/XmlLanguageBreadcrumbsInfoProvider.java
+++ b/xml/impl/src/com/intellij/xml/breadcrumbs/XmlLanguageBreadcrumbsInfoProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,18 +39,21 @@ public class XmlLanguageBreadcrumbsInfoProvider extends BreadcrumbsInfoProvider
@NonNls private static final String CLASS_ATTRIBUTE_NAME = "class";
@NonNls private static final String ID_ATTRIBUTE_NAME = "id";
+ @Override
public boolean acceptElement(@NotNull final PsiElement e) {
return e instanceof XmlTag && e.isValid();
}
+ @Override
public Language[] getLanguages() {
return new Language[]{XMLLanguage.INSTANCE, XHTMLLanguage.INSTANCE, HTMLLanguage.INSTANCE};
}
+ @Override
@NotNull
public String getElementInfo(@NotNull final PsiElement e) {
final XmlTag tag = (XmlTag)e;
- final StringBuffer sb = new StringBuffer();
+ final StringBuilder sb = new StringBuilder();
sb.append(tag.getName());
@@ -74,10 +77,11 @@ public class XmlLanguageBreadcrumbsInfoProvider extends BreadcrumbsInfoProvider
return sb.toString();
}
+ @Override
@Nullable
public String getElementTooltip(@NotNull final PsiElement e) {
final XmlTag tag = (XmlTag)e;
- final StringBuffer result = new StringBuffer("&lt;");
+ final StringBuilder result = new StringBuilder("&lt;");
result.append(tag.getName());
final XmlAttribute[] attributes = tag.getAttributes();
for (final XmlAttribute each : attributes) {
diff --git a/xml/impl/src/com/intellij/xml/config/ConfigFilesTreeBuilder.java b/xml/impl/src/com/intellij/xml/config/ConfigFilesTreeBuilder.java
index e50fcc6624f4..55f2f41f57c7 100644
--- a/xml/impl/src/com/intellij/xml/config/ConfigFilesTreeBuilder.java
+++ b/xml/impl/src/com/intellij/xml/config/ConfigFilesTreeBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -90,6 +90,7 @@ public class ConfigFilesTreeBuilder {
final HashSet<PsiFile> psiFiles = new HashSet<PsiFile>();
final List<Module> modules = new ArrayList<Module>(files.keySet());
Collections.sort(modules, new Comparator<Module>() {
+ @Override
public int compare(final Module o1, final Module o2) {
return o1.getName().compareTo(o2.getName());
}
@@ -158,6 +159,7 @@ public class ConfigFilesTreeBuilder {
}
private static final Comparator<PsiFile> FILE_COMPARATOR = new Comparator<PsiFile>() {
+ @Override
public int compare(final PsiFile o1, final PsiFile o2) {
return o1.getName().compareTo(o2.getName());
}
@@ -210,6 +212,7 @@ public class ConfigFilesTreeBuilder {
public static void installSearch(JTree tree) {
new TreeSpeedSearch(tree, new Convertor<TreePath, String>() {
+ @Override
public String convert(final TreePath treePath) {
final Object object = ((DefaultMutableTreeNode)treePath.getLastPathComponent()).getUserObject();
if (object instanceof Module) {
diff --git a/xml/impl/src/com/intellij/xml/impl/XmlBraceMatcher.java b/xml/impl/src/com/intellij/xml/impl/XmlBraceMatcher.java
index 866be5f1f3b2..6ae3068a039d 100644
--- a/xml/impl/src/com/intellij/xml/impl/XmlBraceMatcher.java
+++ b/xml/impl/src/com/intellij/xml/impl/XmlBraceMatcher.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -55,6 +55,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
PAIRING_TOKENS.put(XmlTokenType.XML_ATTRIBUTE_VALUE_START_DELIMITER, XmlTokenType.XML_ATTRIBUTE_VALUE_END_DELIMITER);
}
+ @Override
public int getBraceTokenGroupId(IElementType tokenType) {
final Language l = tokenType.getLanguage();
PairedBraceMatcher matcher = LanguageBraceMatching.INSTANCE.forLanguage(l);
@@ -77,6 +78,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
}
}
+ @Override
public boolean isLBraceToken(HighlighterIterator iterator, CharSequence fileText, FileType fileType) {
final IElementType tokenType = iterator.getTokenType();
PairedBraceMatcher matcher = LanguageBraceMatching.INSTANCE.forLanguage(tokenType.getLanguage());
@@ -91,6 +93,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
tokenType == XmlTokenType.XML_CDATA_START;
}
+ @Override
public boolean isRBraceToken(HighlighterIterator iterator, CharSequence fileText, FileType fileType) {
final IElementType tokenType = iterator.getTokenType();
PairedBraceMatcher matcher = LanguageBraceMatching.INSTANCE.forLanguage(tokenType.getLanguage());
@@ -129,6 +132,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
return fileType == StdFileTypes.HTML;
}
+ @Override
public boolean isPairBraces(IElementType tokenType1, IElementType tokenType2) {
PairedBraceMatcher matcher = LanguageBraceMatching.INSTANCE.forLanguage(tokenType1.getLanguage());
if (matcher != null) {
@@ -143,6 +147,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
return keys != null && keys.contains(tokenType2);
}
+ @Override
public boolean isStructuralBrace(HighlighterIterator iterator,CharSequence text, FileType fileType) {
IElementType tokenType = iterator.getTokenType();
@@ -167,10 +172,12 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
tokenType == XmlTokenType.XML_TAG_END && isFileTypeWithSingleHtmlTags(fileType) && isEndOfSingleHtmlTag(text, iterator);
}
+ @Override
public boolean isPairedBracesAllowedBeforeType(@NotNull final IElementType lbraceType, @Nullable final IElementType contextType) {
return true;
}
+ @Override
public boolean isStrictTagMatching(final FileType fileType, final int braceGroupId) {
switch(braceGroupId){
case XML_TAG_TOKEN_GROUP:
@@ -187,6 +194,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
fileType == StdFileTypes.XHTML;
}
+ @Override
public boolean areTagsCaseSensitive(final FileType fileType, final int braceGroupId) {
switch(braceGroupId){
case XML_TAG_TOKEN_GROUP:
@@ -221,6 +229,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
return tagName != null && HtmlUtil.isSingleHtmlTag(tagName);
}
+ @Override
public String getTagName(CharSequence fileText, HighlighterIterator iterator) {
final IElementType tokenType = iterator.getTokenType();
String name = null;
@@ -274,6 +283,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
return tokenType1 == TokenType.WHITE_SPACE;
}
+ @Override
public IElementType getOppositeBraceTokenType(@NotNull final IElementType type) {
PairedBraceMatcher matcher = LanguageBraceMatching.INSTANCE.forLanguage(type.getLanguage());
if (matcher != null) {
@@ -286,6 +296,7 @@ public class XmlBraceMatcher implements XmlAwareBraceMatcher {
return null;
}
+ @Override
public int getCodeConstructStart(final PsiFile file, int openingBraceOffset) {
return openingBraceOffset;
}
diff --git a/xml/impl/src/com/intellij/xml/impl/schema/SchemaDefinitionsSearch.java b/xml/impl/src/com/intellij/xml/impl/schema/SchemaDefinitionsSearch.java
index 6811ca9a9f2a..b3cc34ff57a1 100644
--- a/xml/impl/src/com/intellij/xml/impl/schema/SchemaDefinitionsSearch.java
+++ b/xml/impl/src/com/intellij/xml/impl/schema/SchemaDefinitionsSearch.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -17,7 +17,7 @@ package com.intellij.xml.impl.schema;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.module.Module;
-import com.intellij.openapi.module.ModuleUtil;
+import com.intellij.openapi.module.ModuleUtilCore;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Comparing;
import com.intellij.openapi.util.Computable;
@@ -65,7 +65,7 @@ public class SchemaDefinitionsSearch implements QueryExecutor<PsiElement, PsiEle
if (infos != null && ! infos.isEmpty()) {
final XmlFile file = XmlUtil.getContainingFile(xml);
final Project project = file.getProject();
- final Module module = ModuleUtil.findModuleForPsiElement(queryParameters);
+ final Module module = ModuleUtilCore.findModuleForPsiElement(queryParameters);
//if (module == null) return false;
final VirtualFile vf = file.getVirtualFile();
diff --git a/xml/impl/src/com/intellij/xml/refactoring/XmlTagInplaceRenamer.java b/xml/impl/src/com/intellij/xml/refactoring/XmlTagInplaceRenamer.java
index 828c7faccc4f..83004f907477 100644
--- a/xml/impl/src/com/intellij/xml/refactoring/XmlTagInplaceRenamer.java
+++ b/xml/impl/src/com/intellij/xml/refactoring/XmlTagInplaceRenamer.java
@@ -91,22 +91,27 @@ public class XmlTagInplaceRenamer {
myHighlighters = new ArrayList<RangeHighlighter>();
CommandProcessor.getInstance().executeCommand(project, new Runnable() {
+ @Override
public void run() {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
final int offset = myEditor.getCaretModel().getOffset();
myEditor.getCaretModel().moveToOffset(tag.getTextOffset());
final Template t = buildTemplate(tag, pair);
TemplateManager.getInstance(project).startTemplate(myEditor, t, new TemplateEditingAdapter() {
+ @Override
public void templateFinished(final Template template, boolean brokenOff) {
finish();
}
+ @Override
public void templateCancelled(final Template template) {
finish();
}
}, new PairProcessor<String, String>() {
+ @Override
public boolean process(final String variableName, final String value) {
return value.length() == 0 || value.charAt(value.length() - 1) != ' ';
}
@@ -162,10 +167,12 @@ public class XmlTagInplaceRenamer {
final ASTNode other = pair.second;
builder.replaceElement(selected.getPsi(), PRIMARY_VARIABLE_NAME, new EmptyExpression() {
+ @Override
public Result calculateQuickResult(final ExpressionContext context) {
return new TextResult(selected.getText());
}
+ @Override
public Result calculateResult(final ExpressionContext context) {
return new TextResult(selected.getText());
}
diff --git a/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameDialog.java b/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameDialog.java
index e1e6465438d4..80d2b82eae8f 100644
--- a/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameDialog.java
+++ b/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameDialog.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -82,11 +82,13 @@ public class XmlTagRenameDialog extends RefactoringDialog {
validateButtons();
}
+ @Override
protected void dispose() {
myNameSuggestionsField.removeDataChangedListener(myNameChangedListener);
super.dispose();
}
+ @Override
protected boolean hasHelpAction() {
return false;
}
@@ -104,6 +106,7 @@ public class XmlTagRenameDialog extends RefactoringDialog {
private void createNewNameComponent() {
myNameSuggestionsField = new NameSuggestionsField(new String[] { myTag.getName() }, myProject, FileTypes.PLAIN_TEXT, myEditor);
myNameChangedListener = new NameSuggestionsField.DataChanged() {
+ @Override
public void dataChanged() {
validateButtons();
}
@@ -111,6 +114,7 @@ public class XmlTagRenameDialog extends RefactoringDialog {
myNameSuggestionsField.addDataChangedListener(myNameChangedListener);
myNameSuggestionsField.getComponent().registerKeyboardAction(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
completeVariable(myNameSuggestionsField.getEditor());
}
@@ -129,12 +133,15 @@ public class XmlTagRenameDialog extends RefactoringDialog {
}
}
+ @Override
protected void doAction() {
LOG.assertTrue(myElement.isValid());
CommandProcessor.getInstance().executeCommand(myProject, new Runnable() {
+ @Override
public void run() {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
try {
myTag.setName(getNewName());
@@ -150,15 +157,18 @@ public class XmlTagRenameDialog extends RefactoringDialog {
close(DialogWrapper.OK_EXIT_CODE);
}
+ @Override
@Nullable
protected JComponent createCenterPanel() {
return null;
}
+ @Override
public JComponent getPreferredFocusedComponent() {
return myNameSuggestionsField.getFocusableComponent();
}
+ @Override
protected JComponent createNorthPanel() {
final JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
@@ -172,6 +182,7 @@ public class XmlTagRenameDialog extends RefactoringDialog {
return panel;
}
+ @Override
protected void doHelpAction() {
HelpManager.getInstance().invokeHelp(myHelpID);
}
@@ -180,12 +191,14 @@ public class XmlTagRenameDialog extends RefactoringDialog {
return myNameSuggestionsField.getEnteredName().trim();
}
+ @Override
protected void validateButtons() {
super.validateButtons();
getPreviewAction().setEnabled(false);
}
+ @Override
protected boolean areButtonsValid() {
final String newName = getNewName();
return !StringUtil.containsAnyChar(newName, "\t ;*'\"\\/,()^&<>={}"); // RenameUtil.isValidName(myProject, myTag, newName); // IDEADEV-34531
diff --git a/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameHandler.java b/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameHandler.java
index d913b72782d3..a4a51b963a0c 100644
--- a/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameHandler.java
+++ b/xml/impl/src/com/intellij/xml/refactoring/XmlTagRenameHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -49,6 +49,7 @@ public class XmlTagRenameHandler implements RenameHandler, TitledHandler {
private static final Logger LOG = Logger.getInstance("#com.intellij.xml.refactoring.XmlTagRenameHandler");
+ @Override
public boolean isAvailableOnDataContext(final DataContext dataContext) {
final PsiElement element = getElement(dataContext);
if (element == null || PsiElementRenameHandler.isVetoed(element)) return false;
@@ -70,6 +71,7 @@ public class XmlTagRenameHandler implements RenameHandler, TitledHandler {
return isDeclarationOutOfProjectOrAbsent(element.getProject(), dataContext);
}
+ @Override
public boolean isRenaming(final DataContext dataContext) {
return isAvailableOnDataContext(dataContext);
}
@@ -142,6 +144,7 @@ public class XmlTagRenameHandler implements RenameHandler, TitledHandler {
}
}
+ @Override
public void invoke(@NotNull final Project project, final Editor editor, final PsiFile file, @Nullable final DataContext dataContext) {
if (!isRenaming(dataContext)) {
return;
@@ -153,6 +156,7 @@ public class XmlTagRenameHandler implements RenameHandler, TitledHandler {
invoke(editor, element, dataContext);
}
+ @Override
public void invoke(@NotNull final Project project, @NotNull final PsiElement[] elements, @Nullable final DataContext dataContext) {
PsiElement element = elements.length == 1 ? elements[0] : null;
if (element == null) {
diff --git a/xml/impl/src/com/intellij/xml/util/ColorSampleLookupValue.java b/xml/impl/src/com/intellij/xml/util/ColorSampleLookupValue.java
index 07f316d4c306..7b383ddbbedb 100644
--- a/xml/impl/src/com/intellij/xml/util/ColorSampleLookupValue.java
+++ b/xml/impl/src/com/intellij/xml/util/ColorSampleLookupValue.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -52,6 +52,7 @@ public class ColorSampleLookupValue implements LookupValueWithUIHint, DeferredUs
myIsStandard = isStandard;
}
+ @Override
public String getPresentation() {
return myName != null ? myName : myValue;
}
@@ -64,6 +65,7 @@ public class ColorSampleLookupValue implements LookupValueWithUIHint, DeferredUs
return myIsStandard;
}
+ @Override
public Icon getIcon(int flags) {
if (myColor == null) {
if (myValue.startsWith("#")) {
@@ -83,6 +85,7 @@ public class ColorSampleLookupValue implements LookupValueWithUIHint, DeferredUs
return null;
}
+ @Override
public boolean handleUserSelection(LookupItem item, Project project) {
if (!myIsStandard) {
item.setLookupString(myValue);
@@ -135,16 +138,19 @@ public class ColorSampleLookupValue implements LookupValueWithUIHint, DeferredUs
return ourColors;
}
+ @Override
@Nullable
public String getTypeHint() {
return myValue != null && myValue.charAt(0) == '#' ? myValue : null;
}
+ @Override
@Nullable
public Color getColorHint() {
return null;
}
+ @Override
public boolean isBold() {
return false;
}
@@ -153,6 +159,7 @@ public class ColorSampleLookupValue implements LookupValueWithUIHint, DeferredUs
return myName;
}
+ @Override
public int getPriority() {
return myName == null || Character.isLowerCase(myName.charAt(0)) ? HIGHER : NORMAL;
}
diff --git a/xml/impl/src/com/intellij/xml/util/XmlReferenceContributor.java b/xml/impl/src/com/intellij/xml/util/XmlReferenceContributor.java
index fa04ab0edddc..7e5977abf9dc 100644
--- a/xml/impl/src/com/intellij/xml/util/XmlReferenceContributor.java
+++ b/xml/impl/src/com/intellij/xml/util/XmlReferenceContributor.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml.util;
import com.intellij.codeInsight.daemon.impl.analysis.encoding.XmlEncodingReferenceProvider;
@@ -23,6 +38,7 @@ import static com.intellij.patterns.XmlPatterns.*;
* @author peter
*/
public class XmlReferenceContributor extends PsiReferenceContributor {
+ @Override
public void registerReferenceProviders(final PsiReferenceRegistrar registrar) {
final IdReferenceProvider idReferenceProvider = new IdReferenceProvider();
diff --git a/xml/impl/src/com/intellij/xml/util/documentation/HtmlDocumentationProvider.java b/xml/impl/src/com/intellij/xml/util/documentation/HtmlDocumentationProvider.java
index 3f260038d841..11fb4a784c42 100644
--- a/xml/impl/src/com/intellij/xml/util/documentation/HtmlDocumentationProvider.java
+++ b/xml/impl/src/com/intellij/xml/util/documentation/HtmlDocumentationProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -52,6 +52,7 @@ public class HtmlDocumentationProvider implements DocumentationProvider {
ourStyleProvider = documentationProvider;
}
+ @Override
@Nullable
public String getQuickNavigateInfo(PsiElement element, PsiElement originalElement) {
if (element instanceof SchemaPrefix) {
@@ -60,6 +61,7 @@ public class HtmlDocumentationProvider implements DocumentationProvider {
return null;
}
+ @Override
public List<String> getUrlFor(PsiElement element, PsiElement originalElement) {
String result = getUrlForHtml(element, PsiTreeUtil.getParentOfType(originalElement,XmlTag.class,false));
@@ -148,6 +150,7 @@ public class HtmlDocumentationProvider implements DocumentationProvider {
return attributeDescriptor;
}
+ @Override
public String generateDoc(PsiElement element, PsiElement originalElement) {
final XmlTag tag = PsiTreeUtil.getParentOfType(originalElement, XmlTag.class, false);
String result = generateDocForHtml(element, false, tag, originalElement);
@@ -222,15 +225,15 @@ public class HtmlDocumentationProvider implements DocumentationProvider {
}
char dtdId = descriptor.getDtd();
- boolean deprecated = dtdId == HtmlTagDescriptor.LOOSE_DTD;
+ boolean deprecated = dtdId == EntityDescriptor.LOOSE_DTD;
if (deprecated) {
buf.append(XmlBundle.message("xml.javadoc.deprecated.message", deprecated)).append(BR);
}
- if (dtdId == HtmlTagDescriptor.LOOSE_DTD) {
+ if (dtdId == EntityDescriptor.LOOSE_DTD) {
buf.append(XmlBundle.message("xml.javadoc.defined.in.loose.dtd.message"));
}
- else if (dtdId == HtmlTagDescriptor.FRAME_DTD) {
+ else if (dtdId == EntityDescriptor.FRAME_DTD) {
buf.append(XmlBundle.message("xml.javadoc.defined.in.frameset.dtd.message"));
}
else {
@@ -248,6 +251,7 @@ public class HtmlDocumentationProvider implements DocumentationProvider {
return buf.toString();
}
+ @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) {
PsiElement result = createNavigationElementHTML(psiManager, object.toString(),element);
@@ -263,6 +267,7 @@ public class HtmlDocumentationProvider implements DocumentationProvider {
return result;
}
+ @Override
public PsiElement getDocumentationElementForLink(PsiManager psiManager, String link, PsiElement context) {
PsiElement result = createNavigationElementHTML(psiManager, link, context);
diff --git a/xml/impl/src/com/intellij/xml/util/documentation/XHtmlDocumentationProvider.java b/xml/impl/src/com/intellij/xml/util/documentation/XHtmlDocumentationProvider.java
index f03f8d79edf2..70ee74f59850 100644
--- a/xml/impl/src/com/intellij/xml/util/documentation/XHtmlDocumentationProvider.java
+++ b/xml/impl/src/com/intellij/xml/util/documentation/XHtmlDocumentationProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,10 +25,12 @@ import com.intellij.psi.xml.XmlText;
*/
public class XHtmlDocumentationProvider extends HtmlDocumentationProvider {
+ @Override
protected String generateDocForHtml(PsiElement element, boolean ommitHtmlSpecifics, XmlTag context, PsiElement originalElement) {
return super.generateDocForHtml(element, true, context, originalElement);
}
+ @Override
protected XmlTag findTagContext(PsiElement context) {
XmlTag tagBeforeWhiteSpace = findTagBeforeWhiteSpace(context);
if (tagBeforeWhiteSpace != null) return tagBeforeWhiteSpace;
@@ -50,6 +52,7 @@ public class XHtmlDocumentationProvider extends HtmlDocumentationProvider {
return null;
}
+ @Override
protected boolean isAttributeContext(PsiElement context) {
if (findTagBeforeWhiteSpace(context) != null) return false;
diff --git a/xml/impl/src/com/intellij/xml/util/documentation/XmlDocumentationProvider.java b/xml/impl/src/com/intellij/xml/util/documentation/XmlDocumentationProvider.java
index b464d56de0c4..2d6b70ed31d8 100644
--- a/xml/impl/src/com/intellij/xml/util/documentation/XmlDocumentationProvider.java
+++ b/xml/impl/src/com/intellij/xml/util/documentation/XmlDocumentationProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -56,6 +56,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
@NonNls private static final String BASE_SITEPOINT_URL = "http://reference.sitepoint.com/html/";
+ @Override
@Nullable
public String getQuickNavigateInfo(PsiElement element, PsiElement originalElement) {
if (element instanceof SchemaPrefix) {
@@ -64,6 +65,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
return null;
}
+ @Override
public List<String> getUrlFor(PsiElement element, PsiElement originalElement) {
if (element instanceof XmlTag) {
XmlTag tag = (XmlTag)element;
@@ -84,6 +86,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
return null;
}
+ @Override
public String generateDoc(PsiElement element, final PsiElement originalElement) {
if (element instanceof XmlElementDecl) {
PsiElement curElement = findPreviousComment(element);
@@ -176,6 +179,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
final Ref<XmlTag> enumerationTag = new Ref<XmlTag>();
Processor<XmlTag> processor = new Processor<XmlTag>() {
+ @Override
public boolean process(XmlTag xmlTag) {
if (text.equals(xmlTag.getAttributeValue(XmlUtil.VALUE_ATTR_NAME))) {
enumerationTag.set(xmlTag);
@@ -331,6 +335,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
return builder.toString();
}
+ @Override
public PsiElement getDocumentationElementForLookupItem(final PsiManager psiManager, Object object, PsiElement element) {
if (object instanceof XmlExtension.TagInfo) {
@@ -370,7 +375,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
if (object == null) return null;
try {
- @NonNls StringBuffer tagText = new StringBuffer(object.toString());
+ @NonNls StringBuilder tagText = new StringBuilder(object.toString());
String namespacePrefix = XmlUtil.findPrefixByQualifiedName(object.toString());
String namespace = xmlTag.getNamespaceByPrefix(namespacePrefix);
@@ -450,6 +455,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
XmlUtil.processXmlElements(
xmlFile,
new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlEntityDecl) {
final XmlEntityDecl entityDecl = (XmlEntityDecl)element;
@@ -475,6 +481,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
return null;
}
+ @Override
public PsiElement getDocumentationElementForLink(final PsiManager psiManager, String link, PsiElement context) {
return null;
}
@@ -487,6 +494,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
private @NonNls static final String CDATA_PREFIX = "<![CDATA[";
private @NonNls static final String CDATA_SUFFIX = "]]>";
+ @Override
public boolean execute(@NotNull PsiElement element) {
if (element instanceof XmlTag &&
((XmlTag)element).getLocalName().equals(DOCUMENTATION_ELEMENT_LOCAL_NAME)
diff --git a/xml/openapi/src/com/intellij/xml/breadcrumbs/BreadcrumbsComponent.java b/xml/openapi/src/com/intellij/xml/breadcrumbs/BreadcrumbsComponent.java
index 9e3b5ae2107c..9cb570842442 100644
--- a/xml/openapi/src/com/intellij/xml/breadcrumbs/BreadcrumbsComponent.java
+++ b/xml/openapi/src/com/intellij/xml/breadcrumbs/BreadcrumbsComponent.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -54,7 +54,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
addMouseListener(myMouseListener);
addMouseMotionListener(myMouseListener);
- setToolTipText(new String());
+ setToolTipText("");
}
public void setItems(@Nullable final List<T> itemsList) {
@@ -74,6 +74,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
myListeners.remove(listener);
}
+ @Override
public String getToolTipText(final MouseEvent event) {
final Crumb c = getCrumb(event.getPoint());
if (c != null) {
@@ -145,6 +146,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
repaint();
}
+ @Override
public void paint(final Graphics g) {
final Graphics2D g2 = ((Graphics2D)g);
final Dimension d = getSize();
@@ -335,19 +337,23 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
return totalWidth;
}
+ @Override
public Dimension getMinimumSize() {
return getPreferredSize();
}
+ @Override
public Dimension getPreferredSize() {
final Graphics2D g2 = (Graphics2D)getGraphics();
return new Dimension(Integer.MAX_VALUE, g2 != null ? DEFAULT_PAINTER.getSize("DUMMY", g2.getFontMetrics(), Integer.MAX_VALUE).height + 1 : 1);
}
+ @Override
public Dimension getMaximumSize() {
return getPreferredSize();
}
+ @Override
public void dispose() {
removeMouseListener(myMouseListener);
removeMouseMotionListener(myMouseListener);
@@ -419,10 +425,12 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
myBreadcrumbs = line;
}
+ @Override
public void mouseDragged(final MouseEvent e) {
// nothing
}
+ @Override
public void mouseMoved(final MouseEvent e) {
final Crumb crumb = myBreadcrumbs.getCrumb(e.getPoint());
if (crumb != myHoveredCrumb) {
@@ -431,14 +439,17 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
}
}
+ @Override
public void mouseExited(final MouseEvent e) {
mouseMoved(e);
}
+ @Override
public void mouseEntered(final MouseEvent e) {
mouseMoved(e);
}
+ @Override
public void mouseClicked(final MouseEvent e) {
final Crumb crumb = myBreadcrumbs.getCrumb(e.getPoint());
if (crumb != null) {
@@ -448,9 +459,9 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
}
private static class Crumb<T extends BreadcrumbsItem> {
- private String myString;
+ private final String myString;
private int myOffset = -1;
- private int myWidth;
+ private final int myWidth;
private T myItem;
private BreadcrumbsComponent myLine;
private boolean mySelected;
@@ -552,6 +563,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
myLine = line;
}
+ @Override
public void performAction(final int modifiers) {
if (myForward) {
myLine.nextPage();
@@ -567,10 +579,12 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
super(null, width);
}
+ @Override
public void paint(@NotNull final Graphics2D g2, @NotNull final Painter painter, final int height, final int pageOffset) {
// does nothing
}
+ @Override
public void performAction(final int modifiers) {
// does nothing
}
@@ -632,6 +646,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
return DEFAULT_BG_COLOR;
}
+ @Override
@Nullable
Color getBackgroundColor(@NotNull final Crumb c) {
final BreadcrumbsItem item = c.getItem();
@@ -644,6 +659,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
return getBackgroundColor(c.isSelected(), c.isHovered(), c.isLight(), c instanceof NavigationCrumb);
}
+ @Override
@Nullable
Color getForegroundColor(@NotNull final Crumb c) {
if (c.isLight() && !c.isHovered() && !(c instanceof NavigationCrumb)) {
@@ -653,6 +669,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
return super.getForegroundColor(c);
}
+ @Override
@Nullable
Color getBorderColor(@NotNull final Crumb c) {
return (c.isLight() && !c.isHovered() && !(c instanceof NavigationCrumb)) ? LIGHT_BORDER_COLOR : DEFAULT_BORDER_COLOR;
@@ -687,6 +704,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
super(s);
}
+ @Override
public void paint(@NotNull final Crumb c, @NotNull final Graphics2D g2, final int height, final int pageOffset) {
final PainterSettings s = getSettings();
final Font oldFont = g2.getFont();
@@ -720,7 +738,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
String string = c.getString();
if (fm.stringWidth(string) > width) {
final int dotsWidth = fm.stringWidth("...");
- final StringBuffer sb = new StringBuffer();
+ final StringBuilder sb = new StringBuilder();
int length = 0;
for (int i = 0; i < string.length(); i++) {
final int charWidth = fm.charWidth(string.charAt(i));
@@ -741,6 +759,7 @@ public class BreadcrumbsComponent<T extends BreadcrumbsItem> extends JComponent
g2.setFont(oldFont);
}
+ @Override
@NotNull
Dimension getSize(@NotNull @NonNls final String s, @NotNull final FontMetrics fm, final int maxWidth) {
final int width = fm.stringWidth(s) + (ROUND_VALUE * 2);
diff --git a/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngElementDescriptor.java b/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngElementDescriptor.java
index 6abb42080052..08ada22129d9 100644
--- a/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngElementDescriptor.java
+++ b/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngElementDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ public class RelaxedHtmlFromRngElementDescriptor implements XmlElementDescriptor
myDelegate = delegate;
}
+ @Override
public XmlElementDescriptor getElementDescriptor(XmlTag childTag, XmlTag contextTag) {
XmlElementDescriptor elementDescriptor = myDelegate.getElementDescriptor(childTag, contextTag);
@@ -53,6 +54,7 @@ public class RelaxedHtmlFromRngElementDescriptor implements XmlElementDescriptor
return myDelegate.getDefaultName();
}
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(final XmlTag context) {
return ArrayUtil.mergeArrays(
myDelegate.getElementsDescriptors(context),
@@ -60,6 +62,7 @@ public class RelaxedHtmlFromRngElementDescriptor implements XmlElementDescriptor
);
}
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final XmlTag context) {
return RelaxedHtmlFromSchemaElementDescriptor.addAttrDescriptorsForFacelets(context, myDelegate.getAttributesDescriptors(context));
}
@@ -89,6 +92,7 @@ public class RelaxedHtmlFromRngElementDescriptor implements XmlElementDescriptor
return null;
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(String attributeName, final XmlTag context) {
final XmlAttributeDescriptor descriptor = myDelegate.getAttributeDescriptor(attributeName.toLowerCase(), context);
if (descriptor != null) return descriptor;
diff --git a/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngNSDescriptor.java b/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngNSDescriptor.java
index 984f50d0ec5a..7ceb911889fb 100644
--- a/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngNSDescriptor.java
+++ b/xml/relaxng/src/org/intellij/html/RelaxedHtmlFromRngNSDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@ import org.jetbrains.annotations.Nullable;
public class RelaxedHtmlFromRngNSDescriptor extends RngNsDescriptor implements RelaxedHtmlNSDescriptor {
private static final Logger LOG = Logger.getInstance("#org.intellij.html.RelaxedHtmlFromRngNSDescriptor");
+ @Override
public XmlElementDescriptor getElementDescriptor(@NotNull XmlTag tag) {
XmlElementDescriptor elementDescriptor = super.getElementDescriptor(tag);
@@ -61,6 +62,7 @@ public class RelaxedHtmlFromRngNSDescriptor extends RngNsDescriptor implements R
return new RelaxedHtmlFromRngElementDescriptor(descriptor);
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable final XmlDocument doc) {
return ArrayUtil.mergeArrays(super.getRootElementsDescriptors(doc), HtmlUtil.getCustomTagDescriptors(doc));
diff --git a/xml/relaxng/src/org/intellij/html/RngHtml5MetaDataContributor.java b/xml/relaxng/src/org/intellij/html/RngHtml5MetaDataContributor.java
index 5bdfd431849b..a367deb4f254 100644
--- a/xml/relaxng/src/org/intellij/html/RngHtml5MetaDataContributor.java
+++ b/xml/relaxng/src/org/intellij/html/RngHtml5MetaDataContributor.java
@@ -48,10 +48,12 @@ public class RngHtml5MetaDataContributor implements MetaDataContributor {
super(namespaces);
}
+ @Override
public boolean isClassAcceptable(Class hintClass) {
return ReflectionUtil.isAssignable(RncDocument.class, hintClass);
}
+ @Override
public boolean isAcceptable(Object element, PsiElement context) {
if (!(element instanceof RncDocument)) {
return false;
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/ApplicationLoader.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/ApplicationLoader.java
index 8b812f3f4542..ea44c0c9dd2c 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/ApplicationLoader.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/ApplicationLoader.java
@@ -51,12 +51,14 @@ public class ApplicationLoader implements ApplicationComponent {
private static final String VALIDATE_XML = "ValidateXml";
public static final String RNG_NAMESPACE = "http://relaxng.org/ns/structure/1.0";
+ @Override
@NonNls
@NotNull
public String getComponentName() {
return "Relax-NG";
}
+ @Override
public void initComponent() {
registerMetaData();
@@ -84,6 +86,7 @@ public class ApplicationLoader implements ApplicationComponent {
RngNsDescriptor.class);
registrar.registerMetaData(new ElementFilter() {
+ @Override
public boolean isAcceptable(Object element, PsiElement context) {
if (element instanceof XmlTag) {
final XmlTag tag = (XmlTag)element;
@@ -93,12 +96,14 @@ public class ApplicationLoader implements ApplicationComponent {
return false;
}
+ @Override
public boolean isClassAcceptable(Class hintClass) {
return XmlTag.class.isAssignableFrom(hintClass);
}
}, RngDefineMetaData.class);
}
+ @Override
public void disposeComponent() {
}
@@ -110,6 +115,7 @@ public class ApplicationLoader implements ApplicationComponent {
}
public static class ResourceProvider implements StandardResourceProvider {
+ @Override
public void registerResources(ResourceRegistrar registrar) {
registrar.addStdResource(RNG_NAMESPACE, "/resources/relaxng.rng", getClass());
registrar.addIgnoredResource("http://relaxng.org/ns/compatibility/annotations/1.0");
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/GotoSymbolContributor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/GotoSymbolContributor.java
index 48e001bf40f6..7fac0831a136 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/GotoSymbolContributor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/GotoSymbolContributor.java
@@ -32,11 +32,13 @@ import java.util.Collection;
*/
public class GotoSymbolContributor implements ChooseByNameContributor {
+ @Override
@NotNull
public NavigationItem[] getItemsByName(String name, String pattern, Project project, boolean includeNonProjectItems) {
return RelaxSymbolIndex.getSymbolsByName(name, project, includeNonProjectItems);
}
+ @Override
@NotNull
public String[] getNames(Project project, boolean includeNonProjectItems) {
final Collection<String> names = RelaxSymbolIndex.getSymbolNames(project);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/RelaxNGReferenceContributor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/RelaxNGReferenceContributor.java
index 216271f46494..c9317dd79ac4 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/RelaxNGReferenceContributor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/RelaxNGReferenceContributor.java
@@ -1,14 +1,27 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package org.intellij.plugins.relaxNG;
import com.intellij.patterns.XmlNamedElementPattern;
import com.intellij.psi.PsiReferenceContributor;
import com.intellij.psi.PsiReferenceRegistrar;
import com.intellij.psi.filters.position.PatternFilter;
-import com.intellij.psi.xml.XmlTag;
import com.intellij.xml.util.XmlUtil;
import org.intellij.plugins.relaxNG.references.PrefixReferenceProvider;
-import static com.intellij.patterns.StandardPatterns.string;
import static com.intellij.patterns.XmlPatterns.*;
/**
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDocumentationProvider.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDocumentationProvider.java
index de71f0d8126f..fe15a25f8b75 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDocumentationProvider.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDocumentationProvider.java
@@ -50,6 +50,7 @@ public class RngDocumentationProvider implements DocumentationProvider {
@NonNls
private static final String COMPATIBILITY_ANNOTATIONS_1_0 = "http://relaxng.org/ns/compatibility/annotations/1.0";
+ @Override
@Nullable
public String generateDoc(PsiElement element, @Nullable PsiElement originalElement) {
final XmlElement c = PsiTreeUtil.getParentOfType(originalElement, XmlTag.class, XmlAttribute.class);
@@ -133,21 +134,25 @@ public class RngDocumentationProvider implements DocumentationProvider {
return null;
}
+ @Override
@Nullable
public PsiElement getDocumentationElementForLink(PsiManager psiManager, String link, PsiElement context) {
return null;
}
+ @Override
@Nullable
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) {
return null;
}
+ @Override
@Nullable
public String getQuickNavigateInfo(PsiElement element, PsiElement originalElement) {
return null;
}
+ @Override
public List<String> getUrlFor(PsiElement element, PsiElement originalElement) {
return null;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDomFileDescription.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDomFileDescription.java
index 7e1e2a2313e3..236b03d399ae 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDomFileDescription.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/RngDomFileDescription.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package org.intellij.plugins.relaxNG;
import com.intellij.util.xml.DomFileDescription;
@@ -14,10 +29,12 @@ public class RngDomFileDescription<T> extends DomFileDescription<T> {
registerNamespacePolicy("RELAX-NG", ApplicationLoader.RNG_NAMESPACE);
}
+ @Override
public boolean isAutomaticHighlightingEnabled() {
return true;
}
+ @Override
public DomElementsAnnotator createAnnotator() {
return new ModelAnnotator();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncCompletionData.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncCompletionData.java
index c83739307839..9b2053d25416 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncCompletionData.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncCompletionData.java
@@ -52,10 +52,12 @@ public class RncCompletionData extends CompletionData {
final CompletionVariant variant = new CompletionVariant(new AndFilter(
new ElementFilter() {
+ @Override
public boolean isAcceptable(Object element, PsiElement context) {
return true;
}
+ @Override
public boolean isClassAcceptable(Class hintClass) {
return PsiElement.class.isAssignableFrom(hintClass);
}
@@ -97,8 +99,10 @@ public class RncCompletionData extends CompletionData {
private static final String[] PATTERN_KEYWORDS = new String[]{ "attribute", "element", "grammar",
"notAllowed", "text", "empty", "external", "parent", "list", "mixed" };
+ @Override
public Object[] get(PsiElement context, CompletionContext completionContext) {
return ContainerUtil.map2Array(doGetKeywords(context), LookupElement.class, new Function<String, LookupElement>() {
+ @Override
public LookupElement fun(String s) {
return TailTypeDecorator.withTail(LookupElementBuilder.create(s).bold(), TailType.SPACE);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypeEx.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypeEx.java
index 76274c567a9e..6f3af07813a6 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypeEx.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypeEx.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@ class RncElementTypeEx<C extends RncElement> extends RncElementType implements N
}
}
+ @Override
@NotNull
public final C fun(ASTNode node) {
try {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypes.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypes.java
index 7454d6926d84..95a6b22bcff3 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypes.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncElementTypes.java
@@ -17,7 +17,6 @@
package org.intellij.plugins.relaxNG.compact;
import com.intellij.psi.tree.IElementType;
-import com.intellij.psi.tree.IFileElementType;
import org.intellij.plugins.relaxNG.compact.psi.*;
import org.intellij.plugins.relaxNG.compact.psi.impl.*;
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncFileType.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncFileType.java
index 4e5a50121938..eb7e763fc9d2 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncFileType.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncFileType.java
@@ -41,23 +41,27 @@ public class RncFileType extends LanguageFileType {
super(RngCompactLanguage.INSTANCE);
}
+ @Override
@NotNull
@NonNls
public String getName() {
return "RNG Compact";
}
+ @Override
@NotNull
public String getDescription() {
return "RELAX NG Compact Syntax";
}
+ @Override
@NotNull
@NonNls
public String getDefaultExtension() {
return "rnc";
}
+ @Override
@Nullable
public Icon getIcon() {
return AllIcons.FileTypes.Text;
@@ -68,6 +72,7 @@ public class RncFileType extends LanguageFileType {
}
public static class Factory extends FileTypeFactory {
+ @Override
public void createFileTypes(@NotNull FileTypeConsumer fileTypeConsumer) {
fileTypeConsumer.consume(INSTANCE, RNC_EXT);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncHighlighter.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncHighlighter.java
index f73aa00751f9..fb1fccc27346 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncHighlighter.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncHighlighter.java
@@ -35,6 +35,7 @@ import java.util.Map;
* Date: 04.08.2007
*/
public class RncHighlighter extends SyntaxHighlighterBase {
+ @Override
@NotNull
public Lexer getHighlightingLexer() {
return new CompactSyntaxLexerAdapter();
@@ -69,6 +70,7 @@ public class RncHighlighter extends SyntaxHighlighterBase {
ourMap1.put(RncTokenTypes.ILLEGAL_CHAR, HighlighterColors.BAD_CHARACTER);
}
+ @Override
@NotNull
public TextAttributesKey[] getTokenHighlights(IElementType tokenType) {
return pack(ourMap1.get(tokenType));
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncParserDefinition.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncParserDefinition.java
index 431b40e345b0..3d16fa2d8257 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncParserDefinition.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncParserDefinition.java
@@ -45,34 +45,41 @@ public class RncParserDefinition implements ParserDefinition {
public static final IFileElementType FILE_ELEMENT_TYPE = new IFileElementType(RngCompactLanguage.INSTANCE);
private static final TokenSet myCommentTypes = TokenSet.orSet(RncTokenTypes.COMMENTS, RncTokenTypes.DOC_TOKENS);
+ @Override
@NotNull
public Lexer createLexer(Project project) {
return new CompactSyntaxLexerAdapter();
}
+ @Override
public PsiParser createParser(Project project) {
return new RncParser();
}
+ @Override
public IFileElementType getFileNodeType() {
return FILE_ELEMENT_TYPE;
}
+ @Override
@NotNull
public TokenSet getWhitespaceTokens() {
return TokenSet.create(TokenType.WHITE_SPACE);
}
+ @Override
@NotNull
public TokenSet getCommentTokens() {
return myCommentTypes;
}
+ @Override
@NotNull
public TokenSet getStringLiteralElements() {
return TokenSet.create(RncTokenTypes.LITERAL);
}
+ @Override
@NotNull
@SuppressWarnings({ "unchecked" })
public PsiElement createElement(ASTNode node) {
@@ -85,10 +92,12 @@ public class RncParserDefinition implements ParserDefinition {
return new MyRncElement(node);
}
+ @Override
public PsiFile createFile(FileViewProvider viewProvider) {
return new RncFileImpl(viewProvider);
}
+ @Override
public SpaceRequirements spaceExistanceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}
@@ -98,6 +107,7 @@ public class RncParserDefinition implements ParserDefinition {
super(node);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitElement(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncTokenTypes.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncTokenTypes.java
index dd3fb641b6db..b1faabd693a2 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncTokenTypes.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/RncTokenTypes.java
@@ -79,6 +79,7 @@ public class RncTokenTypes {
assert !ourTokenTypes.isEmpty();
final Ref<IElementType> ref = new Ref<IElementType>();
ourTokenTypes.forEachValue(new TObjectProcedure<IElementType>() {
+ @Override
public boolean execute(IElementType iElementType) {
if (iElementType.toString().equals(name)) {
ref.set(iElementType);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/folding/RncFoldingBuilder.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/folding/RncFoldingBuilder.java
index 94ddafe1aa76..457f64ac8713 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/folding/RncFoldingBuilder.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/folding/RncFoldingBuilder.java
@@ -41,6 +41,7 @@ import java.util.ArrayList;
* Date: 10.08.2007
*/
public class RncFoldingBuilder implements FoldingBuilder {
+ @Override
@NotNull
public FoldingDescriptor[] buildFoldRegions(@NotNull ASTNode node, @NotNull Document document) {
@@ -52,6 +53,7 @@ public class RncFoldingBuilder implements FoldingBuilder {
: FoldingDescriptor.EMPTY;
}
+ @Override
public String getPlaceholderText(@NotNull ASTNode node) {
final IElementType type = node.getElementType();
if (type == RncTokenTypes.LBRACE) {
@@ -79,6 +81,7 @@ public class RncFoldingBuilder implements FoldingBuilder {
return RncTokenTypes.COMMENTS.contains(type) || RncTokenTypes.DOC_TOKENS.contains(type);
}
+ @Override
public boolean isCollapsedByDefault(@NotNull ASTNode node) {
return isCommentLike(node.getElementType()) && CodeFoldingSettings.getInstance().COLLAPSE_DOC_COMMENTS;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncBlock.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncBlock.java
index 5b466ed87413..025a5c4edbd3 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncBlock.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncBlock.java
@@ -40,11 +40,13 @@ class RncBlock implements Block {
myNode = element;
}
+ @Override
@NotNull
public TextRange getTextRange() {
return myNode.getTextRange();
}
+ @Override
@NotNull
public List<Block> getSubBlocks() {
final List<Block> list = new ArrayList<Block>();
@@ -58,12 +60,14 @@ class RncBlock implements Block {
return list;
}
+ @Override
@Nullable
public Wrap getWrap() {
// TODO
return null;
}
+ @Override
@Nullable
public Indent getIndent() {
if (isTopLevel()) {
@@ -82,12 +86,14 @@ class RncBlock implements Block {
parent instanceof RncGrammar && parent.getParent() instanceof RncDocument;
}
+ @Override
@Nullable
public Alignment getAlignment() {
// TODO
return null;
}
+ @Override
@Nullable
public Spacing getSpacing(Block child1, @NotNull Block child2) {
if (child1 == null) {
@@ -113,16 +119,19 @@ class RncBlock implements Block {
return Spacing.createSpacing(0, Integer.MAX_VALUE, 1, true, 100);
}
+ @Override
@NotNull
public ChildAttributes getChildAttributes(int newChildIndex) {
return new ChildAttributes(null, null);
}
+ @Override
public boolean isIncomplete() {
// TODO
return false;
}
+ @Override
public boolean isLeaf() {
// TODO
return false;
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncFormattingModelBuilder.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncFormattingModelBuilder.java
index 1861127d4b57..e7e4fa898b3f 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncFormattingModelBuilder.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/formatting/RncFormattingModelBuilder.java
@@ -27,11 +27,13 @@ import com.intellij.psi.codeStyle.CodeStyleSettings;
import org.jetbrains.annotations.NotNull;
public class RncFormattingModelBuilder implements FormattingModelBuilder {
+ @Override
@NotNull
public FormattingModel createModel(PsiElement element, CodeStyleSettings settings) {
return FormattingModelProvider.createFormattingModelForPsiFile(element.getContainingFile(), new RncBlock(element.getNode()), settings);
}
+ @Override
public TextRange getRangeAffectingIndent(PsiFile file, int offset, ASTNode elementAtOffset) {
// TODO
return null;
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/lexer/CompactSyntaxLexerAdapter.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/lexer/CompactSyntaxLexerAdapter.java
index b6911ccd79f4..f967b4333f2b 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/lexer/CompactSyntaxLexerAdapter.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/lexer/CompactSyntaxLexerAdapter.java
@@ -71,6 +71,7 @@ public class CompactSyntaxLexerAdapter extends LexerBase {
private int myEndOffset;
private TIntIntHashMap myLengthMap;
+ @Override
public void advance() {
try {
myCurrentToken = nextToken();
@@ -137,10 +138,12 @@ public class CompactSyntaxLexerAdapter extends LexerBase {
return myBuffer;
}
+ @Override
public int getBufferEnd() {
return myEndOffset;
}
+ @Override
public int getState() {
try {
return (Integer)myStateField.get(myLexer);
@@ -149,14 +152,17 @@ public class CompactSyntaxLexerAdapter extends LexerBase {
}
}
+ @Override
public int getTokenEnd() {
return myCurrentEnd;
}
+ @Override
public int getTokenStart() {
return myCurrentToken == null ? 0 : myCurrentOffset;
}
+ @Override
@Nullable
public IElementType getTokenType() {
if (myCurrentToken == null) {
@@ -174,6 +180,7 @@ public class CompactSyntaxLexerAdapter extends LexerBase {
init(startOffset, endOffset, reader, initialState);
}
+ @Override
@SuppressWarnings("IOResourceOpenedButNotSafelyClosed")
public void start(@NotNull CharSequence buffer, int startOffset, int endOffset, int initialState) {
myBuffer = buffer;
@@ -250,9 +257,11 @@ public class CompactSyntaxLexerAdapter extends LexerBase {
myCurPos = startOffset;
}
+ @Override
public void close() {
}
+ @Override
public int read(char[] cbuf, int off, int len) {
if ((off < 0) || (off > cbuf.length) || (len < 0) || ((off + len) > cbuf.length) || ((off + len) < 0)) {
throw new IndexOutOfBoundsException();
@@ -278,6 +287,7 @@ public class CompactSyntaxLexerAdapter extends LexerBase {
return charsToCopy;
}
+ @Override
public int read() {
if (myCurPos >= myEndOffset) return -1;
return myText.charAt(myCurPos++);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/PatternParsing.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/PatternParsing.java
index 7fff0c3d0627..68b8dc2e5059 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/PatternParsing.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/PatternParsing.java
@@ -56,6 +56,7 @@ public class PatternParsing extends DeclarationParsing {
parseTopLevel();
}
+ @Override
protected boolean parsePattern() {
PsiBuilder.Marker marker = myBuilder.mark();
if (!parseQuantifiedPattern()) {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/RncParser.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/RncParser.java
index 799b9ebbdc26..331e186baff5 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/RncParser.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/parser/RncParser.java
@@ -30,6 +30,7 @@ import org.jetbrains.annotations.NotNull;
*/
public class RncParser implements PsiParser {
+ @Override
@NotNull
public ASTNode parse(IElementType root, PsiBuilder builder) {
final PsiBuilder.Marker fileMarker = builder.mark();
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncDefine.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncDefine.java
index b1c3120aaf0d..929307dbbda3 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncDefine.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncDefine.java
@@ -26,6 +26,7 @@ import org.jetbrains.annotations.Nullable;
* Date: 13.08.2007
*/
public interface RncDefine extends RncPattern, PsiNamedElement, Define<RncPattern, RncElement> {
+ @Override
@Nullable
RncPattern getPattern();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncGrammar.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncGrammar.java
index 55f56507e3d5..fe3ae1763692 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncGrammar.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncGrammar.java
@@ -25,6 +25,7 @@ import org.jetbrains.annotations.Nullable;
* Date: 13.08.2007
*/
public interface RncGrammar extends RncElement, Grammar<RncPattern, RncElement> {
+ @Override
@Nullable
RncPattern getStart();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncInclude.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncInclude.java
index f4736a15fb1f..97bfc746109e 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncInclude.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncInclude.java
@@ -25,6 +25,7 @@ import org.jetbrains.annotations.NotNull;
* Date: 11.08.2007
*/
public interface RncInclude extends RncFileReference, Include<RncElement, RncDefine> {
+ @Override
@NotNull
RncDefine[] getOverrides();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncRef.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncRef.java
index 6cb9d83c4d6d..5fc1ef8aad63 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncRef.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/RncRef.java
@@ -25,9 +25,11 @@ import org.jetbrains.annotations.Nullable;
* Date: 11.08.2007
*/
public interface RncRef extends RncPattern, Ref<RncDefine, RncElement> {
+ @Override
@Nullable
RncDefine getPattern();
+ @Override
@Nullable
String getReferencedName();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/PatternReference.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/PatternReference.java
index b32f7a7ae37c..cffc06c68a8d 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/PatternReference.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/PatternReference.java
@@ -58,6 +58,7 @@ class PatternReference extends PsiReferenceBase.Poly<RncRef> implements Function
super(ref);
}
+ @Override
public TextRange getRangeInElement() {
final ASTNode node = findNameNode();
if (node == null) return TextRange.from(0, 0);
@@ -71,12 +72,14 @@ class PatternReference extends PsiReferenceBase.Poly<RncRef> implements Function
return node.findChildByType(RncTokenTypes.IDENTIFIERS);
}
+ @Override
@Nullable
public PsiElement resolve() {
final ResolveResult[] results = multiResolve(false);
return results.length == 1 ? results[0].getElement() : null;
}
+ @Override
@NotNull
public ResolveResult[] multiResolve(boolean incompleteCode) {
final RncGrammar scope = getScope();
@@ -90,13 +93,16 @@ class PatternReference extends PsiReferenceBase.Poly<RncRef> implements Function
return ContainerUtil.map2Array(set, ResolveResult.class, this);
}
+ @Override
public ResolveResult fun(Define rncDefine) {
final PsiElement element = rncDefine.getPsiElement();
return element != null ? new PsiElementResolveResult(element) : new ResolveResult() {
+ @Override
@Nullable
public PsiElement getElement() {
return null;
}
+ @Override
public boolean isValidResult() {
return false;
}
@@ -108,12 +114,14 @@ class PatternReference extends PsiReferenceBase.Poly<RncRef> implements Function
return PsiTreeUtil.getParentOfType(myElement, RncGrammar.class, true, PsiFile.class);
}
+ @Override
@NotNull
public String getCanonicalText() {
final ASTNode node = findNameNode();
return node != null ? EscapeUtil.unescapeText(node) : "";
}
+ @Override
public PsiElement handleElementRename(String newElementName) throws IncorrectOperationException {
final ASTNode newNode = RenameUtil.createIdentifierNode(getElement().getManager(), newElementName);
@@ -122,10 +130,12 @@ class PatternReference extends PsiReferenceBase.Poly<RncRef> implements Function
return getElement();
}
+ @Override
public PsiElement bindToElement(@NotNull PsiElement element) throws IncorrectOperationException {
throw new UnsupportedOperationException();
}
+ @Override
@NotNull
public Object[] getVariants() {
final RncGrammar scope = getScope();
@@ -137,16 +147,19 @@ class PatternReference extends PsiReferenceBase.Poly<RncRef> implements Function
if (map == null || map.size() == 0) return ArrayUtil.EMPTY_OBJECT_ARRAY;
return ContainerUtil.mapNotNull(map.values(), new Function<Set<Define>, Object>() {
+ @Override
public Object fun(Set<Define> defines) {
return defines.size() == 0 ? null : defines.iterator().next().getPsiElement();
}
}).toArray();
}
+ @Override
public boolean isSoft() {
return false;
}
+ @Override
@NotNull
public String getUnresolvedMessagePattern() {
return "Unresolved pattern reference ''{0}''";
@@ -174,6 +187,7 @@ class PatternReference extends PsiReferenceBase.Poly<RncRef> implements Function
return "Create Pattern '" + myReference.getCanonicalText() + "'";
}
+ @Override
@NotNull
public String getFamilyName() {
return "Create Pattern";
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncAnnotationImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncAnnotationImpl.java
index 986763c21af4..c1bfabc51fd2 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncAnnotationImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncAnnotationImpl.java
@@ -34,14 +34,17 @@ public class RncAnnotationImpl extends RncElementImpl implements RncAnnotation {
super(node);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitAnnotation(this);
}
+ @Override
public IElementType getTokenType() {
return getNode().getElementType();
}
+ @Override
@Nullable
public RncName getNameElement() {
return findChildByClass(RncName.class);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDeclImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDeclImpl.java
index e7f386833bea..89694bd31d85 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDeclImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDeclImpl.java
@@ -37,11 +37,13 @@ public class RncDeclImpl extends RncElementImpl implements RncDecl {
super(node);
}
+ @Override
public String getPrefix() {
final ASTNode ns = findIdentifierNode();
return ns != null ? EscapeUtil.unescapeText(ns) : null;
}
+ @Override
public String getDeclaredNamespace() {
final ASTNode ns = getNode().findChildByType(RncTokenTypes.LITERAL);
return ns != null ? EscapeUtil.parseLiteralValue(ns) : null;
@@ -74,6 +76,7 @@ public class RncDeclImpl extends RncElementImpl implements RncDecl {
return s != null ? s : "";
}
+ @Override
public PsiElement setName(@NonNls @NotNull String name) throws IncorrectOperationException {
final ASTNode node = findIdentifierNode();
if (node == null) return this;
@@ -81,6 +84,7 @@ public class RncDeclImpl extends RncElementImpl implements RncDecl {
return this;
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitElement(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDefineImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDefineImpl.java
index eca900114f6c..b365b32bcf0b 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDefineImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDefineImpl.java
@@ -51,10 +51,12 @@ public class RncDefineImpl extends RncElementImpl implements RncDefine, PsiMetaO
super(node);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitDefine(this);
}
+ @Override
public void accept(Visitor visitor) {
visitor.visitDefine(this);
}
@@ -65,6 +67,7 @@ public class RncDefineImpl extends RncElementImpl implements RncDefine, PsiMetaO
return EscapeUtil.unescapeText(node);
}
+ @Override
public PsiElement getNameElement() {
return getNameNode().getPsi();
}
@@ -76,25 +79,30 @@ public class RncDefineImpl extends RncElementImpl implements RncDefine, PsiMetaO
return node;
}
+ @Override
public PsiElement setName(@NonNls @NotNull String name) throws IncorrectOperationException {
final ASTNode node = getNameNode();
node.getTreeParent().replaceChild(node, RenameUtil.createIdentifierNode(getManager(), name));
return this;
}
+ @Override
@Nullable
public RncPattern getPattern() {
return findChildByClass(RncPattern.class);
}
+ @Override
public PsiReference getReference() {
if (getParent() instanceof RncInclude) {
final TextRange range = TextRange.from(0, getNameNode().getTextLength());
return new PsiReferenceBase<RncDefine>(this, range, true) {
+ @Override
public PsiElement resolve() {
return RncDefineImpl.this;
}
+ @Override
@NotNull
public Object[] getVariants() {
final RncInclude parent = (RncInclude)getParent();
@@ -118,6 +126,7 @@ public class RncDefineImpl extends RncElementImpl implements RncDefine, PsiMetaO
return super.getReference();
}
+ @Override
@Nullable
public Icon getIcon(int flags) {
return AllIcons.Nodes.Property;
@@ -127,6 +136,7 @@ public class RncDefineImpl extends RncElementImpl implements RncDefine, PsiMetaO
return true;
}
+ @Override
@Nullable
public PsiMetaData getMetaData() {
return new MyMetaData();
@@ -137,32 +147,39 @@ public class RncDefineImpl extends RncElementImpl implements RncDefine, PsiMetaO
return false;
}*/
+ @Override
@Nullable
public Icon getIcon() {
return RncDefineImpl.this.getIcon(0);
}
+ @Override
public String getTypeName() {
return "Pattern Definition";
}
+ @Override
public PsiElement getDeclaration() {
return RncDefineImpl.this;
}
+ @Override
@NonNls
public String getName(PsiElement context) {
return RncDefineImpl.this.getName();
}
+ @Override
@NonNls
public String getName() {
return RncDefineImpl.this.getName();
}
+ @Override
public void init(PsiElement element) {
}
+ @Override
public Object[] getDependences() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDivImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDivImpl.java
index 2568918dcf1b..15ce79f1551e 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDivImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDivImpl.java
@@ -31,6 +31,7 @@ public class RncDivImpl extends RncElementImpl implements RncDiv {
super(node);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitDiv(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDocument.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDocument.java
index ea549635847a..1c91dabd4d70 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDocument.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncDocument.java
@@ -35,27 +35,33 @@ public class RncDocument extends RncElementImpl implements XmlDocument {
super(node);
}
+ @Override
public XmlNSDescriptor getDefaultNSDescriptor(String namespace, boolean strict) {
return null;
}
+ @Override
public XmlProlog getProlog() {
return null;
}
+ @Override
@Nullable
public XmlTag getRootTag() {
return null;
}
+ @Override
public XmlNSDescriptor getRootTagNSDescriptor() {
return null;
}
+ @Override
public boolean processElements(PsiElementProcessor processor, PsiElement place) {
return false;
}
+ @Override
@Nullable
public PsiMetaData getMetaData() {
return MetaRegistry.getMeta(this);
@@ -75,6 +81,7 @@ public class RncDocument extends RncElementImpl implements XmlDocument {
return super.findChildrenByClass(aClass);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitElement(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncElementImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncElementImpl.java
index 7c1819c9e5e0..9c7e14d7516e 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncElementImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncElementImpl.java
@@ -91,6 +91,7 @@ public abstract class RncElementImpl extends ASTWrapperPsiElement implements Rnc
}
}
+ @Override
public final void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof RncElementVisitor) {
accept((RncElementVisitor)visitor);
@@ -116,10 +117,12 @@ public abstract class RncElementImpl extends ASTWrapperPsiElement implements Rnc
public abstract void accept(@NotNull RncElementVisitor visitor);
+ @Override
public void accept(Visitor visitor) {
visitor.visitElement(this);
}
+ @Override
public void acceptChildren(Visitor visitor) {
final PsiElement[] elements = getChildren();
//noinspection ForLoopReplaceableByForEach
@@ -131,6 +134,7 @@ public abstract class RncElementImpl extends ASTWrapperPsiElement implements Rnc
}
}
+ @Override
public RncElement getPsiElement() {
return this;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncExternalRefImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncExternalRefImpl.java
index 51ec6ada276d..b43b0fa6f59a 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncExternalRefImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncExternalRefImpl.java
@@ -31,6 +31,7 @@ public class RncExternalRefImpl extends RncFileReferenceImpl implements RncExter
super(node);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitExternalRef(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileImpl.java
index 497c74f736db..0bc22c5f407b 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileImpl.java
@@ -51,11 +51,13 @@ public class RncFileImpl extends PsiFileBase implements RncFile, XmlFile {
super(viewProvider, RngCompactLanguage.INSTANCE);
}
+ @Override
@NotNull
public FileType getFileType() {
return RncFileType.getInstance();
}
+ @Override
@NotNull
public XmlDocument getDocument() {
// this needs to be a seperate child element because of com.intellij.util.xml.impl.ExternalChangeProcessor.visitDocumentChanged()
@@ -108,10 +110,12 @@ public class RncFileImpl extends PsiFileBase implements RncFile, XmlFile {
return getDocument().addBefore(element, anchor);
}
+ @Override
public boolean processElements(PsiElementProcessor processor, PsiElement place) {
return false;
}
+ @Override
public GlobalSearchScope getFileResolveScope() {
return ProjectScope.getAllScope(getProject());
}
@@ -126,10 +130,12 @@ public class RncFileImpl extends PsiFileBase implements RncFile, XmlFile {
return getClass().getSimpleName() + ":" + getName();
}
+ @Override
public RncDecl[] getDeclarations() {
return ((RncDocument)getDocument()).findChildrenByClass(RncDecl.class);
}
+ @Override
public RncGrammar getGrammar() {
final XmlDocument document = getDocument();
return ((RncDocument)document).getGrammar();
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileReferenceImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileReferenceImpl.java
index f5c3419b6452..c2a32421554d 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileReferenceImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncFileReferenceImpl.java
@@ -60,6 +60,7 @@ abstract class RncFileReferenceImpl extends RncElementImpl implements RncFileRef
return FileReferenceUtil.restrict(set, FileReferenceUtil.byType(RncFileType.getInstance()));
}
+ @Override
public RncFile getReferencedFile() {
final String href = getFileReference();
if (href != null) {
@@ -71,6 +72,7 @@ abstract class RncFileReferenceImpl extends RncElementImpl implements RncFileRef
return null;
}
+ @Override
@Nullable
public String getFileReference() {
final ASTNode element = getNode().findChildByType(RncTokenTypes.LITERAL);
@@ -79,6 +81,7 @@ abstract class RncFileReferenceImpl extends RncElementImpl implements RncFileRef
return s.substring(1, s.length() - 1);
}
+ @Override
public TextRange getReferenceRange() {
final ASTNode literal = getNode().findChildByType(RncTokenTypes.LITERAL);
if (literal == null) return TextRange.from(0, 0);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncGrammarImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncGrammarImpl.java
index ab0987f53d83..6055bba05fcc 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncGrammarImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncGrammarImpl.java
@@ -36,14 +36,17 @@ public class RncGrammarImpl extends RncElementImpl implements RncGrammar {
super(node);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitGrammar(this);
}
+ @Override
public void accept(Visitor visitor) {
visitor.visitGrammar(this);
}
+ @Override
public RncPattern getStart() {
final ASTNode node = getNode().findChildByType(RncElementTypes.START);
return node != null ? (RncPattern)node.getPsi() : null;
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncIncludeImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncIncludeImpl.java
index 7c967bbc522d..0e7b9de2be75 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncIncludeImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncIncludeImpl.java
@@ -47,6 +47,7 @@ public class RncIncludeImpl extends RncFileReferenceImpl implements RncInclude {
return super.processDeclarations(processor, substitutor, lastParent, place);
}
+ @Override
public void accept(@NotNull RncElementVisitor visitor) {
visitor.visitInclude(this);
}
@@ -56,10 +57,12 @@ public class RncIncludeImpl extends RncFileReferenceImpl implements RncInclude {
visitor.visitInclude(this);
}
+ @Override
public PsiFile getInclude() {
return getReferencedFile();
}
+ @Override
@NotNull
public RncDefine[] getOverrides() {
// TODO: DIVs?
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncNsDeclImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncNsDeclImpl.java
index 4de51d47d6ef..dfcee263fa19 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncNsDeclImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncNsDeclImpl.java
@@ -30,6 +30,7 @@ public class RncNsDeclImpl extends RncDeclImpl implements RncNsDecl {
super(node);
}
+ @Override
public boolean isDefault() {
return getNode().findChildByType(RncTokenTypes.KEYWORD_DEFAULT) != null;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncRefImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncRefImpl.java
index c1902406b5ee..743f9dff4192 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncRefImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/impl/RncRefImpl.java
@@ -36,6 +36,7 @@ public class RncRefImpl extends RncElementImpl implements RncRef {
super(node);
}
+ @Override
@Nullable
public RncDefine getPattern() {
final PsiReference ref = getReference();
@@ -43,6 +44,7 @@ public class RncRefImpl extends RncElementImpl implements RncRef {
return ref instanceof PatternReference ? (RncDefine)ref.resolve() : null;
}
+ @Override
public String getReferencedName() {
final ASTNode node = findNameNode();
assert node != null;
@@ -58,6 +60,7 @@ public class RncRefImpl extends RncElementImpl implements RncRef {
visitor.visitRef(this);
}
+ @Override
public void accept(Visitor visitor) {
visitor.visitRef(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/PsiFunction.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/PsiFunction.java
index ce3a96afce18..2abee8424c93 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/PsiFunction.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/PsiFunction.java
@@ -29,6 +29,7 @@ import org.jetbrains.annotations.NotNull;
public final class PsiFunction implements NotNullFunction<ASTNode, PsiElement> {
public static final PsiFunction INSTANCE = new PsiFunction();
+ @Override
@NotNull
public PsiElement fun(ASTNode astNode) {
return astNode.getPsi();
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/RenameUtil.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/RenameUtil.java
index 5261d48a57ce..38ae3ed4e3d2 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/RenameUtil.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/compact/psi/util/RenameUtil.java
@@ -39,7 +39,7 @@ import java.util.Set;
*/
public class RenameUtil {
- private static Set<String> ourRncKeywords = new HashSet<String>();
+ private static final Set<String> ourRncKeywords = new HashSet<String>();
static {
Collections.addAll(ourRncKeywords, "attribute", "default", "datatypes", "div", "element", "empty", "external",
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigImpl.java
index d36c4b73862b..09b30b48e5d5 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigImpl.java
@@ -67,17 +67,20 @@ class NoNamespaceConfigImpl extends NoNamespaceConfig implements PersistentState
return null;
}
+ @Override
@Nullable
public String getMapping(@NotNull PsiFile file) {
final VirtualFilePointer pointer = getMappedPointer(file);
return pointer != null ? pointer.getUrl() : null;
}
+ @Override
public VirtualFile getMappedFile(@NotNull PsiFile file) {
final VirtualFilePointer url = getMappedPointer(file);
return url != null ? url.getFile() : null;
}
+ @Override
public void setMapping(@NotNull PsiFile file, String location) {
final VirtualFile virtualFile = file.getVirtualFile();
assert virtualFile != null;
@@ -102,24 +105,30 @@ class NoNamespaceConfigImpl extends NoNamespaceConfig implements PersistentState
}
}
+ @Override
public void initComponent() {
}
+ @Override
public void disposeComponent() {
}
+ @Override
@NotNull
public String getComponentName() {
return "RELAX-NG.NoNamespaceConfig";
}
+ @Override
public void projectOpened() {
}
+ @Override
public void projectClosed() {
reset();
}
+ @Override
public Mappings getState() {
final HashMap<String, String> map = new HashMap<String, String>();
for (Map.Entry<VirtualFilePointer, VirtualFilePointer> entry : myMappings.entrySet()) {
@@ -128,6 +137,7 @@ class NoNamespaceConfigImpl extends NoNamespaceConfig implements PersistentState
return new Mappings(map);
}
+ @Override
public void loadState(Mappings state) {
reset();
@@ -157,6 +167,7 @@ class NoNamespaceConfigImpl extends NoNamespaceConfig implements PersistentState
}
public static class HectorProvider implements HectorComponentPanelsProvider {
+ @Override
@Nullable
public HectorComponentPanel createConfigurable(@NotNull PsiFile file) {
if (file instanceof XmlFile) {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigPanel.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigPanel.java
index 690dac40a8c1..aaa0c9eb9fd4 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigPanel.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceConfigPanel.java
@@ -57,6 +57,7 @@ class NoNamespaceConfigPanel extends HectorComponentPanel {
myMapping = myConfig.getMapping(file);
final FileChooserDescriptor descriptor = new FileChooserDescriptor(true, false, false, false, false, false) {
+ @Override
public boolean isFileSelectable(VirtualFile file) {
final boolean b = super.isFileSelectable(file);
if (b) {
@@ -81,6 +82,7 @@ class NoNamespaceConfigPanel extends HectorComponentPanel {
final ComponentWithBrowseButton.BrowseFolderActionListener<JTextField> actionListener =
new ComponentWithBrowseButton.BrowseFolderActionListener<JTextField>("Select Schema", "Select a RELAX-NG file to associate with the document",
mySchemaFile, project, descriptor, TextComponentAccessor.TEXT_FIELD_WHOLE_TEXT) {
+ @Override
public void actionPerformed(ActionEvent e) {
myDialogOpen = true;
try {
@@ -94,20 +96,24 @@ class NoNamespaceConfigPanel extends HectorComponentPanel {
mySchemaFile.addActionListener(actionListener);
}
+ @Override
public boolean canClose() {
return super.canClose() && !myDialogOpen;
}
+ @Override
public JComponent createComponent() {
return myRoot;
}
+ @Override
public boolean isModified() {
final String s = mySchemaFile.getText();
final String m = myMapping != null ? myMapping : "";
return !s.equals(m);
}
+ @Override
public void apply() throws ConfigurationException {
final String s = getMapping();
if (s != null) {
@@ -122,10 +128,12 @@ class NoNamespaceConfigPanel extends HectorComponentPanel {
return s.length() > 0 ? VfsUtil.pathToUrl(s.replace(File.separatorChar, '/')) : null;
}
+ @Override
public void reset() {
mySchemaFile.setText(myMapping != null ? VfsUtil.urlToPath(myMapping).replace('/', File.separatorChar) : "");
}
+ @Override
public void disposeUIResources() {
// doesn't help - updating the validation needs a hard modification
// DaemonCodeAnalyzer.getInstance(myFile.getProject()).restart();
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceSchemaProvider.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceSchemaProvider.java
index db4054aca590..46cad56b8ad0 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceSchemaProvider.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/config/NoNamespaceSchemaProvider.java
@@ -34,6 +34,7 @@ import org.jetbrains.annotations.Nullable;
* Date: 22.11.2007
*/
public class NoNamespaceSchemaProvider extends XmlSchemaProvider {
+ @Override
@Nullable
public XmlFile getSchema(@NotNull @NonNls String url, @Nullable Module module, @NotNull PsiFile baseFile) {
if ("".equals(url)) {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedDtdOptions.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedDtdOptions.java
index 9e72a15ec849..1ce9d5fbba52 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedDtdOptions.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedDtdOptions.java
@@ -76,6 +76,7 @@ public class AdvancedDtdOptions implements AdvancedOptions {
public AdvancedDtdOptions() {
myInlineAttlistCheckBox.addItemListener(new ItemListener() {
+ @Override
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
myAttlistDefine.setEnabled(false);
@@ -89,6 +90,7 @@ public class AdvancedDtdOptions implements AdvancedOptions {
final DefaultActionGroup group = new DefaultActionGroup();
group.add(new AnAction(null, "Remove Entry", AllIcons.General.Remove) {
+ @Override
public void update(AnActionEvent e) {
if (myNamespaceMap.getModel().getRowCount() == 0 || myNamespaceMap.getSelectedRow() == -1) {
e.getPresentation().setEnabled(false);
@@ -97,6 +99,7 @@ public class AdvancedDtdOptions implements AdvancedOptions {
}
}
+ @Override
public void actionPerformed(AnActionEvent e) {
((NamespaceMapModel)myNamespaceMap.getModel()).removeRow(myNamespaceMap.getSelectedRow());
}
@@ -106,10 +109,12 @@ public class AdvancedDtdOptions implements AdvancedOptions {
myToolbar.add(toolbar.getComponent());
}
+ @Override
public JComponent getRoot() {
return myRoot;
}
+ @Override
public Map<String, ?> getOptions() {
final HashMap<String, Object> map = new LinkedHashMap<String, Object>();
@@ -147,6 +152,7 @@ public class AdvancedDtdOptions implements AdvancedOptions {
}
}
+ @Override
public void setOptions(Map<String, ?> inputOptions) {
if (inputOptions.containsKey(COLON_REPLACEMENT)) {
myColonReplacement.setText((String)inputOptions.get(COLON_REPLACEMENT));
@@ -189,6 +195,7 @@ public class AdvancedDtdOptions implements AdvancedOptions {
final HashMap<String, Object> map = new LinkedHashMap<String, Object>();
file.accept(new PsiRecursiveElementVisitor() {
+ @Override
public void visitElement(PsiElement element) {
if (element instanceof XmlElementDecl) {
final String s = ((XmlElementDecl)element).getName();
@@ -217,26 +224,32 @@ public class AdvancedDtdOptions implements AdvancedOptions {
private static class NamespaceMapModel extends AbstractTableModel {
private final List<String[]> myList = new ArrayList<String[]>();
+ @Override
public String getColumnName(int column) {
return column == 0 ? "Prefix" : "URI";
}
+ @Override
public int getRowCount() {
return myList.size();
}
+ @Override
public int getColumnCount() {
return 2;
}
+ @Override
public boolean isCellEditable(int rowIndex, int columnIndex) {
return columnIndex == 1;
}
+ @Override
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
myList.get(rowIndex)[columnIndex] = (String)aValue;
}
+ @Override
public Object getValueAt(int rowIndex, int columnIndex) {
return myList.get(rowIndex)[columnIndex];
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedOptionsDialog.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedOptionsDialog.java
index 9f6da66b1820..4a669af9ab5f 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedOptionsDialog.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedOptionsDialog.java
@@ -50,6 +50,7 @@ public class AdvancedOptionsDialog extends DialogWrapper {
init();
}
+ @Override
@Nullable
protected JComponent createCenterPanel() {
JComponent root;
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedXsdOptions.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedXsdOptions.java
index d29c7b29098e..ead97c9daa96 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedXsdOptions.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/AdvancedXsdOptions.java
@@ -42,10 +42,12 @@ public class AdvancedXsdOptions implements AdvancedOptions {
private ComboBox myAnyProcessContents;
private ComboBox myAnyAttributeProcessContents;
+ @Override
public JComponent getRoot() {
return myRoot;
}
+ @Override
public Map<String, ?> getOptions() {
final Map<String, Object> strings = new HashMap<String, Object>();
if (myDisableAbstractElements.isSelected()) {
@@ -56,6 +58,7 @@ public class AdvancedXsdOptions implements AdvancedOptions {
return strings;
}
+ @Override
public void setOptions(Map<String, ?> inputOptions) {
myDisableAbstractElements.setSelected(inputOptions.get(DISABLE_ABSTRACT_ELEMENTS) == Boolean.TRUE);
final Object o = inputOptions.get(ANY_PROCESS_CONTENTS);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaAction.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaAction.java
index 7aa3b2b795a0..ff71ae09e94f 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaAction.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaAction.java
@@ -19,7 +19,6 @@ package org.intellij.plugins.relaxNG.convert;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.CommonDataKeys;
-import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.fileTypes.FileType;
import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.project.Project;
@@ -43,6 +42,7 @@ import java.io.File;
*/
public class ConvertSchemaAction extends AnAction {
+ @Override
public void update(AnActionEvent e) {
final VirtualFile[] files = e.getData(CommonDataKeys.VIRTUAL_FILE_ARRAY);
final Project project = e.getData(CommonDataKeys.PROJECT);
@@ -93,6 +93,7 @@ public class ConvertSchemaAction extends AnAction {
return null;
}
+ @Override
public void actionPerformed(AnActionEvent e) {
final VirtualFile file = e.getData(CommonDataKeys.VIRTUAL_FILE);
final Project project = e.getData(CommonDataKeys.PROJECT);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaDialog.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaDialog.java
index b61f00b7a18c..d7f4b54263e8 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaDialog.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaDialog.java
@@ -45,6 +45,7 @@ public class ConvertSchemaDialog extends DialogWrapper implements PropertyChange
mySettings.addPropertyChangeListener(ConvertSchemaSettingsImpl.OUTPUT_PATH, this);
myAdvancedAction = new AbstractAction("Advanced...") {
+ @Override
public void actionPerformed(ActionEvent e) {
mySettings.showAdvancedSettings();
}
@@ -69,6 +70,7 @@ public class ConvertSchemaDialog extends DialogWrapper implements PropertyChange
return mySettings.getPreferredFocusedComponent();
}
+ @Override
@Nullable
protected JComponent createCenterPanel() {
return mySettings.getRoot();
@@ -78,6 +80,7 @@ public class ConvertSchemaDialog extends DialogWrapper implements PropertyChange
return mySettings;
}
+ @Override
public void propertyChange(PropertyChangeEvent evt) {
if (ConvertSchemaSettingsImpl.OUTPUT_TYPE.equals(evt.getPropertyName())) {
myAdvancedAction.setEnabled(mySettings.hasAdvancedSettings());
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaSettingsImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaSettingsImpl.java
index 893c1ad0baf6..56fe4c92f733 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaSettingsImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/ConvertSchemaSettingsImpl.java
@@ -144,6 +144,7 @@ public class ConvertSchemaSettingsImpl implements ConvertSchemaSettings {
final JTextField tf = myOutputDestination.getTextField();
tf.getDocument().addDocumentListener(new DocumentAdapter() {
+ @Override
protected void textChanged(DocumentEvent e) {
myPropertyChangeSupport.firePropertyChange(OUTPUT_PATH, null, getOutputDestination());
}
@@ -151,6 +152,7 @@ public class ConvertSchemaSettingsImpl implements ConvertSchemaSettings {
tf.setText(firstFile.getParent().getPath().replace('/', File.separatorChar));
final ItemListener listener = new ItemListener() {
+ @Override
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
final SchemaType type = getOutputType();
@@ -169,6 +171,7 @@ public class ConvertSchemaSettingsImpl implements ConvertSchemaSettings {
}
}
+ @Override
@NotNull
public SchemaType getOutputType() {
if (myOutputRng.isSelected()) {
@@ -183,10 +186,12 @@ public class ConvertSchemaSettingsImpl implements ConvertSchemaSettings {
}
}
+ @Override
public String getOutputEncoding() {
return (String)myEncoding.getSelectedItem();
}
+ @Override
public int getIndent() {
return parseInt(myIndent.getText().trim());
}
@@ -199,14 +204,17 @@ public class ConvertSchemaSettingsImpl implements ConvertSchemaSettings {
}
}
+ @Override
public int getLineLength() {
return parseInt(myLineLength.getText());
}
+ @Override
public String getOutputDestination() {
return myOutputDestination.getText();
}
+ @Override
public void addAdvancedSettings(List<String> inputParams, List<String> outputParams) {
setParams(myInputOptions, inputParams);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/IdeaDriver.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/IdeaDriver.java
index 46e5f9753d30..a0b8cad3d94f 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/IdeaDriver.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/convert/IdeaDriver.java
@@ -133,8 +133,9 @@ public class IdeaDriver {
length > 0 ? length : DEFAULT_LINE_LENGTH,
indent > 0 ? indent : DEFAULT_INDENT)
{
+ @Override
public Stream open(String sourceUri, String encoding) throws IOException {
- final String s = super.reference(null, sourceUri);
+ final String s = reference(null, sourceUri);
final File file = new File(outputFile.getParentFile(), s);
if (file.exists()) {
final String msg = "The file '" + file.getAbsolutePath() + "' already exists. Overwrite it?";
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/RngDomInspection.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/RngDomInspection.java
index e85067d2907b..4426b40fab76 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/RngDomInspection.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/RngDomInspection.java
@@ -44,18 +44,21 @@ public class RngDomInspection extends BasicDomElementsInspection<RngDomElement>
return true;
}
+ @Override
@Nls
@NotNull
public String getGroupDisplayName() {
return BaseInspection.getRngGroupDisplayName();
}
+ @Override
@Nls
@NotNull
public String getDisplayName() {
return "Unresolved References";
}
+ @Override
@NonNls
@NotNull
public String getShortName() {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/UnusedDefineInspection.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/UnusedDefineInspection.java
index b6d4eeade213..addcb96c8dad 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/UnusedDefineInspection.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/inspections/UnusedDefineInspection.java
@@ -57,22 +57,26 @@ import org.jetbrains.annotations.NotNull;
* Date: 26.07.2007
*/
public class UnusedDefineInspection extends BaseInspection {
+ @Override
public boolean isEnabledByDefault() {
return false;
}
+ @Override
@Nls
@NotNull
public String getDisplayName() {
return "Unused Define";
}
+ @Override
@NonNls
@NotNull
public String getShortName() {
return "UnusedDefine";
}
+ @Override
@NotNull
public RncElementVisitor buildVisitor(@NotNull ProblemsHolder holder, boolean isOnTheFly) {
return new MyElementVisitor(holder);
@@ -92,6 +96,7 @@ public class UnusedDefineInspection extends BaseInspection {
myHolder = holder;
}
+ @Override
protected void superVisitElement(PsiElement element) {
element.accept(myXmlVisitor);
}
@@ -205,16 +210,19 @@ public class UnusedDefineInspection extends BaseInspection {
myTag = tag;
}
+ @Override
@NotNull
public String getName() {
return "Remove Define";
}
+ @Override
@NotNull
public String getFamilyName() {
return getName();
}
+ @Override
public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) {
try {
if (myTag.isValid()) {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/CommonAnnotationHolder.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/CommonAnnotationHolder.java
index 408bd1e4348f..c797125bc9ae 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/CommonAnnotationHolder.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/CommonAnnotationHolder.java
@@ -42,6 +42,7 @@ abstract class CommonAnnotationHolder<C> {
myHolder = holder;
}
+ @Override
public Annotation createAnnotation(DomElement element, @NotNull HighlightSeverity severity, String message) {
final Annotation annotation = myHolder.createAnnotation(element, severity, message);
annotation.setTooltip(message); // no tooltip by default??
@@ -56,6 +57,7 @@ abstract class CommonAnnotationHolder<C> {
myHolder = holder;
}
+ @Override
public Annotation createAnnotation(T element, @NotNull HighlightSeverity severity, String message) {
if (severity == HighlightSeverity.ERROR) {
return myHolder.createErrorAnnotation(element, message);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/ModelAnnotator.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/ModelAnnotator.java
index 51c9fcdd2025..5efdcb4dd4a7 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/ModelAnnotator.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/ModelAnnotator.java
@@ -50,12 +50,14 @@ import java.util.Set;
*/
public final class ModelAnnotator implements Annotator, DomElementsAnnotator {
+ @Override
public void annotate(@NotNull PsiElement psiElement, @NotNull AnnotationHolder holder) {
if (psiElement instanceof CommonElement) {
((CommonElement)psiElement).accept(new MyAnnotator<PsiElement>(CommonAnnotationHolder.create(holder)));
}
}
+ @Override
public void annotate(DomElement element, DomElementAnnotationHolder holder) {
if (element instanceof RngDomElement) {
((RngDomElement)element).accept(new MyAnnotator<DomElement>(CommonAnnotationHolder.create(holder)));
@@ -69,6 +71,7 @@ public final class ModelAnnotator implements Annotator, DomElementsAnnotator {
myHolder = holder;
}
+ @Override
public void visitDefine(final Define define) {
final PsiElement element = define.getPsiElement();
if (element != null) {
@@ -78,6 +81,7 @@ public final class ModelAnnotator implements Annotator, DomElementsAnnotator {
final OverriddenDefineSearcher searcher = new OverriddenDefineSearcher(define, xmlFile, result);
final PsiElementProcessor.FindElement<XmlFile> processor = new PsiElementProcessor.FindElement<XmlFile>() {
+ @Override
public boolean execute(@NotNull XmlFile file) {
final Grammar grammar = GrammarFactory.getGrammar(file);
if (grammar == null) return true;
@@ -102,6 +106,7 @@ public final class ModelAnnotator implements Annotator, DomElementsAnnotator {
a.setGutterIconRenderer(renderer);
}
+ @Override
public void visitInclude(Include inc) {
final Define[] overrides = inc.getOverrides();
for (Define define : overrides) {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineRenderer.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineRenderer.java
index 38127319f8d3..c83575d6dc4d 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineRenderer.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineRenderer.java
@@ -43,14 +43,17 @@ class OverriddenDefineRenderer extends GutterIconRenderer {
myDefine = define;
}
+ @Override
@NotNull
public Icon getIcon() {
return AllIcons.Gutter.OverridenMethod;
}
+ @Override
@Nullable
public AnAction getClickAction() {
return new AnAction() {
+ @Override
public void actionPerformed(AnActionEvent e) {
final PsiElement element = myDefine.getPsiElement();
if (element == null || !element.isValid()) return;
@@ -75,10 +78,12 @@ class OverriddenDefineRenderer extends GutterIconRenderer {
};
}
+ @Override
public boolean isNavigateAction() {
return true;
}
+ @Override
@Nullable
public String getTooltipText() {
return "Is overridden";
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineSearcher.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineSearcher.java
index a69cbc0fce6f..9364b1030365 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineSearcher.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverriddenDefineSearcher.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package org.intellij.plugins.relaxNG.model.annotation;
import com.intellij.psi.xml.XmlFile;
@@ -25,6 +40,7 @@ class OverriddenDefineSearcher extends CommonElement.Visitor {
myDefine = define;
}
+ @Override
public void visitInclude(Include inc) {
myIncludes.add(inc.getInclude() == myLocalFile ? 1 : 0);
try {
@@ -34,10 +50,12 @@ class OverriddenDefineSearcher extends CommonElement.Visitor {
}
}
+ @Override
public void visitDiv(Div ref) {
ref.acceptChildren(this);
}
+ @Override
public void visitDefine(Define d) {
if (myIncludes.size() > 0 && myIncludes.get(myIncludes.size() - 1) == 1) {
if (d.getName().equals(myDefine.getName())) {
@@ -47,6 +65,7 @@ class OverriddenDefineSearcher extends CommonElement.Visitor {
d.acceptChildren(this);
}
+ @Override
public void visitGrammar(Grammar pattern) {
pattern.acceptChildren(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverridingDefineRenderer.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverridingDefineRenderer.java
index 3e8c525e308a..0e9ad1c74325 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverridingDefineRenderer.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/annotation/OverridingDefineRenderer.java
@@ -46,26 +46,31 @@ class OverridingDefineRenderer extends GutterIconRenderer {
myMessage = message;
}
+ @Override
@NotNull
public Icon getIcon() {
return AllIcons.Gutter.OverridingMethod;
}
+ @Override
public boolean isNavigateAction() {
return true;
}
+ @Override
@Nullable
public AnAction getClickAction() {
return new MyClickAction();
}
+ @Override
@Nullable
public String getTooltipText() {
return myMessage;
}
private class MyClickAction extends AnAction {
+ @Override
public void actionPerformed(AnActionEvent e) {
doClickAction(e, mySet, "Go to overridden define");
}
@@ -78,6 +83,7 @@ class OverridingDefineRenderer extends GutterIconRenderer {
} else {
final Define[] array = set.toArray(new Define[set.size()]);
NavigationUtil.getPsiElementPopup(ContainerUtil.map(array, new Function<Define, PsiElement>() {
+ @Override
public PsiElement fun(Define define) {
return define.getPsiElement();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/AttributeFinder.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/AttributeFinder.java
index 88dbf60129b0..32830be50fcc 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/AttributeFinder.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/AttributeFinder.java
@@ -46,6 +46,7 @@ class AttributeFinder extends RecursionSaveWalker {
myQname = qname;
}
+ @Override
public Void onElement(DElementPattern p) {
depth++;
try {
@@ -59,6 +60,7 @@ class AttributeFinder extends RecursionSaveWalker {
}
}
+ @Override
public Void onAttribute(DAttributePattern p) {
assert depth > 0;
@@ -70,6 +72,7 @@ class AttributeFinder extends RecursionSaveWalker {
return null;
}
+ @Override
public Void onValue(DValuePattern p) {
if (myLastAttr != null) {
myAttributes.get(myLastAttr).first.put(p.getValue(), p.getType());
@@ -77,6 +80,7 @@ class AttributeFinder extends RecursionSaveWalker {
return super.onValue(p);
}
+ @Override
public Void onOptional(DOptionalPattern p) {
optional++;
try {
@@ -86,6 +90,7 @@ class AttributeFinder extends RecursionSaveWalker {
}
}
+ @Override
public Void onZeroOrMore(DZeroOrMorePattern p) {
optional++;
try {
@@ -95,6 +100,7 @@ class AttributeFinder extends RecursionSaveWalker {
}
}
+ @Override
public Void onChoice(DChoicePattern p) {
optional++;
try {
@@ -104,6 +110,7 @@ class AttributeFinder extends RecursionSaveWalker {
}
}
+ @Override
public Void onData(DDataPattern p) {
if (depth == 1 && myLastAttr != null) {
myAttributes.get(myLastAttr).first.put(null, p.getType());
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/ChildElementFinder.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/ChildElementFinder.java
index c472e3586310..91f29035efef 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/ChildElementFinder.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/ChildElementFinder.java
@@ -34,6 +34,7 @@ class ChildElementFinder extends RecursionSaveWalker {
myTargetDepth = targetDepth;
}
+ @Override
public Void onRef(DRefPattern p) {
if (myDepth < myTargetDepth || myTargetDepth == -1) {
return super.onRef(p);
@@ -41,6 +42,7 @@ class ChildElementFinder extends RecursionSaveWalker {
return null;
}
+ @Override
public Void onElement(DElementPattern p) {
myDepth++;
try {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/CompositeDescriptor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/CompositeDescriptor.java
index 153374e5ce12..6f5af11459f0 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/CompositeDescriptor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/CompositeDescriptor.java
@@ -38,6 +38,7 @@ public class CompositeDescriptor extends RngElementDescriptor {
myPatterns = patterns.toArray(new DElementPattern[patterns.size()]);
}
+ @Override
protected XmlElementDescriptor findElementDescriptor(XmlTag childTag) {
final List<DElementPattern> patterns = new ArrayList<DElementPattern>();
for (DElementPattern pattern : myPatterns) {
@@ -58,6 +59,7 @@ public class CompositeDescriptor extends RngElementDescriptor {
return NULL;
}
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(XmlTag context) {
final List<XmlElementDescriptor> descriptors = new ArrayList<XmlElementDescriptor>(Arrays.asList(super.getElementsDescriptors(context)));
for (DElementPattern pattern : myPatterns) {
@@ -67,12 +69,14 @@ public class CompositeDescriptor extends RngElementDescriptor {
return descriptors.toArray(new XmlElementDescriptor[descriptors.size()]);
}
+ @Override
protected XmlAttributeDescriptor getAttributeDescriptor(String namespace, String localName) {
final QName qname = new QName(namespace, localName);
return computeAttributeDescriptor(AttributeFinder.find(qname, myPatterns));
}
+ @Override
protected XmlAttributeDescriptor[] collectAttributeDescriptors(@Nullable XmlTag context) {
final QName qName = null;
final DPattern[] patterns;
@@ -80,6 +84,7 @@ public class CompositeDescriptor extends RngElementDescriptor {
patterns = myPatterns;
} else {
final List<DElementPattern> p = ContainerUtil.findAll(myPatterns, new Condition<DElementPattern>() {
+ @Override
public boolean value(DElementPattern pattern) {
return pattern.getName().contains(qName);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/NamedPatternFilter.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/NamedPatternFilter.java
index 30ee91424a80..032d8f805ce3 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/NamedPatternFilter.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/NamedPatternFilter.java
@@ -22,6 +22,7 @@ import org.kohsuke.rngom.digested.DXmlTokenPattern;
final class NamedPatternFilter implements Condition<DXmlTokenPattern> {
public static final NamedPatternFilter INSTANCE = new NamedPatternFilter();
+ @Override
public boolean value(DXmlTokenPattern pattern) {
return pattern.getName().listNames().size() > 0;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RecursionSaveWalker.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RecursionSaveWalker.java
index 2f6b7cc66d2f..b497e0a92be3 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RecursionSaveWalker.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RecursionSaveWalker.java
@@ -19,7 +19,6 @@ package org.intellij.plugins.relaxNG.model.descriptors;
import com.intellij.util.SpinAllocator;
import com.intellij.util.containers.ContainerUtil;
import gnu.trove.THashSet;
-import gnu.trove.TObjectHashingStrategy;
import org.kohsuke.rngom.digested.*;
/*
@@ -45,6 +44,7 @@ public class RecursionSaveWalker extends DPatternWalker {
return null;
}
+ @Override
public Void onRef(DRefPattern p) {
if (myVisited.add(p)) {
try {
@@ -56,6 +56,7 @@ public class RecursionSaveWalker extends DPatternWalker {
return null;
}
+ @Override
protected Void onUnary(DUnaryPattern p) {
if (myVisited.add(p)) {
try {
@@ -81,12 +82,14 @@ public class RecursionSaveWalker extends DPatternWalker {
private static final SpinAllocator<THashSet<DPattern>> ourAllocator = new SpinAllocator<THashSet<DPattern>>(
new SpinAllocator.ICreator<THashSet<DPattern>>() {
+ @Override
@SuppressWarnings({ "unchecked" })
public THashSet<DPattern> createInstance() {
return ContainerUtil.<DPattern>newIdentityTroveSet(256);
}
},
new SpinAllocator.IDisposer<THashSet<DPattern>>() {
+ @Override
public void disposeInstance(THashSet<DPattern> instance) {
instance.clear();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngElementDescriptor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngElementDescriptor.java
index 43cc0bf421d7..5472ce3a3e20 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngElementDescriptor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngElementDescriptor.java
@@ -62,15 +62,18 @@ public class RngElementDescriptor implements XmlElementDescriptor {
myElementPattern = pattern;
}
+ @Override
public String getQualifiedName() {
final QName qName = getQName();
return qName != null ? format(qName, "") : "#unknown";
}
+ @Override
public String getDefaultName() {
return getName();
}
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(XmlTag context) {
if (context == null) {
return EMPTY_ARRAY;
@@ -101,8 +104,10 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return getElementDescriptor(childTag, null);
}
+ @Override
public final XmlElementDescriptor getElementDescriptor(final XmlTag childTag, XmlTag contextTag) {
final XmlElementDescriptor value = getCachedValue(childTag, this, DESCR_KEY, new ParameterizedCachedValueProvider<XmlElementDescriptor, RngElementDescriptor>() {
+ @Override
public CachedValueProvider.Result<XmlElementDescriptor> compute(RngElementDescriptor p) {
final XmlElementDescriptor descriptor = p.findElementDescriptor(childTag);
return CachedValueProvider.Result.create(descriptor, p.getDependences(), childTag);
@@ -111,9 +116,11 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return value == NULL ? null : value;
}
+ @Override
public final XmlAttributeDescriptor[] getAttributesDescriptors(@Nullable final XmlTag context) {
if (context != null) {
return getCachedValue(context, this, ATTRS_KEY, new ParameterizedCachedValueProvider<XmlAttributeDescriptor[], RngElementDescriptor>() {
+ @Override
public CachedValueProvider.Result<XmlAttributeDescriptor[]> compute(RngElementDescriptor p) {
final XmlAttributeDescriptor[] value = p.collectAttributeDescriptors(context);
return CachedValueProvider.Result.create(value, p.getDependences(), context);
@@ -155,10 +162,12 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return result.toArray(new RngXmlAttributeDescriptor[result.size()]);
}
+ @Override
public final XmlAttributeDescriptor getAttributeDescriptor(String attributeName, @Nullable XmlTag context) {
return getAttributeDescriptor("", attributeName);
}
+ @Override
public final XmlAttributeDescriptor getAttributeDescriptor(XmlAttribute attribute) {
return getAttributeDescriptor(attribute.getNamespace(), attribute.getLocalName());
}
@@ -189,6 +198,7 @@ public class RngElementDescriptor implements XmlElementDescriptor {
}
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
return myNsDescriptor;
}
@@ -199,6 +209,7 @@ public class RngElementDescriptor implements XmlElementDescriptor {
}
// is this actually used anywhere?
+ @Override
public int getContentType() {
final DPattern child = myElementPattern.getChild();
if (child instanceof DEmptyPattern) {
@@ -217,6 +228,7 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return null;
}
+ @Override
public PsiElement getDeclaration() {
final SmartPsiElementPointer<? extends PsiElement> declaration = myDeclaration;
if (declaration != null) {
@@ -287,6 +299,7 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return PsiTreeUtil.getParentOfType(at, XmlTag.class);
}
+ @Override
@NonNls
public String getName(PsiElement context) {
final QName qName = getQName();
@@ -298,6 +311,7 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return format(qName, prefix != null ? prefix : qName.getPrefix());
}
+ @Override
@NonNls
public String getName() {
final QName qName = getQName();
@@ -321,6 +335,7 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return iterator.next();
}
+ @Override
public void init(PsiElement element) {
}
@@ -340,6 +355,7 @@ public class RngElementDescriptor implements XmlElementDescriptor {
return myElementPattern.hashCode();
}
+ @Override
public Object[] getDependences() {
if (myDeclaration != null) {
return ArrayUtil.append(myNsDescriptor.getDependences(), myDeclaration.getElement());
@@ -351,30 +367,37 @@ public class RngElementDescriptor implements XmlElementDescriptor {
private static class MyNameClassVisitor implements NameClassVisitor<Integer> {
public static final MyNameClassVisitor INSTANCE = new MyNameClassVisitor();
+ @Override
public Integer visitAnyName() {
return CONTENT_TYPE_ANY;
}
+ @Override
public Integer visitAnyNameExcept(NameClass nc) {
return CONTENT_TYPE_ANY;
}
+ @Override
public Integer visitChoice(NameClass nc1, NameClass nc2) {
return CONTENT_TYPE_CHILDREN;
}
+ @Override
public Integer visitName(QName name) {
return CONTENT_TYPE_CHILDREN;
}
+ @Override
public Integer visitNsName(String ns) {
return CONTENT_TYPE_CHILDREN;
}
+ @Override
public Integer visitNsNameExcept(String ns, NameClass nc) {
return CONTENT_TYPE_CHILDREN;
}
+ @Override
public Integer visitNull() {
return CONTENT_TYPE_EMPTY;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngNsDescriptor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngNsDescriptor.java
index 2bed77f5299b..93744a94a380 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngNsDescriptor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngNsDescriptor.java
@@ -70,6 +70,7 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
private DPattern myPattern;
private PsiManager myManager;
+ @Override
@Nullable
public XmlElementDescriptor getElementDescriptor(@NotNull XmlTag tag) {
if (myPattern == null) {
@@ -107,6 +108,7 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
private XmlElementDescriptor findRootDescriptor(final XmlTag tag) {
return CachedValuesManager.getManager(tag.getProject())
.getParameterizedCachedValue(tag, ROOT_KEY, new ParameterizedCachedValueProvider<XmlElementDescriptor, RngNsDescriptor>() {
+ @Override
public CachedValueProvider.Result<XmlElementDescriptor> compute(RngNsDescriptor o) {
final XmlElementDescriptor descr = o.findRootDescriptorInner(tag);
if (descr != null) {
@@ -151,6 +153,7 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
}
}
final List<DElementPattern> patterns = ContainerUtil.findAll(list, new Condition<DElementPattern>() {
+ @Override
public boolean value(DElementPattern pattern) {
final NameClass nameClass = pattern.getName();
return nameClass.contains(qName);
@@ -168,6 +171,7 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
}
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable XmlDocument document) {
if (myPattern == null) {
@@ -210,15 +214,18 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
return descriptor;
}
+ @Override
@NotNull
public XmlFile getDescriptorFile() {
return myFile;
}
+ @Override
public boolean isHierarhyEnabled() {
return false;
}
+ @Override
public synchronized PsiElement getDeclaration() {
if (!myElement.isValid() || !myFile.isValid()) {
if (myUrl != null) {
@@ -234,16 +241,19 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
return myFile.isValid() ? myFile.getDocument() : null;
}
+ @Override
@NonNls
public String getName(PsiElement context) {
return getName();
}
+ @Override
@NonNls
public String getName() {
return getDescriptorFile().getName();
}
+ @Override
public Object[] getDependences() {
if (myPattern != null) {
if (DumbService.isDumb(myElement.getProject())) {
@@ -261,6 +271,7 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
return new Object[]{ ModificationTracker.EVER_CHANGED };
}
+ @Override
public synchronized void init(PsiElement element) {
myElement = element;
myFile = element instanceof XmlFile ? (XmlFile)element : (XmlFile)element.getContainingFile();
@@ -274,6 +285,7 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
myPattern = RngParser.getCachedPattern(getDescriptorFile(), RngParser.DEFAULT_HANDLER);
}
+ @Override
public void validate(@NotNull PsiElement context, @NotNull final ValidationHost host) {
final XmlDocument doc = PsiTreeUtil.getContextOfType(context, XmlDocument.class, false);
if (doc == null) {
@@ -290,12 +302,14 @@ public class RngNsDescriptor implements XmlNSDescriptorEx, Validator {
}
//@Override
+ @Override
public XmlElementDescriptor getElementDescriptor(String localName, String namespace) {
final QName qName = new QName(namespace, localName);
CachedValue<XmlElementDescriptor> cachedValue = myDescriptorsMap.get(qName);
if (cachedValue == null) {
cachedValue =
CachedValuesManager.getManager(myElement.getProject()).createCachedValue(new CachedValueProvider<XmlElementDescriptor>() {
+ @Override
public Result<XmlElementDescriptor> compute() {
final XmlElementDescriptor descriptor = findRootDescriptorInner(qName);
return descriptor != null
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngXmlAttributeDescriptor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngXmlAttributeDescriptor.java
index b05794e92320..85dd71acf168 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngXmlAttributeDescriptor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/descriptors/RngXmlAttributeDescriptor.java
@@ -44,10 +44,12 @@ public class RngXmlAttributeDescriptor extends BasicXmlAttributeDescriptor {
private static final QName UNKNOWN = new QName("", "#unknown");
private static final TObjectHashingStrategy<Locator> HASHING_STRATEGY = new TObjectHashingStrategy<Locator>() {
+ @Override
public int computeHashCode(Locator o) {
final String s = o.getSystemId();
return o.getLineNumber() * 31 + o.getColumnNumber() * 23 + (s != null ? s.hashCode() * 11 : 0);
}
+ @Override
public boolean equals(Locator o, Locator o1) {
if ((o.getLineNumber() == o1.getLineNumber() && o.getColumnNumber() == o1.getColumnNumber())) {
if (Comparing.equal(o.getSystemId(), o1.getSystemId())) {
@@ -93,31 +95,38 @@ public class RngXmlAttributeDescriptor extends BasicXmlAttributeDescriptor {
return new RngXmlAttributeDescriptor(myElementDescriptor, name, values, myOptional || d.myOptional, locations.toArray(new Locator[locations.size()]));
}
+ @Override
public boolean isRequired() {
return !myOptional;
}
+ @Override
public boolean isFixed() {
return isEnumerated() && myValues.size() == 1;
}
+ @Override
public boolean hasIdType() {
return myValues.values().contains("ID");
}
+ @Override
public boolean hasIdRefType() {
return myValues.values().contains("IDREF");
}
+ @Override
@Nullable
public String getDefaultValue() {
return isEnumerated() ? myValues.keySet().iterator().next() : null;
}
+ @Override
public boolean isEnumerated() {
return myValues.size() > 0 && myValues.get(null) == null;
}
+ @Override
public String[] getEnumeratedValues() {
if (myValues.size() > 0) {
final Map<String, String> copy;
@@ -133,6 +142,7 @@ public class RngXmlAttributeDescriptor extends BasicXmlAttributeDescriptor {
}
}
+ @Override
public PsiElement getDeclaration() {
final Iterator<Locator> it = myDeclarations.iterator();
if (!it.hasNext()) return null;
@@ -142,6 +152,7 @@ public class RngXmlAttributeDescriptor extends BasicXmlAttributeDescriptor {
public Collection<PsiElement> getDeclarations() {
return ContainerUtil.map2List(myDeclarations, new Function<Locator, PsiElement>() {
+ @Override
public PsiElement fun(Locator locator) {
return myElementDescriptor.getDeclaration(locator);
}
@@ -171,15 +182,18 @@ public class RngXmlAttributeDescriptor extends BasicXmlAttributeDescriptor {
return myName.getLocalPart();
}
+ @Override
@NonNls
public String getName() {
return myName.getLocalPart();
}
+ @Override
public void init(PsiElement element) {
}
+ @Override
public Object[] getDependences() {
return myElementDescriptor.getDependences();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/DefinitionResolver.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/DefinitionResolver.java
index afbbcc0e9df8..ee11a5f7cc4c 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/DefinitionResolver.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/DefinitionResolver.java
@@ -103,20 +103,25 @@ public class DefinitionResolver extends CommonElement.Visitor implements
ContainerUtil.getOrCreate(myDefines.get(), def.getName(), this).add(def);
}
+ @Override
public void visitPattern(Pattern pattern) {
}
+ @Override
public void visitGrammar(Grammar pattern) {
}
+ @Override
public void visitRef(Ref ref) {
}
+ @Override
public Set<Define> create() {
return new THashSet<Define>();
}
+ @Override
public Result<Map<String, Set<Define>>> compute() {
try {
myScope.acceptChildren(this);
@@ -193,6 +198,7 @@ public class DefinitionResolver extends CommonElement.Visitor implements
myValue = value;
}
+ @Override
public boolean execute(@NotNull XmlFile element) {
final Grammar g = GrammarFactory.getGrammar(element);
if (g != null) {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/RelaxIncludeIndex.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/RelaxIncludeIndex.java
index ab9beda8cc01..6cbc2e164da7 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/RelaxIncludeIndex.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/model/resolve/RelaxIncludeIndex.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package org.intellij.plugins.relaxNG.model.resolve;
import com.intellij.ide.highlighter.XmlFileType;
@@ -48,6 +63,7 @@ public class RelaxIncludeIndex {
Project project = file.getProject();
final PsiManager psiManager = PsiManager.getInstance(project);
final PsiFile[] psiFiles = ContainerUtil.map2Array(files, PsiFile.class, new NullableFunction<VirtualFile, PsiFile>() {
+ @Override
public PsiFile fun(VirtualFile file) {
return psiManager.findFile(file);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AddValueCondition.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AddValueCondition.java
index 739b0e50280a..ed8d8cd28f97 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AddValueCondition.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AddValueCondition.java
@@ -35,6 +35,7 @@ class AddValueCondition<T> extends PatternCondition<T> {
return new AddValueCondition<T>(key);
}
+ @Override
public boolean accepts(@NotNull T value, ProcessingContext context) {
context.get(myKey).add(value);
return true;
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueCondition.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueCondition.java
index b1ce0d36e0ad..059159d0785a 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueCondition.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueCondition.java
@@ -29,6 +29,7 @@ class AttributeValueCondition extends PatternCondition<XmlAttributeValue> {
myRef = ref;
}
+ @Override
public boolean accepts(@NotNull XmlAttributeValue value, ProcessingContext context) {
return myRef.equals(value.getValue());
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueFunction.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueFunction.java
index fd5468e68139..7d06d00ca285 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueFunction.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/AttributeValueFunction.java
@@ -23,6 +23,7 @@ import com.intellij.util.containers.ContainerUtil;
import java.util.Set;
class AttributeValueFunction implements Function<XmlAttributeValue, String> {
+ @Override
public String fun(XmlAttributeValue value) {
return value.getValue();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/IdRefProvider.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/IdRefProvider.java
index d3857c7f728b..ade3ec5ecdb0 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/IdRefProvider.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/IdRefProvider.java
@@ -44,6 +44,7 @@ public class IdRefProvider extends PsiReferenceProvider {
public static final HasIdRefTypeCondition HAS_ID_REF_TYPE = new HasIdRefTypeCondition();
public static final HasIdTypeCondition HAS_ID_TYPE = new HasIdTypeCondition();
+ @Override
@NotNull
public PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull ProcessingContext context) {
final XmlAttributeValue value = (XmlAttributeValue)element;
@@ -73,15 +74,18 @@ public class IdRefProvider extends PsiReferenceProvider {
myCondition = new AttributeValueCondition(element.getValue());
}
+ @Override
public PsiElement resolve() {
final ProcessingContext context = new ProcessingContext();
final ResolvingVisitor visitor = new ResolvingVisitor(PATTERN.with(myCondition).save(TARGET), context) {
+ @Override
public void visitXmlTag(XmlTag tag) {
super.visitXmlTag(tag);
if (shouldContinue()) {
visitSubTags(tag);
}
}
+ @Override
protected boolean shouldContinue() {
return context.get(TARGET) == null;
}
@@ -99,12 +103,14 @@ public class IdRefProvider extends PsiReferenceProvider {
}
}
+ @Override
@NotNull
public Object[] getVariants() {
final ProcessingContext context = new ProcessingContext();
context.put(VARIANTS, new HashSet<XmlAttributeValue>());
final ResolvingVisitor visitor = new ResolvingVisitor(PATTERN.with(AddValueCondition.create(VARIANTS)), context) {
+ @Override
public void visitXmlTag(XmlTag tag) {
super.visitXmlTag(tag);
visitSubTags(tag);
@@ -132,6 +138,7 @@ public class IdRefProvider extends PsiReferenceProvider {
super("IdType");
}
+ @Override
public boolean accepts(@NotNull XmlAttributeValue xmlAttributeValue, ProcessingContext context) {
return hasIdType(xmlAttributeValue);
}
@@ -142,6 +149,7 @@ public class IdRefProvider extends PsiReferenceProvider {
super("IdRef");
}
+ @Override
public boolean accepts(@NotNull XmlAttributeValue xmlAttributeValue, ProcessingContext context) {
return hasIdRefType(xmlAttributeValue);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/ResolvingVisitor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/ResolvingVisitor.java
index 116ea246a9d5..0d9676b4627f 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/references/ResolvingVisitor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/references/ResolvingVisitor.java
@@ -48,6 +48,7 @@ class ResolvingVisitor extends XmlElementVisitor implements PsiElementProcessor
myProcessingContext.put(VISITED_KEY, new THashSet<XmlFile>());
}
+ @Override
public void visitXmlDocument(@Nullable XmlDocument document) {
if (document != null) {
final XmlTag rootTag = document.getRootTag();
@@ -61,6 +62,7 @@ class ResolvingVisitor extends XmlElementVisitor implements PsiElementProcessor
myIncludePattern = includePattern;
}
+ @Override
public void visitXmlAttribute(XmlAttribute attribute) {
if (myIncludePattern != null && myIncludePattern.accepts(attribute, myProcessingContext)) {
final String value = attribute.getValue();
@@ -79,6 +81,7 @@ class ResolvingVisitor extends XmlElementVisitor implements PsiElementProcessor
myPattern.accepts(attribute.getValueElement(), myProcessingContext);
}
+ @Override
@SuppressWarnings({ "ForLoopReplaceableByForEach" })
public void visitXmlTag(XmlTag tag) {
visitAttributes(tag);
@@ -115,6 +118,7 @@ class ResolvingVisitor extends XmlElementVisitor implements PsiElementProcessor
rootTag.processElements(this, attribute);
}
+ @Override
public boolean execute(@NotNull PsiElement element) {
element.accept(this);
return shouldContinue();
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/MessageViewHelper.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/MessageViewHelper.java
index 6344c1d28efc..a180cec5bca6 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/MessageViewHelper.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/MessageViewHelper.java
@@ -102,6 +102,7 @@ public class MessageViewHelper {
final VirtualFile file1 = file;
ApplicationManager.getApplication().invokeLater(
new Runnable() {
+ @Override
public void run() {
myErrorsView.addMessage(
warning ? MessageCategory.WARNING : MessageCategory.ERROR,
@@ -137,6 +138,7 @@ public class MessageViewHelper {
private void openMessageViewImpl() {
CommandProcessor commandProcessor = CommandProcessor.getInstance();
commandProcessor.executeCommand(myProject, new Runnable() {
+ @Override
public void run() {
MessageView messageView = MessageView.SERVICE.getInstance(myProject);
Content content = ContentFactory.SERVICE.getInstance().createContent(myErrorsView.getComponent(), myContentName, true);
@@ -155,9 +157,11 @@ public class MessageViewHelper {
private static class MyProcessController implements NewErrorTreeViewPanel.ProcessController {
public static final MyProcessController INSTANCE = new MyProcessController();
+ @Override
public void stopProcess() {
}
+ @Override
public boolean isProcessStopped() {
return true;
}
@@ -175,6 +179,7 @@ public class MessageViewHelper {
myErrorsView = errorsView;
}
+ @Override
public void contentRemoved(ContentManagerEvent event) {
if (event.getContent() == myContent) {
if (myErrorsView.canControlProcess()) {
@@ -188,6 +193,7 @@ public class MessageViewHelper {
}
}
+ @Override
public void contentRemoveQuery(ContentManagerEvent event) {
if (event.getContent() == myContent) {
if (myErrorsView != null && myErrorsView.canControlProcess() && !myErrorsView.isProcessStopped()) {
@@ -215,6 +221,7 @@ public class MessageViewHelper {
myKey = key;
}
+ @Override
public void contentRemoved(ContentManagerEvent event) {
final Content eventContent = event.getContent();
if (!eventContent.equals(myContent)) {
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/Psi2SaxAdapter.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/Psi2SaxAdapter.java
index c95a455c2675..7db07c02bf2d 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/Psi2SaxAdapter.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/Psi2SaxAdapter.java
@@ -45,6 +45,7 @@ class Psi2SaxAdapter extends XmlElementVisitor implements PsiElementProcessor<Ps
myHandler = handler;
}
+ @Override
public void visitXmlElement(XmlElement element) {
if (element instanceof XmlEntityRef) {
XmlUtil.processXmlElements(element, this, false, true);
@@ -52,6 +53,7 @@ class Psi2SaxAdapter extends XmlElementVisitor implements PsiElementProcessor<Ps
super.visitXmlElement(element);
}
+ @Override
public void visitXmlToken(XmlToken token) {
if (token.getTokenType() == XmlTokenType.XML_DATA_CHARACTERS) {
handleText(token, token.getText());
@@ -67,11 +69,13 @@ class Psi2SaxAdapter extends XmlElementVisitor implements PsiElementProcessor<Ps
}
}
+ @Override
public boolean execute(@NotNull PsiElement element) {
element.accept(this);
return true;
}
+ @Override
public void visitXmlDocument(XmlDocument document) {
try {
myHandler.startDocument();
@@ -85,6 +89,7 @@ class Psi2SaxAdapter extends XmlElementVisitor implements PsiElementProcessor<Ps
}
}
+ @Override
public void visitXmlTag(XmlTag tag) {
try {
setLocation(tag);
@@ -127,6 +132,7 @@ class Psi2SaxAdapter extends XmlElementVisitor implements PsiElementProcessor<Ps
}
}
+ @Override
public void visitXmlText(XmlText text) {
handleText(text, text.getValue());
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngParser.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngParser.java
index 6f9a5c7dd51b..ba93ee69f15d 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngParser.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngParser.java
@@ -104,6 +104,7 @@ public class RngParser {
static final Key<CachedValue<DPattern>> PATTERN_KEY = Key.create("PATTERN");
public static final DefaultHandler DEFAULT_HANDLER = new DefaultHandler() {
+ @Override
public void error(SAXParseException e) throws SAXException {
LOG.info("e.getMessage() = " + e.getMessage() + " [" + e.getSystemId() + "]");
LOG.info(e);
@@ -116,6 +117,7 @@ public class RngParser {
final CachedValuesManager mgr = CachedValuesManager.getManager(descriptorFile.getProject());
return mgr.getCachedValue(descriptorFile, PATTERN_KEY, new CachedValueProvider<DPattern>() {
+ @Override
public Result<DPattern> compute() {
return Result.create(parsePattern(descriptorFile, eh, false), descriptorFile);
}
@@ -150,6 +152,7 @@ public class RngParser {
if (file.getFileType() == RncFileType.getInstance()) {
return new CompactParseable(source, eh) {
+ @Override
public ParsedPattern parseInclude(String uri, SchemaBuilder schemaBuilder, IncludedGrammar g, String inheritedNs)
throws BuildException, IllegalSchemaException
{
@@ -158,6 +161,7 @@ public class RngParser {
};
} else {
return new SAXParseable(source, eh) {
+ @Override
public ParsedPattern parseInclude(String uri, SchemaBuilder schemaBuilder, IncludedGrammar g, String inheritedNs)
throws BuildException, IllegalSchemaException
{
@@ -204,6 +208,7 @@ public class RngParser {
CachedValue<Schema> value = descriptorFile.getUserData(SCHEMA_KEY);
if (value == null) {
final CachedValueProvider<Schema> provider = new CachedValueProvider<Schema>() {
+ @Override
public Result<Schema> compute() {
final InputSource inputSource = makeInputSource(descriptorFile);
@@ -246,6 +251,7 @@ public class RngParser {
myDescriptorFile = descriptorFile;
}
+ @Override
protected com.thaiopensource.relaxng.parse.Parseable createParseable(XMLReaderCreator xmlReaderCreator, InputSource inputSource, ErrorHandler errorHandler) {
if (myDescriptorFile.getFileType() == RncFileType.getInstance()) {
return new com.thaiopensource.relaxng.parse.compact.CompactParseable(inputSource, errorHandler);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngSchemaValidator.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngSchemaValidator.java
index fe052df70892..758dea80e9db 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngSchemaValidator.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/RngSchemaValidator.java
@@ -27,6 +27,7 @@ import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.util.Comparing;
import com.intellij.openapi.util.Pair;
import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.psi.*;
@@ -114,8 +115,8 @@ public class RngSchemaValidator extends ExternalAnnotator<RngSchemaValidator.MyV
}
static class MyValidationMessageConsumer {
- List<Pair<PsiElement, String >> errors = new ArrayList<Pair<PsiElement, String>>();
- List<Pair<PsiElement, String >> warnings = new ArrayList<Pair<PsiElement, String>>();
+ final List<Pair<PsiElement, String >> errors = new ArrayList<Pair<PsiElement, String>>();
+ final List<Pair<PsiElement, String >> warnings = new ArrayList<Pair<PsiElement, String>>();
ValidationMessageConsumer error() {
return new ValidationMessageConsumer() {
@Override
@@ -204,7 +205,7 @@ public class RngSchemaValidator extends ExternalAnnotator<RngSchemaValidator.MyV
return VfsUtil.findFileByURL(new URL(systemId));
} catch (Exception e) {
LOG.warn("Failed to build file from uri <" + systemId + ">", e);
- return VirtualFileManager.getInstance().findFileByUrl(VfsUtil.fixURLforIDEA(systemId));
+ return VirtualFileManager.getInstance().findFileByUrl(VfsUtilCore.fixURLforIDEA(systemId));
}
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/ValidateAction.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/ValidateAction.java
index f45b89cef2c7..6ad5e2fe4c42 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/ValidateAction.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/validation/ValidateAction.java
@@ -20,8 +20,6 @@ import com.intellij.ide.errorTreeView.NewErrorTreeViewPanel;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.CommonDataKeys;
-import com.intellij.openapi.actionSystem.LangDataKeys;
-import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Document;
@@ -73,12 +71,14 @@ public class ValidateAction extends AnAction {
setEnabledInModalContext(origAction.isEnabledInModalContext());
}
+ @Override
public void actionPerformed(AnActionEvent e) {
if (!actionPerformedImpl(e)) {
myOrigAction.actionPerformed(e);
}
}
+ @Override
public final void update(AnActionEvent e) {
super.update(e);
myOrigAction.update(e);
@@ -125,14 +125,17 @@ public class ValidateAction extends AnAction {
final MessageViewHelper helper = new MessageViewHelper(project, CONTENT_NAME, KEY);
helper.openMessageView(new Runnable() {
+ @Override
public void run() {
doRun(project, instanceFile, schemaFile);
}
});
final Future<?> future = ApplicationManager.getApplication().executeOnPooledThread(new Runnable() {
+ @Override
public void run() {
ApplicationManager.getApplication().runReadAction(new Runnable() {
+ @Override
public void run() {
final MessageViewHelper.ErrorHandler eh = helper.new ErrorHandler();
@@ -145,10 +148,12 @@ public class ValidateAction extends AnAction {
SwingUtilities.invokeLater(
new Runnable() {
+ @Override
public void run() {
if (!eh.hadErrorOrWarning()) {
SwingUtilities.invokeLater(
new Runnable() {
+ @Override
public void run() {
helper.close();
WindowManager.getInstance().getStatusBar(project).setInfo("No errors detected");
@@ -165,10 +170,12 @@ public class ValidateAction extends AnAction {
});
helper.setProcessController(new NewErrorTreeViewPanel.ProcessController() {
+ @Override
public void stopProcess() {
future.cancel(true);
}
+ @Override
public boolean isProcessStopped() {
return future.isDone();
}
@@ -229,22 +236,27 @@ public class ValidateAction extends AnAction {
return null;
}
+ @Override
public boolean displayTextInToolbar() {
return myOrigAction.displayTextInToolbar();
}
+ @Override
public void setDefaultIcon(boolean b) {
myOrigAction.setDefaultIcon(b);
}
+ @Override
public boolean isDefaultIcon() {
return myOrigAction.isDefaultIcon();
}
+ @Override
public void setInjectedContext(boolean worksInInjected) {
myOrigAction.setInjectedContext(worksInInjected);
}
+ @Override
public boolean isInInjectedContext() {
return myOrigAction.isInInjectedContext();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/Combine.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/Combine.java
index f544c0675866..1555037a814a 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/Combine.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/Combine.java
@@ -32,6 +32,7 @@ public enum Combine implements com.intellij.util.xml.NamedEnum {
this.value = value;
}
+ @Override
public String getValue() {
return value;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/RngDomVisitor.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/RngDomVisitor.java
index 2ee37fc3c78a..e4a927768be4 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/RngDomVisitor.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/RngDomVisitor.java
@@ -25,6 +25,7 @@ import com.intellij.util.xml.DomElementVisitor;
* Date: 18.08.2007
*/
public class RngDomVisitor implements DomElementVisitor {
+ @Override
public void visitDomElement(DomElement element) {
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/CreatePatternFix.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/CreatePatternFix.java
index 661e34100528..e0c6bc6d600a 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/CreatePatternFix.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/CreatePatternFix.java
@@ -47,21 +47,25 @@ class CreatePatternFix implements IntentionAction, LocalQuickFix {
myReference = reference;
}
+ @Override
@NotNull
public String getText() {
return "Create Pattern '" + myReference.getCanonicalText() + "'";
}
+ @Override
@NotNull
public String getFamilyName() {
return "Create Pattern";
}
+ @Override
@NotNull
public String getName() {
return getText();
}
+ @Override
public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) {
if (!isAvailable()) {
return;
@@ -73,6 +77,7 @@ class CreatePatternFix implements IntentionAction, LocalQuickFix {
}
}
+ @Override
public boolean isAvailable(@NotNull Project project, Editor editor, PsiFile file) {
return isAvailable();
}
@@ -91,6 +96,7 @@ class CreatePatternFix implements IntentionAction, LocalQuickFix {
}
}
+ @Override
public void invoke(@NotNull Project project, Editor editor, PsiFile file) throws IncorrectOperationException {
doFix();
}
@@ -120,6 +126,7 @@ class CreatePatternFix implements IntentionAction, LocalQuickFix {
root.add(defineTag);
}
+ @Override
public boolean startInWriteAction() {
return true;
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/DefinitionReference.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/DefinitionReference.java
index 9ac61ebb9a20..e424583acb8c 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/DefinitionReference.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/DefinitionReference.java
@@ -67,6 +67,7 @@ public class DefinitionReference extends PsiReferenceBase.Poly<XmlAttributeValue
return true;
}
+ @Override
@NotNull
public ResolveResult[] multiResolve(boolean incompleteCode) {
final RngGrammar scope = getScope();
@@ -92,12 +93,14 @@ public class DefinitionReference extends PsiReferenceBase.Poly<XmlAttributeValue
return scope;
}
+ @Override
public ResolveResult fun(Define define) {
final XmlElement xmlElement = (XmlElement)define.getPsiElement();
assert xmlElement != null;
return new PsiElementResolveResult(xmlElement);
}
+ @Override
@NotNull
public Object[] getVariants() {
final RngGrammar scope = getScope();
@@ -109,6 +112,7 @@ public class DefinitionReference extends PsiReferenceBase.Poly<XmlAttributeValue
if (map == null || map.size() == 0) return ArrayUtil.EMPTY_OBJECT_ARRAY;
return ContainerUtil.mapNotNull(map.values(), new Function<Set<Define>, Object>() {
+ @Override
public Object fun(Set<Define> defines) {
final Define define = defines.iterator().next();
if (defines.size() == 0) {
@@ -130,6 +134,7 @@ public class DefinitionReference extends PsiReferenceBase.Poly<XmlAttributeValue
}).toArray();
}
+ @Override
public LocalQuickFix[] getQuickFixes() {
final XmlTag tag = PsiTreeUtil.getParentOfType(getElement(), XmlTag.class);
assert tag != null;
@@ -140,6 +145,7 @@ public class DefinitionReference extends PsiReferenceBase.Poly<XmlAttributeValue
return LocalQuickFix.EMPTY_ARRAY;
}
+ @Override
@NotNull
public String getUnresolvedMessagePattern() {
return "Unresolved pattern reference ''{0}''";
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineImpl.java
index bb51bab38c61..1d096e340fca 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineImpl.java
@@ -27,6 +27,7 @@ import org.intellij.plugins.relaxNG.xml.dom.RngDefine;
* Date: 19.08.2007
*/
public abstract class RngDefineImpl extends RngDomElementBase implements RngDefine {
+ @Override
public void setName(String name) {
final GenericAttributeValue<String> value = getNameAttr();
if (value.getStringValue() != null) {
@@ -34,18 +35,22 @@ public abstract class RngDefineImpl extends RngDomElementBase implements RngDefi
}
}
+ @Override
public String getName() {
return getNameAttr().getValue();
}
+ @Override
public PsiElement getNameElement() {
return getNameAttr().getXmlAttributeValue();
}
+ @Override
public Pattern getPattern() {
return getPatternFrom(this);
}
+ @Override
public void accept(Visitor visitor) {
visitor.visitDefine(this);
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineMetaData.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineMetaData.java
index 92d0c3db7ccd..6c3cd28c9361 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineMetaData.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDefineMetaData.java
@@ -33,6 +33,7 @@ import javax.swing.*;
*/
public class RngDefineMetaData extends DomMetaData<RngDefine> {
+ @Override
@Nullable
protected GenericDomValue getNameElement(final RngDefine element) {
final GenericAttributeValue<String> id = element.getNameAttr();
@@ -42,14 +43,17 @@ public class RngDefineMetaData extends DomMetaData<RngDefine> {
return null;
}
+ @Override
public void setName(final String name) throws IncorrectOperationException {
getElement().setName(name);
}
+ @Override
public Icon getIcon() {
return AllIcons.Nodes.Property;
}
+ @Override
public String getTypeName() {
return "Pattern Definition";
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDomElementBase.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDomElementBase.java
index 731c15d5cb0a..ec3f077ab98c 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDomElementBase.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngDomElementBase.java
@@ -33,10 +33,12 @@ import java.util.List;
* Date: 31.08.2007
*/
public abstract class RngDomElementBase implements RngDomElement, Pattern<XmlElement> {
+ @Override
public XmlElement getPsiElement() {
return getXmlElement();
}
+ @Override
public void accept(Visitor visitor) {
if (this instanceof Div) {
visitor.visitDiv((Div)this); // TODO fix me
@@ -45,8 +47,10 @@ public abstract class RngDomElementBase implements RngDomElement, Pattern<XmlEle
}
}
+ @Override
public void acceptChildren(final Visitor visitor) {
acceptChildren(new DomElementVisitor() {
+ @Override
public void visitDomElement(DomElement element) {
if (element instanceof CommonElement) {
((CommonElement)element).accept(visitor);
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngGrammarImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngGrammarImpl.java
index b7c45ed0c260..3820ed4144dd 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngGrammarImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngGrammarImpl.java
@@ -30,6 +30,7 @@ public abstract class RngGrammarImpl extends RngDomElementBase implements RngGra
visitor.visitGrammar(this);
}
+ @Override
public Pattern getStart() {
return getPatternFrom(getStartElement());
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngHrefConverter.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngHrefConverter.java
index d6413006cbb5..da5acf3fa3d2 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngHrefConverter.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngHrefConverter.java
@@ -33,6 +33,7 @@ import org.jetbrains.annotations.Nullable;
* Date: 18.08.2007
*/
public class RngHrefConverter extends Converter<XmlFile> implements CustomReferenceConverter<XmlFile> {
+ @Override
public XmlFile fromString(@Nullable @NonNls String s, ConvertContext context) {
if (s != null) {
final GenericAttributeValue<XmlFile> element = (GenericAttributeValue<XmlFile>)context.getInvocationElement();
@@ -47,10 +48,12 @@ public class RngHrefConverter extends Converter<XmlFile> implements CustomRefere
return null;
}
+ @Override
public String toString(@Nullable XmlFile psiFile, ConvertContext context) {
return psiFile == null ? null : psiFile.getName();
}
+ @Override
@NotNull
public PsiReference[] createReferences(GenericDomValue<XmlFile> genericDomValue, PsiElement element, ConvertContext context) {
final String s = genericDomValue.getStringValue();
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngIncludeImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngIncludeImpl.java
index 1dddea3ade51..ea339f414011 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngIncludeImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngIncludeImpl.java
@@ -35,10 +35,12 @@ public abstract class RngIncludeImpl extends RngDomElementBase implements RngInc
visitor.visitInclude(this);
}
+ @Override
public PsiFile getInclude() {
return getIncludedFile().getValue();
}
+ @Override
@NotNull
public RngDefine[] getOverrides() {
// TODO: include stuff inside DIVs - fix when this is actually used
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngRefImpl.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngRefImpl.java
index b5afb61a4aaf..2a0f59c62b36 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngRefImpl.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngRefImpl.java
@@ -35,6 +35,7 @@ public abstract class RngRefImpl extends RngDomElementBase implements RngRef {
visitor.visitRef(this);
}
+ @Override
public Define getPattern() {
final XmlAttributeValue value = getName().getXmlAttributeValue();
if (value == null) return null;
@@ -59,6 +60,7 @@ public abstract class RngRefImpl extends RngDomElementBase implements RngRef {
return getParentOfType(RngGrammar.class, true);
}
+ @Override
public String getReferencedName() {
return getName().getValue();
}
diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java
index 02a4af18bd19..cadef4d2c0b3 100644
--- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java
+++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java
@@ -41,6 +41,7 @@ import java.util.Set;
* Date: 18.08.2007
*/
public class RngReferenceConverter implements CustomReferenceConverter {
+ @Override
@NotNull
public PsiReference[] createReferences(GenericDomValue genericDomValue, PsiElement element, ConvertContext context) {
final GenericAttributeValue<String> e = (GenericAttributeValue<String>)genericDomValue;
@@ -53,6 +54,7 @@ public class RngReferenceConverter implements CustomReferenceConverter {
return new PsiReference[]{
new PsiReferenceBase<XmlAttributeValue>(value, true) {
+ @Override
public PsiElement resolve() {
// final XmlTag tag = PsiTreeUtil.getParentOfType(value, XmlTag.class);
// final XmlTag include = getAncestorTag(tag, "include", ProjectLoader.RNG_NAMESPACE);
@@ -64,6 +66,7 @@ public class RngReferenceConverter implements CustomReferenceConverter {
return myElement.getParent().getParent();
}
+ @Override
@NotNull
public Object[] getVariants() {
final RngInclude include = e.getParentOfType(RngInclude.class, true);
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractIndexTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractIndexTest.java
index eb70d7642ce9..6f22edf738dd 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractIndexTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractIndexTest.java
@@ -27,6 +27,7 @@ import org.jetbrains.annotations.NotNull;
*/
public abstract class AbstractIndexTest extends HighlightingTestBase {
+ @Override
protected final CodeInsightTestFixture createFixture(@NotNull IdeaTestFixtureFactory factory) {
return createContentFixture(factory);
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractParsingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractParsingTest.java
index 6492f49ee3db..77251f7a3605 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractParsingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/AbstractParsingTest.java
@@ -30,6 +30,7 @@ public abstract class AbstractParsingTest extends ParsingTestCase {
super("psi/" + s, "rnc", new RncParserDefinition());
}
+ @Override
protected String getTestDataPath() {
return PlatformTestUtil.getCommunityPath() + "/xml/relaxng/testData/parsing";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/AttributeCompletionTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/AttributeCompletionTest.java
index 77386a31f947..e39ee3cd6157 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/AttributeCompletionTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/AttributeCompletionTest.java
@@ -25,6 +25,7 @@ import org.intellij.plugins.testUtil.CopyFile;
*/
@CopyFile("*.rng")
public class AttributeCompletionTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "completion";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/ElementCompletionTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/ElementCompletionTest.java
index fd8ea31b3108..7dbbf6257926 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/ElementCompletionTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/ElementCompletionTest.java
@@ -26,6 +26,7 @@ import org.intellij.plugins.testUtil.CopyFile;
*/
@CopyFile("element-completion.rng")
public class ElementCompletionTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "completion";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/ExternalRncParsingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/ExternalRncParsingTest.java
index c1928b8a1eee..22d0fa930d01 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/ExternalRncParsingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/ExternalRncParsingTest.java
@@ -22,6 +22,7 @@ package org.intellij.plugins.relaxNG;
* Date: 07.08.2007
*/
public class ExternalRncParsingTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "parsing";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/HighlightingTestBase.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/HighlightingTestBase.java
index 53558fe2dbe1..2b6f0b36e71e 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/HighlightingTestBase.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/HighlightingTestBase.java
@@ -151,7 +151,7 @@ public abstract class HighlightingTestBase extends UsefulTestCase implements Ide
doCustomHighlighting(name, true, true);
}
- protected void doCustomHighlighting(String name, final boolean checkWeakWarnings, final Boolean includeExternalToolPass) throws Throwable {
+ protected void doCustomHighlighting(String name, final boolean checkWeakWarnings, final Boolean includeExternalToolPass) {
myTestFixture.configureByFile(name);
doCustomHighlighting(checkWeakWarnings, includeExternalToolPass);
@@ -188,11 +188,11 @@ public abstract class HighlightingTestBase extends UsefulTestCase implements Ide
return CodeInsightTestFixtureImpl.instantiateAndRun(myTestFixture.getFile(), editor, ignore, false);
}
- protected void doTestCompletion(String name, String ext) throws Throwable {
+ protected void doTestCompletion(String name, String ext) {
myTestFixture.testCompletion(name + "." + ext, name + "_after." + ext);
}
- protected void doTestCompletion(String before, String... variants) throws Throwable {
+ protected void doTestCompletion(String before, String... variants) {
myTestFixture.testCompletionVariants(before, variants);
}
@@ -200,12 +200,12 @@ public abstract class HighlightingTestBase extends UsefulTestCase implements Ide
doTestCompletion(before, "xml");
}
- protected void doTestRename(String name, String ext, String newName) throws Throwable {
+ protected void doTestRename(String name, String ext, String newName) {
myTestFixture.testRename(name + "." + ext, name + "_after." + ext, newName);
}
@SuppressWarnings({ "deprecation", "unchecked" })
- protected void doTestQuickFix(String file, String ext) throws Throwable {
+ protected void doTestQuickFix(String file, String ext) {
final PsiReference psiReference = myTestFixture.getReferenceAtCaretPositionWithAssertion(file + "." + ext);
assertNull("Reference", psiReference.resolve());
assertTrue(psiReference.getClass().getName() + " is not a QuickFixProvider", psiReference instanceof LocalQuickFixProvider);
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncCompletionTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncCompletionTest.java
index fe552d07fdcb..d0e2e99ae480 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncCompletionTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncCompletionTest.java
@@ -31,6 +31,7 @@ public class RncCompletionTest extends HighlightingTestBase {
CamelHumpMatcher.forceStartMatching(getTestRootDisposable());
}
+ @Override
public String getTestDataPath() {
return "completion/rnc";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncExternalHighlightingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncExternalHighlightingTest.java
index da70d9f62ae5..8f9146a7a370 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncExternalHighlightingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncExternalHighlightingTest.java
@@ -25,10 +25,12 @@ import org.intellij.plugins.testUtil.CopyFile;
*/
public class RncExternalHighlightingTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "highlighting/rnc";
}
+ @Override
protected void init() {
// new ProjectLoader(myTestFixture.getProject()).initComponent();
// ExternalResourceManager.getInstance().addResource("http://relaxng.org/ns/structure/1.0", new File("highlighting/relaxng.rng").getAbsolutePath());
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncHighlightingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncHighlightingTest.java
index f28b0864dce1..801dbfd6e4e4 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncHighlightingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncHighlightingTest.java
@@ -25,6 +25,7 @@ import org.intellij.plugins.testUtil.CopyFile;
*/
public class RncHighlightingTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "highlighting/rnc";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncIndexHighlightingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncIndexHighlightingTest.java
index 97b6219105e3..dd592368dc9c 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncIndexHighlightingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncIndexHighlightingTest.java
@@ -26,6 +26,7 @@ import org.intellij.plugins.testUtil.CopyFile;
@CopyFile("*.rnc")
public class RncIndexHighlightingTest extends AbstractIndexTest {
+ @Override
public String getTestDataPath() {
return "highlighting/rnc";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncRenameTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncRenameTest.java
index e8c789e2bc63..4ef44f823700 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RncRenameTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RncRenameTest.java
@@ -36,10 +36,12 @@ import java.io.File;
*/
public class RncRenameTest extends HighlightingTestBase {
+ @Override
protected CodeInsightTestFixture createFixture(@NotNull IdeaTestFixtureFactory factory) {
return createContentFixture(factory);
}
+ @Override
public String getTestDataPath() {
return "rename/rnc";
}
@@ -79,6 +81,7 @@ public class RncRenameTest extends HighlightingTestBase {
assertNotNull(file);
new WriteCommandAction.Simple(project) {
+ @Override
protected void run() throws Throwable {
myTestFixture.configureByFile("rename-in-include.rnc");
final RenameRefactoring refactoring = factory.createRename(file, "rename-after.rnc");
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngCompletionTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngCompletionTest.java
index 82a674451ef1..4f1a7d2f0fb8 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngCompletionTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngCompletionTest.java
@@ -25,6 +25,7 @@ import org.intellij.plugins.testUtil.CopyFile;
* Date: 22.08.2007
*/
public class RngCompletionTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "completion/rng";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngHighlightingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngHighlightingTest.java
index aa44eca4f674..aab32bdfe9d8 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngHighlightingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngHighlightingTest.java
@@ -29,6 +29,7 @@ import com.intellij.psi.xml.XmlTag;
*/
public class RngHighlightingTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "highlighting/rng";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngIndexHighlightingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngIndexHighlightingTest.java
index 0b89884ccace..f70595c39ce7 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngIndexHighlightingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngIndexHighlightingTest.java
@@ -26,6 +26,7 @@ import org.intellij.plugins.testUtil.CopyFile;
@CopyFile("*.rng")
public class RngIndexHighlightingTest extends AbstractIndexTest {
+ @Override
public String getTestDataPath() {
return "highlighting/rng";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngRenameTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngRenameTest.java
index 4923b8c8bb55..602500898c95 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngRenameTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngRenameTest.java
@@ -26,10 +26,12 @@ import org.jetbrains.annotations.NotNull;
* Date: 22.08.2007
*/
public class RngRenameTest extends HighlightingTestBase {
+ @Override
protected CodeInsightTestFixture createFixture(@NotNull IdeaTestFixtureFactory factory) {
return createContentFixture(factory);
}
+ @Override
public String getTestDataPath() {
return "rename/rng";
}
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlHighlightingTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlHighlightingTest.java
index 261ca4e2e98e..59f5bae41175 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlHighlightingTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlHighlightingTest.java
@@ -30,15 +30,18 @@ import org.intellij.plugins.testUtil.CopyFile;
*/
public class RngXmlHighlightingTest extends HighlightingTestBase {
+ @Override
public String getTestDataPath() {
return "highlighting";
}
+ @Override
protected void init() {
super.init();
FileTypeManager.getInstance().registerFileType(StdFileTypes.XML, "fo");
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
final ExternalResourceManagerEx m = ExternalResourceManagerEx.getInstanceEx();
ExternalResourceManagerExImpl
diff --git a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlValidationTest.java b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlValidationTest.java
index 1472e0a86abb..06bff38158a8 100644
--- a/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlValidationTest.java
+++ b/xml/relaxng/test/org/intellij/plugins/relaxNG/RngXmlValidationTest.java
@@ -83,9 +83,11 @@ public class RngXmlValidationTest extends HighlightingTestBase {
doExternalToolHighlighting(name);
}
+ @Override
protected void init() {
super.init();
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
final ExternalResourceManager mgr = ExternalResourceManager.getInstance();
mgr.addResource("urn:test:simple.rng", toAbsolutePath("validation/simple.rng"));
@@ -95,6 +97,7 @@ public class RngXmlValidationTest extends HighlightingTestBase {
});
}
+ @Override
public String getTestDataPath() {
return "validation";
}
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlBuilderTest.java b/xml/tests/src/com/intellij/codeInsight/XmlBuilderTest.java
index b735141ace9d..70b0263d35ad 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlBuilderTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlBuilderTest.java
@@ -1,4 +1,20 @@
/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
* @author max
*/
package com.intellij.codeInsight;
@@ -249,7 +265,7 @@ public class XmlBuilderTest extends LightCodeInsightTestCase {
);
}
- private static void doTest(String xml, String expectedEventSequence, final XmlBuilder.ProcessingOrder tagsAndAttributes) throws Exception {
+ private static void doTest(String xml, String expectedEventSequence, final XmlBuilder.ProcessingOrder tagsAndAttributes) {
final TestXmlBuilder builder = new TestXmlBuilder(tagsAndAttributes);
new XmlBuilderDriver(xml).build(builder);
assertEquals(expectedEventSequence, builder.getResult());
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlDocumentationTest.java b/xml/tests/src/com/intellij/codeInsight/XmlDocumentationTest.java
index 5e4d8c48587c..5d77aa2fc2b1 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlDocumentationTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlDocumentationTest.java
@@ -128,7 +128,7 @@ public class XmlDocumentationTest extends LightPlatformCodeInsightFixtureTestCas
PsiElement element;
final PsiFile psiFile;
- DocumentationTestContext(String... fileNames) throws Exception {
+ DocumentationTestContext(String... fileNames) {
copyAdditionalFiles(fileNames);
psiFile = myFixture.configureByFile(fileNames[0]);
originalElement = psiFile.findElementAt(myFixture.getEditor().getCaretModel().getOffset());
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlDtdTest.java b/xml/tests/src/com/intellij/codeInsight/XmlDtdTest.java
index e4c1da51c96e..72b67dbcb5d1 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlDtdTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlDtdTest.java
@@ -323,7 +323,7 @@ public class XmlDtdTest extends LightPlatformTestCase {
assertEquals("date", elements[0].getName());
}
- private static XmlNSDescriptor createDescriptor(String dtdText) throws Exception {
+ private static XmlNSDescriptor createDescriptor(String dtdText) {
PsiFile dtdFile = createLightFile("test.dtd", dtdText);
XmlNSDescriptorImpl descriptor = new XmlNSDescriptorImpl();
@@ -331,7 +331,7 @@ public class XmlDtdTest extends LightPlatformTestCase {
return descriptor;
}
- private static XmlTag tag(String tagName) throws Exception {
+ private static XmlTag tag(String tagName) {
XmlFile file = (XmlFile)PsiFileFactory.getInstance(getProject()).createFileFromText("tag.xml", StdFileTypes.XML, "<" + tagName + "/>");
return file.getDocument().getRootTag();
}
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlEventsTest.java b/xml/tests/src/com/intellij/codeInsight/XmlEventsTest.java
index 0e2090f94eed..049cc14ed864 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlEventsTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlEventsTest.java
@@ -66,7 +66,9 @@ public class XmlEventsTest extends LightCodeInsightTestCase {
final XmlTag tagFromText = XmlElementFactory.getInstance(getProject()).createTagFromText("<a>aaa</a>");
final XmlTag otherTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<a/>");
final XmlText xmlText = tagFromText.getValue().getTextElements()[0];
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
xmlText.insertAtOffset(otherTag, 2);
}
});
@@ -78,7 +80,9 @@ public class XmlEventsTest extends LightCodeInsightTestCase {
final Listener listener = addPomListener();
final XmlTag tagFromText = XmlElementFactory.getInstance(getProject()).createTagFromText("<a>aaa</a>");
final XmlText xmlText = tagFromText.getValue().getTextElements()[0];
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
xmlText.insertText("bb", 2);
}
});
@@ -89,7 +93,9 @@ public class XmlEventsTest extends LightCodeInsightTestCase {
public void test4() throws Exception{
final Listener listener = addPomListener();
final XmlTag tagFromText = XmlElementFactory.getInstance(getProject()).createTagFromText("<a>a </a>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
tagFromText.addAfter(tagFromText.getValue().getTextElements()[0], tagFromText.getValue().getTextElements()[0]);
}
});
@@ -100,7 +106,9 @@ public class XmlEventsTest extends LightCodeInsightTestCase {
public void test5() throws Exception{
final Listener listener = addPomListener();
final XmlTag tagFromText = XmlElementFactory.getInstance(getProject()).createTagFromText("<a>aaa</a>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
tagFromText.delete();
}
});
@@ -156,7 +164,9 @@ public class XmlEventsTest extends LightCodeInsightTestCase {
final XmlTag tag = XmlElementFactory.getInstance(getProject()).createTagFromText(text);
final XmlAttribute attribute = tag.getAttribute("name", null);
assert attribute != null;
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
attribute.setValue("new");
}
});
@@ -173,7 +183,9 @@ public class XmlEventsTest extends LightCodeInsightTestCase {
final PsiFileImpl containingFile = (PsiFileImpl)tagFromText.getContainingFile();
final PsiDocumentManager documentManager = PsiDocumentManager.getInstance(getProject());
final Document document = documentManager.getDocument(containingFile);
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
document.insertString(positionToInsert, stringToInsert);
documentManager.commitDocument(document);
}
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlInsightTest.java b/xml/tests/src/com/intellij/codeInsight/XmlInsightTest.java
index 01d46ca33790..675a424a4c3f 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlInsightTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlInsightTest.java
@@ -143,11 +143,11 @@ public class XmlInsightTest extends LightPlatformTestCase {
assertTrue(attributes[1].isRequired());
}
- private static XmlFile createFile(String text) throws Exception {
+ private static XmlFile createFile(String text) {
return (XmlFile)createFile("test.xml", text);
}
- private static XmlNSDescriptor createDescriptor(XmlFile file) throws Exception{
+ private static XmlNSDescriptor createDescriptor(XmlFile file) {
return file.getDocument().getRootTagNSDescriptor();
}
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlPerformanceTest.java b/xml/tests/src/com/intellij/codeInsight/XmlPerformanceTest.java
index fc5fec29df21..089daa98ecae 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlPerformanceTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlPerformanceTest.java
@@ -1,5 +1,17 @@
/*
- * Copyright (c) 2000-2006 JetBrains s.r.o. All Rights Reserved.
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
/*
@@ -59,7 +71,7 @@ public class XmlPerformanceTest extends LightQuickFixTestCase {
return ourTestsWithFolding.contains(getTestName(false));
}
- private void doIndentTest(int time) throws Exception {
+ private void doIndentTest(int time) {
configureByFile(getBasePath() + getTestName(false)+".xml");
doHighlighting();
myEditor.getSelectionModel().setSelection(0,myEditor.getDocument().getTextLength());
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlSchemaTest.java b/xml/tests/src/com/intellij/codeInsight/XmlSchemaTest.java
index fc9fe64b7ec1..9100b11c206e 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlSchemaTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlSchemaTest.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.codeInsight;
import com.intellij.psi.PsiFile;
@@ -749,7 +764,7 @@ public class XmlSchemaTest extends LightCodeInsightTestCase {
assertNull(attribute);
}
- private static XmlNSDescriptor createDescriptor(@NonNls String dtdText) throws Exception {
+ private static XmlNSDescriptor createDescriptor(@NonNls String dtdText) {
PsiFile dtdFile = createFile("test.xml", dtdText);
return new XmlNSDescriptorImpl((XmlFile)dtdFile);
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlTagTest.java b/xml/tests/src/com/intellij/codeInsight/XmlTagTest.java
index 19385dd61e5f..5c4d0535c25b 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlTagTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlTagTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -99,7 +99,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testDeleteTag() throws Throwable {
XmlTag aTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<a><b/> </a>");
final XmlTag bTag = aTag.findFirstSubTag("b");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
bTag.delete();
}
});
@@ -110,7 +112,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testReplaceTag() throws Throwable {
final XmlTag aTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<a><b/></a>");
final XmlTag bTag = aTag.findFirstSubTag("b");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
PsiElement cTag = bTag.replace(XmlElementFactory.getInstance(getProject()).createTagFromText("<c/>"));
assertEquals(1, aTag.getSubTags().length);
assertEquals(cTag, aTag.getSubTags()[0]);
@@ -123,7 +127,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlTag aTag = elementFactory.createTagFromText("<a>1</a>");
final XmlText displayText = elementFactory.createDisplayText("2");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
final PsiElement psiElement = aTag.addAfter(displayText, aTag.getValue().getChildren()[0]);
assertEquals(psiElement.getContainingFile(), aTag.getContainingFile());
}
@@ -131,7 +137,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
}
public void testWhitespaceInsideTag() throws Exception {
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
XmlElementFactory.getInstance(getProject()).createTagFromText("<p/>").getValue().setText("\n");
}
});
@@ -141,7 +149,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
XmlFile xhtmlFile = (XmlFile)PsiFileFactory.getInstance(getProject()).createFileFromText("dummy.xhtml", "<html/>");
final XmlTag rootTag = xhtmlFile.getDocument().getRootTag();
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
rootTag.setAttribute("foo", "bar");
}
});
@@ -153,7 +163,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testSetAttribute() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html/>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
rootTag.setAttribute("foo", "bar");
}
});
@@ -167,7 +179,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testSetAttributeWithQuotes() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html/>");
final String value = "a \"b\" c";
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
rootTag.setAttribute("foo", value);
}
});
@@ -181,7 +195,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testSetAttributeWithQuotes2() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html/>");
final String value = "'a \"b\" c'";
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
rootTag.setAttribute("foo", value);
}
});
@@ -211,7 +227,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testSetAttributeWithNamespaces() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<ns:tag xmlns:ns=\"xxx\"/>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
rootTag.setAttribute("foo", "", "bar");
}
});
@@ -225,7 +243,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testTextEdit1() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html>aaa</html>");
final XmlText xmlText = rootTag.getValue().getTextElements()[0];
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
xmlText.removeText(0, 3);
}
});
@@ -235,7 +255,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testTextEdit2() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html>a&lt;a</html>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
rootTag.getValue().getTextElements()[0].removeText(0, 3);
}
});
@@ -246,7 +268,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testTextEdit3() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html>a&lt;a</html>");
final XmlText xmlText = rootTag.getValue().getTextElements()[0];
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
xmlText.removeText(1, 2);
}
});
@@ -258,7 +282,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testTextEdit4() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html>aaa</html>");
final XmlText xmlText = rootTag.getValue().getTextElements()[0];
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
xmlText.removeText(1, 2);
}
});
@@ -293,7 +319,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testTextEdit6() throws Exception {
final XmlTag rootTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<html>a<b>1</b>c</html>");
final XmlTag xmlTag = rootTag.findFirstSubTag("b");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
xmlTag.delete();
}
});
@@ -303,7 +331,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testBrace() throws Exception {
final XmlTag tagFromText = XmlElementFactory.getInstance(getProject()).createTagFromText("<a/>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
tagFromText.getValue().setText("<");
}
});
@@ -406,7 +436,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlTagChild child = tag.getValue().getChildren()[0];
assertTrue(child instanceof XmlText && child.getText().equals("234"));
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
assertNotNull(tag.getParent().addBefore(child, tag));
tag.delete();
}
@@ -424,7 +456,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlTagChild child = tag.getValue().getChildren()[0];
assertTrue(child instanceof XmlText && child.getText().equals("234"));
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
assertNotNull(tag.getParent().addBefore(child, tag));
tag.delete();
}
@@ -437,7 +471,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
public void testDisplayText() throws Throwable {
final XmlTag tag = XmlElementFactory.getInstance(getProject()).createTagFromText(" <foo/>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
tag.add(XmlElementFactory.getInstance(getProject()).createDisplayText("aaa\nbbb"));
}
});
@@ -453,7 +489,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlTagChild[] tagElements = tagB.getValue().getChildren();
final PsiElement parent = tagB.getParent();
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
PsiElement first = parent.addBefore(tagElements[0], tagB);
assertNotNull(first);
}
@@ -507,7 +545,9 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlFile file = (XmlFile)PsiFileFactory.getInstance(getProject())
.createFileFromText("test.xml", "<a>\n <a>\n <b>\n hasgdgasjdgasdg asgdjhasgd</b>\n </a>\n</a>");
final XmlTag tagB = file.getDocument().getRootTag();
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
tagB.getSubTags()[0].getSubTags()[0].delete();
}
});
@@ -598,7 +638,7 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlText xmlText = (XmlText)children[0];
assertEquals(text, xmlText.getText());
xmlText.removeText(i, j);
- final StringBuffer expected = new StringBuffer(text);
+ final StringBuilder expected = new StringBuilder(text);
expected.delete(i, j);
assertEquals(expected.toString(), xmlText.getValue());
}
@@ -618,7 +658,7 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlText xmlText = (XmlText)children[0];
assertEquals(text, xmlText.getValue());
xmlText.insertText(textToInsert, i);
- final StringBuffer expected = new StringBuffer(text);
+ final StringBuilder expected = new StringBuilder(text);
expected.insert(i, textToInsert);
assertEquals(expected.toString(), xmlText.getValue());
}
@@ -653,7 +693,7 @@ public class XmlTagTest extends LightCodeInsightTestCase {
doTestEscapedInsertion("_x_y_z_", "a");
}
- public static void notestEscapedDeletion() throws Throwable {
+ public static void notestEscapedDeletion() {
doTestEscapedDeletion("&");
doTestEscapedDeletion("&&");
doTestEscapedDeletion(" &&");
@@ -686,7 +726,7 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlText xmlText = (XmlText)children[0];
assertEquals(tagText, xmlText.getText());
xmlText.insertText(textToInsert, i);
- final StringBuffer expectedDisplay = new StringBuffer(text.replace('_', '\u00a0'));
+ final StringBuilder expectedDisplay = new StringBuilder(text.replace('_', '\u00a0'));
expectedDisplay.insert(i, textToInsert);
assertEquals(expectedDisplay.toString(), xmlText.getValue());
@@ -708,7 +748,7 @@ public class XmlTagTest extends LightCodeInsightTestCase {
final XmlText xmlText = (XmlText)children[0];
assertEquals(tagText, xmlText.getText());
xmlText.removeText(i, j);
- final StringBuffer expectedDisplay = new StringBuffer(text.replace('_', ' '));
+ final StringBuilder expectedDisplay = new StringBuilder(text.replace('_', ' '));
expectedDisplay.delete(i, j);
assertEquals(expectedDisplay.toString(), xmlText.getValue());
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlTagWriteTest.java b/xml/tests/src/com/intellij/codeInsight/XmlTagWriteTest.java
index 89cc1263131a..39c77f1ff37b 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlTagWriteTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlTagWriteTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -48,7 +48,9 @@ public class XmlTagWriteTest extends LightCodeInsightTestCase{
public void test2() throws IncorrectOperationException {
final XmlTag xmlTag = XmlElementFactory.getInstance(getProject()).createTagFromText("<tag1></tag1>");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
xmlTag.add(xmlTag.createChildTag("tag2", XmlUtil.EMPTY_URI, null, false));
}
});
diff --git a/xml/tests/src/com/intellij/codeInsight/XmlTestUtil.java b/xml/tests/src/com/intellij/codeInsight/XmlTestUtil.java
index 75aa8825cc68..1fd17df1b612 100644
--- a/xml/tests/src/com/intellij/codeInsight/XmlTestUtil.java
+++ b/xml/tests/src/com/intellij/codeInsight/XmlTestUtil.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.codeInsight;
import com.intellij.openapi.project.Project;
@@ -8,12 +23,12 @@ import org.jetbrains.annotations.NonNls;
public class XmlTestUtil {
- public static XmlTag tag(@NonNls String tagName, Project project) throws Exception {
+ public static XmlTag tag(@NonNls String tagName, Project project) {
XmlFile file = (XmlFile)PsiFileFactory.getInstance(project).createFileFromText("tag.xml", "<" + tagName + "/>");
return file.getDocument().getRootTag();
}
- public static XmlTag tag(@NonNls String tagName, @NonNls String namespace, Project project) throws Exception {
+ public static XmlTag tag(@NonNls String tagName, @NonNls String namespace, Project project) {
XmlFile file = (XmlFile)PsiFileFactory.getInstance(project)
.createFileFromText("tag.xml", "<" + tagName + " xmlns=\"" + namespace + "\"/>");
return file.getDocument().getRootTag();
diff --git a/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java b/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java
index 05eb6a341b17..2b6b36c44197 100644
--- a/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.codeInsight.completion;
import com.intellij.codeInsight.CodeInsightSettings;
@@ -17,6 +32,7 @@ import com.intellij.psi.statistics.StatisticsManager;
import com.intellij.psi.statistics.impl.StatisticsManagerImpl;
import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase;
import com.intellij.xml.util.XmlUtil;
+import org.jetbrains.annotations.NotNull;
import java.util.List;
@@ -67,7 +83,7 @@ public class XmlCompletionTest extends LightCodeInsightFixtureTestCase {
protected void runTest() throws Throwable {
new WriteCommandAction(getProject()) {
@Override
- protected void run(Result result) throws Throwable {
+ protected void run(@NotNull Result result) throws Throwable {
XmlCompletionTest.super.runTest();
}
}.execute();
@@ -200,7 +216,7 @@ public class XmlCompletionTest extends LightCodeInsightFixtureTestCase {
myFixture.type(c);
}
- private void doCompletionTest(final String ext, final String url, final String location) throws Exception {
+ private void doCompletionTest(final String ext, final String url, final String location) {
final String testName = getTestName(false);
addResource(url, location);
@@ -411,7 +427,7 @@ public class XmlCompletionTest extends LightCodeInsightFixtureTestCase {
basicDoTest("");
}
- private void basicDoTest(String ext) throws Exception {
+ private void basicDoTest(String ext) {
final String testName = getTestName(false) + ext;
configureByFile(testName + ".xml");
checkResultByFile(testName + "_after.xml");
@@ -518,7 +534,7 @@ public class XmlCompletionTest extends LightCodeInsightFixtureTestCase {
checkResultByFile(testName + "_after.xml");
}
- public void _testIDEADEV_32773() throws Exception {
+ public void _testIDEADEV_32773() {
final String testName = getTestName(false);
configureByFiles(testName + ".xml",
@@ -686,5 +702,15 @@ public class XmlCompletionTest extends LightCodeInsightFixtureTestCase {
myFixture.testCompletionVariants("tagValue/completeEnum.xml", "none", "standard");
myFixture.testCompletionVariants("tagValue/completeBoolean.xml", "false", "true");
}
+
+ public void testInheritedAttribute() throws Exception {
+ myFixture.configureByFiles("InheritedAttr/test.xsd", "InheritedAttr/library.xsd");
+ myFixture.testCompletionVariants("InheritedAttr/test.xml", "buz",
+ "library:boo",
+ "xml:base",
+ "xml:id",
+ "xml:lang",
+ "xml:space");
+ }
}
diff --git a/xml/tests/src/com/intellij/codeInsight/completion/XmlTypedHandlersTest.java b/xml/tests/src/com/intellij/codeInsight/completion/XmlTypedHandlersTest.java
index a4f6c2ac20df..41e64aad87e9 100644
--- a/xml/tests/src/com/intellij/codeInsight/completion/XmlTypedHandlersTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/completion/XmlTypedHandlersTest.java
@@ -95,6 +95,16 @@ public class XmlTypedHandlersTest extends LightPlatformCodeInsightFixtureTestCas
}
}
+ public void testFooBar() throws Exception {
+ doTest("<foo>\n" +
+ " <bar<caret></bar>\n" +
+ "</foo>",
+ '>',
+ "<foo>\n" +
+ " <bar></bar>\n" +
+ "</foo>");
+ }
+
private void doTest(String text, char c, String result) {
myFixture.configureByText(XmlFileType.INSTANCE, text);
myFixture.type(c);
diff --git a/xml/tests/src/com/intellij/codeInsight/daemon/XmlHighlightingTest.java b/xml/tests/src/com/intellij/codeInsight/daemon/XmlHighlightingTest.java
index 7b9cc1404d02..7bfe266493e6 100644
--- a/xml/tests/src/com/intellij/codeInsight/daemon/XmlHighlightingTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/daemon/XmlHighlightingTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -548,7 +548,9 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
final XmlAttribute attribute = t.getAttribute("name", null);
final XmlAttributeValue valueElement = attribute.getValueElement();
final PsiReference nameReference = valueElement.getReferences()[0];
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
nameReference.handleElementRename("zzz");
}
});
@@ -561,7 +563,9 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
public void testExternalValidatorOnValidXmlWithNamespacesNotSetup() throws Exception {
final ExternalResourceManagerEx instanceEx = ExternalResourceManagerEx.getInstanceEx();
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
instanceEx.addIgnoredResource("http://xml.apache.org/axis/wsdd2/");
instanceEx.addIgnoredResource("http://xml.apache.org/axis/wsdd2/providers/java");
instanceEx.addIgnoredResource("http://soapinterop.org/xsd2");
@@ -575,14 +579,18 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
public void testExternalValidatorOnValidXmlWithNamespacesNotSetup2() throws Exception {
final ExternalResourceManagerEx instanceEx = ExternalResourceManagerEx.getInstanceEx();
try {
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
instanceEx.addIgnoredResource("");
}
});
doTest(getFullRelativeTestName(".xml"), true, false);
} finally {
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
instanceEx.removeIgnoredResource("");
}
});
@@ -1057,7 +1065,9 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
}
public void testIgnoredNamespaceHighlighting() throws Exception {
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
ExternalResourceManagerEx.getInstanceEx().addIgnoredResource("http://ignored/uri");
}
});
@@ -1234,6 +1244,7 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
final String text = myEditor.getDocument().getText();
WriteCommandAction.runWriteCommandAction(null, new Runnable() {
+ @Override
public void run() {
myEditor.getSelectionModel().setSelection(0, myEditor.getDocument().getTextLength());
}
@@ -1409,7 +1420,9 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
final Editor schemaEditor = allEditors[0] == myEditor ? allEditors[1]:allEditors[0];
final String text = schemaEditor.getDocument().getText();
final String newText = text.replaceAll("xsd","xs");
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
schemaEditor.getDocument().replaceString(0, text.length(), newText);
}
});
@@ -1550,7 +1563,6 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
);
}
- @HighlightingFlags(HighlightingFlag.SkipExternalValidation)
public void testDocBook5() throws Exception {
doTestWithLocations(
new String[][] {
@@ -1567,7 +1579,9 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
Collection<HighlightInfo> infos = filterInfos(doHighlighting());
assertEquals(2, infos.size());
- WriteCommandAction.runWriteCommandAction(null, new Runnable(){public void run() {
+ WriteCommandAction.runWriteCommandAction(null, new Runnable(){
+ @Override
+ public void run() {
EditorModificationUtil.deleteSelectedText(myEditor);
}
});
@@ -1577,6 +1591,7 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
assertEquals(11, infos.size());
WriteCommandAction.runWriteCommandAction(null, new Runnable() {
+ @Override
public void run() {
EditorModificationUtil.insertStringAtCaret(myEditor, "<");
}
@@ -2050,6 +2065,11 @@ public class XmlHighlightingTest extends DaemonAnalyzerTestCase {
assertTrue(resolve instanceof XmlTag);
}
+ public void testQualifiedAttributeReference() throws Exception {
+ configureByFiles(null, BASE_PATH + "qualified.xml", BASE_PATH + "qualified.xsd");
+ doDoTest(true, false);
+ }
+
@Override
protected void setUp() throws Exception {
super.setUp();
diff --git a/xml/tests/src/com/intellij/codeInsight/daemon/quickFix/ExtractExternalResourceLinksTest.java b/xml/tests/src/com/intellij/codeInsight/daemon/quickFix/ExtractExternalResourceLinksTest.java
index 96f752a4f2a1..a3d4cbdfa1b7 100644
--- a/xml/tests/src/com/intellij/codeInsight/daemon/quickFix/ExtractExternalResourceLinksTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/daemon/quickFix/ExtractExternalResourceLinksTest.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.codeInsight.daemon.quickFix;
import com.intellij.codeInsight.daemon.impl.quickfix.FetchExtResourceAction;
@@ -78,7 +93,7 @@ public class ExtractExternalResourceLinksTest extends LightCodeInsightTestCase {
doExtractionOfEmbeddedFiles(new String[] {shortFileName}, new String[][] {expectedFileNames} );
}
- private void doExtractionOfEmbeddedFiles(String[] shortFileName,String[][] expectedFileNames) throws Exception {
+ private void doExtractionOfEmbeddedFiles(String[] shortFileName,String[][] expectedFileNames) {
final List<VirtualFile> files = new ArrayList<VirtualFile>(shortFileName.length);
for(String s: shortFileName) {
if (FileUtilRt.getExtension(s).length() < 3) {
diff --git a/xml/tests/src/com/intellij/html/MicrodataCompletionTest.java b/xml/tests/src/com/intellij/html/MicrodataCompletionTest.java
index 9a0c19ed5542..a253430643e6 100644
--- a/xml/tests/src/com/intellij/html/MicrodataCompletionTest.java
+++ b/xml/tests/src/com/intellij/html/MicrodataCompletionTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -54,7 +54,7 @@ public class MicrodataCompletionTest extends CodeInsightFixtureTestCase {
}
}
- private void configureAndComplete(String text, String[] items) throws Exception {
+ private void configureAndComplete(String text, String[] items) {
myFixture.configureByText(StdFileTypes.HTML, text);
myFixture.complete(CompletionType.BASIC);
}
diff --git a/xml/tests/src/com/intellij/xml/XMLCatalogManagerTest.java b/xml/tests/src/com/intellij/xml/XMLCatalogManagerTest.java
index e2091af5410f..8db30d1cf057 100644
--- a/xml/tests/src/com/intellij/xml/XMLCatalogManagerTest.java
+++ b/xml/tests/src/com/intellij/xml/XMLCatalogManagerTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -79,7 +79,7 @@ public class XMLCatalogManagerTest extends LightPlatformCodeInsightFixtureTestCa
assertFalse(new XMLCatalogConfigurable().isModified());
}
- private XMLCatalogManager getManager() throws IOException {
+ private XMLCatalogManager getManager() {
return new XMLCatalogManager(getTestDataPath() + "catalog.properties");
}
diff --git a/xml/tests/src/com/intellij/xml/XmlFoldingTest.java b/xml/tests/src/com/intellij/xml/XmlFoldingTest.java
index c6f76e3c55ad..76cb6f3d0dd1 100644
--- a/xml/tests/src/com/intellij/xml/XmlFoldingTest.java
+++ b/xml/tests/src/com/intellij/xml/XmlFoldingTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,7 +43,7 @@ public class XmlFoldingTest extends LightPlatformCodeInsightFixtureTestCase {
doTest(".html");
}
- private void doTest(String extension) throws Throwable {
+ private void doTest(String extension) {
myFixture.testFolding(getTestDataPath() + getTestName(true) + extension);
}
diff --git a/xml/tests/src/com/intellij/xml/XmlNamespacesTest.java b/xml/tests/src/com/intellij/xml/XmlNamespacesTest.java
index 5e0932b2a579..c38ce07bc1e2 100644
--- a/xml/tests/src/com/intellij/xml/XmlNamespacesTest.java
+++ b/xml/tests/src/com/intellij/xml/XmlNamespacesTest.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml;
import com.intellij.codeInsight.actions.OptimizeImportsProcessor;
@@ -224,7 +239,7 @@ public class XmlNamespacesTest extends CodeInsightFixtureTestCase {
doUnusedDeclarationTest(text, after, name, true);
}
- private void doUnusedDeclarationTest(String text, String after, String name, boolean testOptimizeImports) throws Exception {
+ private void doUnusedDeclarationTest(String text, String after, String name, boolean testOptimizeImports) {
myFixture.configureByText("a.xml", text);
myFixture.testHighlighting();
IntentionAction action = myFixture.getAvailableIntention(name);
diff --git a/xml/tests/src/com/intellij/xml/XmlSchemaPrefixTest.java b/xml/tests/src/com/intellij/xml/XmlSchemaPrefixTest.java
index feae6f6f487c..74aefe81ad47 100644
--- a/xml/tests/src/com/intellij/xml/XmlSchemaPrefixTest.java
+++ b/xml/tests/src/com/intellij/xml/XmlSchemaPrefixTest.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml;
import com.intellij.testFramework.fixtures.CodeInsightFixtureTestCase;
@@ -24,7 +39,7 @@ public class XmlSchemaPrefixTest extends CodeInsightFixtureTestCase {
doRename("xsd");
}
- private void doRename(String newValue) throws Exception {
+ private void doRename(String newValue) {
final String name = getTestName(true);
CodeInsightTestUtil.doInlineRenameTest(new SchemaPrefixRenameHandler(), name, "xml", newValue, myFixture);
}
diff --git a/xml/tests/src/com/intellij/xml/XmlSmartCompletionTest.java b/xml/tests/src/com/intellij/xml/XmlSmartCompletionTest.java
index 4a01392b3fb2..21f0496c3f77 100644
--- a/xml/tests/src/com/intellij/xml/XmlSmartCompletionTest.java
+++ b/xml/tests/src/com/intellij/xml/XmlSmartCompletionTest.java
@@ -1,9 +1,24 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml;
import com.intellij.codeInsight.CodeInsightSettings;
import com.intellij.codeInsight.completion.CompletionType;
import com.intellij.codeInsight.lookup.LookupElement;
-import com.intellij.javaee.ExternalResourceManagerImpl;
+import com.intellij.javaee.ExternalResourceManagerExImpl;
import com.intellij.testFramework.IdeaTestCase;
import com.intellij.testFramework.PlatformTestUtil;
import com.intellij.testFramework.fixtures.LightPlatformCodeInsightFixtureTestCase;
@@ -101,8 +116,8 @@ public class XmlSmartCompletionTest extends LightPlatformCodeInsightFixtureTestC
@Override
public void setUp() throws Exception {
super.setUp();
- ExternalResourceManagerImpl.registerResourceTemporarily("http://java.sun.com/j2ee/dtds/web-app_2_3.dtd",
- getTestDataPath() + "/web-app_2_3.dtd", getTestRootDisposable());
+ ExternalResourceManagerExImpl.registerResourceTemporarily("http://java.sun.com/j2ee/dtds/web-app_2_3.dtd",
+ getTestDataPath() + "/web-app_2_3.dtd", getTestRootDisposable());
}
@Override
diff --git a/xml/tests/src/com/intellij/xml/actions/GenerateXmlTagTest.java b/xml/tests/src/com/intellij/xml/actions/GenerateXmlTagTest.java
index fca9d694ed39..8e401a9a8b2e 100644
--- a/xml/tests/src/com/intellij/xml/actions/GenerateXmlTagTest.java
+++ b/xml/tests/src/com/intellij/xml/actions/GenerateXmlTagTest.java
@@ -1,6 +1,21 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml.actions;
-import com.intellij.javaee.ExternalResourceManagerImpl;
+import com.intellij.javaee.ExternalResourceManagerExImpl;
import com.intellij.testFramework.IdeaTestCase;
import com.intellij.testFramework.PlatformTestUtil;
import com.intellij.testFramework.fixtures.CodeInsightTestUtil;
@@ -68,8 +83,8 @@ public class GenerateXmlTagTest extends LightPlatformCodeInsightFixtureTestCase
@Override
public void setUp() throws Exception {
super.setUp();
- ExternalResourceManagerImpl.registerResourceTemporarily("http://java.sun.com/j2ee/dtds/web-app_2_3.dtd",
- getTestDataPath() + "/web-app_2_3.dtd", getTestRootDisposable());
+ ExternalResourceManagerExImpl.registerResourceTemporarily("http://java.sun.com/j2ee/dtds/web-app_2_3.dtd",
+ getTestDataPath() + "/web-app_2_3.dtd", getTestRootDisposable());
}
@Override
diff --git a/xml/tests/src/com/intellij/xml/actions/SplitTagActionTest.java b/xml/tests/src/com/intellij/xml/actions/SplitTagActionTest.java
index 205c03f8a285..f4fdf292c705 100644
--- a/xml/tests/src/com/intellij/xml/actions/SplitTagActionTest.java
+++ b/xml/tests/src/com/intellij/xml/actions/SplitTagActionTest.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml.actions;
import com.intellij.codeInsight.daemon.LightIntentionActionTestCase;
@@ -20,6 +35,7 @@ public class SplitTagActionTest extends LightIntentionActionTestCase {
return "";
}
+ @Override
@NotNull
protected String getTestDataPath() {
return PlatformTestUtil.getCommunityPath() + "/xml/tests/testData/intentions/splitTag";
diff --git a/xml/tests/testData/completion/InheritedAttr/library.xsd b/xml/tests/testData/completion/InheritedAttr/library.xsd
new file mode 100644
index 000000000000..6381dd0b729f
--- /dev/null
+++ b/xml/tests/testData/completion/InheritedAttr/library.xsd
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema attributeFormDefault="unqualified"
+ elementFormDefault="qualified"
+ targetNamespace="http://library"
+ xmlns:library="http://library"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="bar" type='library:barType'/>
+ <xs:complexType name="barType">
+ <xs:attribute type='xs:string' name="buz"/>
+ <xs:anyAttribute namespace="##any"/>
+ </xs:complexType>
+ <xs:attribute type='xs:string' name="boo"/>
+</xs:schema> \ No newline at end of file
diff --git a/xml/tests/testData/completion/InheritedAttr/test.xml b/xml/tests/testData/completion/InheritedAttr/test.xml
new file mode 100644
index 000000000000..dfa5afac32b5
--- /dev/null
+++ b/xml/tests/testData/completion/InheritedAttr/test.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<test:foo xmlns:test="http://test"
+ xmlns:library="http://library"
+ <caret>/> \ No newline at end of file
diff --git a/xml/tests/testData/completion/InheritedAttr/test.xsd b/xml/tests/testData/completion/InheritedAttr/test.xsd
new file mode 100644
index 000000000000..bb9e9824cf51
--- /dev/null
+++ b/xml/tests/testData/completion/InheritedAttr/test.xsd
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema attributeFormDefault="unqualified"
+ elementFormDefault="qualified"
+ targetNamespace="http://test"
+ xmlns:local="http://test"
+ xmlns:library="http://library"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:import namespace="http://library"/>
+ <xs:element name="foo" type='local:fooType'/>
+ <xs:complexType name="fooType">
+ <xs:complexContent>
+ <xs:extension base='library:barType'/>
+ </xs:complexContent>
+ </xs:complexType>
+</xs:schema> \ No newline at end of file
diff --git a/xml/tests/testData/xml/DocBook5.xml b/xml/tests/testData/xml/DocBook5.xml
index d00d1464e9c6..79fb3cbd370b 100644
--- a/xml/tests/testData/xml/DocBook5.xml
+++ b/xml/tests/testData/xml/DocBook5.xml
@@ -1,13 +1,16 @@
-<book lang="de"
+<book xml:lang="de"
xmlns="http://docbook.org/ns/docbook"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd
http://www.w3.org/1999/xlink http://www.w3.org/1999/xlink.xsd">
+ <chapter>
<title>
<link xlink:href="http://www.web.de">linklabel</link>
</title>
+ <para> Hi there </para>
+ </chapter>
</book> \ No newline at end of file
diff --git a/xml/tests/testData/xml/qualified.xml b/xml/tests/testData/xml/qualified.xml
new file mode 100644
index 000000000000..ce8e205b1bbd
--- /dev/null
+++ b/xml/tests/testData/xml/qualified.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<exercise xmlns="http://www.vibrogym.com/schema">
+
+ <name xml:lang="en">test</name>
+</exercise> \ No newline at end of file
diff --git a/xml/tests/testData/xml/qualified.xsd b/xml/tests/testData/xml/qualified.xsd
new file mode 100644
index 000000000000..c35920be54de
--- /dev/null
+++ b/xml/tests/testData/xml/qualified.xsd
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns="http://www.vibrogym.com/schema"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.vibrogym.com/schema"
+ elementFormDefault="qualified" >
+
+ <xs:import schemaLocation="http://www.w3.org/2001/xml.xsd"
+ namespace="http://www.w3.org/XML/1998/namespace"/>
+
+ <xs:complexType name="localizedNameType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:element name="exercise">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="name"
+ type="localizedNameType"
+ minOccurs="1"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema> \ No newline at end of file
diff --git a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlErrorQuickFixProvider.java b/xml/xml-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlErrorQuickFixProvider.java
index 44a6db798ba4..9f3b33daf6db 100644
--- a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlErrorQuickFixProvider.java
+++ b/xml/xml-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlErrorQuickFixProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlNsPrefixAnnotator.java b/xml/xml-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlNsPrefixAnnotator.java
index eacbd5c78c73..c9e83b4bfee8 100644
--- a/xml/impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlNsPrefixAnnotator.java
+++ b/xml/xml-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/XmlNsPrefixAnnotator.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-analysis-impl/src/com/intellij/codeInspection/EmptyXmlQuickFixFactory.java b/xml/xml-analysis-impl/src/com/intellij/codeInspection/EmptyXmlQuickFixFactory.java
new file mode 100644
index 000000000000..ce56f3923abc
--- /dev/null
+++ b/xml/xml-analysis-impl/src/com/intellij/codeInspection/EmptyXmlQuickFixFactory.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.intellij.codeInspection;
+
+import com.intellij.codeInsight.intention.QuickFixes;
+import com.intellij.psi.PsiElement;
+import com.intellij.psi.xml.XmlTag;
+import com.intellij.psi.xml.XmlToken;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+public class EmptyXmlQuickFixFactory extends XmlQuickFixFactory {
+ @NotNull
+ @Override
+ public LocalQuickFixAndIntentionActionOnPsiElement insertRequiredAttributeFix(@NotNull XmlTag tag,
+ @NotNull String attrName,
+ @NotNull String... values) {
+ return QuickFixes.EMPTY_FIX;
+ }
+
+ @NotNull
+ @Override
+ public LocalQuickFix createNSDeclarationIntentionFix(@NotNull PsiElement element,
+ @NotNull String namespacePrefix,
+ @Nullable XmlToken token) {
+ return QuickFixes.EMPTY_ACTION;
+ }
+}
diff --git a/xml/xml-analysis-impl/src/com/intellij/codeInspection/htmlInspections/XmlWrongClosingTagNameInspection.java b/xml/xml-analysis-impl/src/com/intellij/codeInspection/htmlInspections/XmlWrongClosingTagNameInspection.java
index b1b550163120..7ecdf14bad43 100644
--- a/xml/xml-analysis-impl/src/com/intellij/codeInspection/htmlInspections/XmlWrongClosingTagNameInspection.java
+++ b/xml/xml-analysis-impl/src/com/intellij/codeInspection/htmlInspections/XmlWrongClosingTagNameInspection.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -154,8 +154,8 @@ public class XmlWrongClosingTagNameInspection implements Annotator {
while (current != null) {
final IElementType elementType = prev.getElementType();
- if ((elementType == XmlElementType.XML_NAME || elementType == XmlElementType.XML_TAG_NAME) &&
- current.getElementType() == XmlElementType.XML_END_TAG_START) {
+ if ((elementType == XmlTokenType.XML_NAME || elementType == XmlTokenType.XML_TAG_NAME) &&
+ current.getElementType() == XmlTokenType.XML_END_TAG_START) {
return (XmlToken)prev.getPsi();
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XMLExternalAnnotator.java b/xml/xml-analysis-impl/src/com/intellij/lang/xml/XMLExternalAnnotator.java
index 599ed5dc44a0..82731a089443 100644
--- a/xml/impl/src/com/intellij/lang/xml/XMLExternalAnnotator.java
+++ b/xml/xml-analysis-impl/src/com/intellij/lang/xml/XMLExternalAnnotator.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-analysis-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/IdRefReference.java b/xml/xml-analysis-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/IdRefReference.java
index 601b6e339439..27d23f849942 100644
--- a/xml/xml-analysis-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/IdRefReference.java
+++ b/xml/xml-analysis-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/IdRefReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -185,7 +185,7 @@ public class IdRefReference extends BasicAttributeValueReference {
public PsiElement resolve() {
final PsiElement[] result = new PsiElement[1];
process(new PsiElementProcessor<PsiElement>() {
- String canonicalText = getCanonicalText();
+ final String canonicalText = getCanonicalText();
@Override
public boolean execute(@NotNull final PsiElement element) {
diff --git a/xml/xml-psi-api/src/com/intellij/codeInspection/XmlSuppressionProvider.java b/xml/xml-psi-api/src/com/intellij/codeInspection/XmlSuppressionProvider.java
index f6be5cdc5ae2..de68c7a5a7ca 100644
--- a/xml/xml-psi-api/src/com/intellij/codeInspection/XmlSuppressionProvider.java
+++ b/xml/xml-psi-api/src/com/intellij/codeInspection/XmlSuppressionProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,7 +27,7 @@ import org.jetbrains.annotations.NotNull;
*/
public abstract class XmlSuppressionProvider {
- public static ExtensionPointName<XmlSuppressionProvider> EP_NAME = new ExtensionPointName<XmlSuppressionProvider>("com.intellij.xml.xmlSuppressionProvider");
+ public static final ExtensionPointName<XmlSuppressionProvider> EP_NAME = new ExtensionPointName<XmlSuppressionProvider>("com.intellij.xml.xmlSuppressionProvider");
public static boolean isSuppressed(@NotNull PsiElement element, @NotNull String inspectionId) {
for (XmlSuppressionProvider provider : Extensions.getExtensions(EP_NAME)) {
diff --git a/xml/xml-psi-api/src/com/intellij/patterns/XmlAttributeValuePattern.java b/xml/xml-psi-api/src/com/intellij/patterns/XmlAttributeValuePattern.java
index 8cfd471e936d..aef856484bbd 100644
--- a/xml/xml-psi-api/src/com/intellij/patterns/XmlAttributeValuePattern.java
+++ b/xml/xml-psi-api/src/com/intellij/patterns/XmlAttributeValuePattern.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@ import org.jetbrains.annotations.NonNls;
*/
public class XmlAttributeValuePattern extends XmlElementPattern<XmlAttributeValue,XmlAttributeValuePattern>{
private static final InitialPatternCondition<XmlAttributeValue> CONDITION = new InitialPatternCondition<XmlAttributeValue>(XmlAttributeValue.class) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof XmlAttributeValue;
}
@@ -54,6 +55,7 @@ public class XmlAttributeValuePattern extends XmlElementPattern<XmlAttributeValu
public XmlAttributeValuePattern withLocalName(ElementPattern<String> namePattern) {
return with(new PsiNamePatternCondition<XmlAttributeValue>("withLocalName", namePattern) {
+ @Override
public String getPropertyValue(@NotNull final Object o) {
if (o instanceof XmlAttributeValue) {
final XmlAttributeValue value = (XmlAttributeValue)o;
diff --git a/xml/xml-psi-api/src/com/intellij/patterns/XmlElementPattern.java b/xml/xml-psi-api/src/com/intellij/patterns/XmlElementPattern.java
index 611bb40c5e96..f8ae6f217fdf 100644
--- a/xml/xml-psi-api/src/com/intellij/patterns/XmlElementPattern.java
+++ b/xml/xml-psi-api/src/com/intellij/patterns/XmlElementPattern.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,7 @@ public class XmlElementPattern<T extends XmlElement,Self extends XmlElementPatte
public static class Capture extends XmlElementPattern<XmlElement, Capture> {
protected Capture() {
super(new InitialPatternCondition<XmlElement>(XmlElement.class) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof XmlElement;
}
@@ -47,6 +48,7 @@ public class XmlElementPattern<T extends XmlElement,Self extends XmlElementPatte
public static class XmlTextPattern extends XmlElementPattern<XmlText, XmlTextPattern> {
public XmlTextPattern() {
super(new InitialPatternCondition<XmlText>(XmlText.class) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof XmlText;
}
@@ -57,6 +59,7 @@ public class XmlElementPattern<T extends XmlElement,Self extends XmlElementPatte
public static class XmlEntityRefPattern extends XmlElementPattern<XmlEntityRef, XmlEntityRefPattern> {
public XmlEntityRefPattern() {
super(new InitialPatternCondition<XmlEntityRef>(XmlEntityRef.class) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof XmlEntityRef;
}
diff --git a/xml/xml-psi-api/src/com/intellij/patterns/XmlFilePattern.java b/xml/xml-psi-api/src/com/intellij/patterns/XmlFilePattern.java
index 200fa32387e3..1a273fbae591 100644
--- a/xml/xml-psi-api/src/com/intellij/patterns/XmlFilePattern.java
+++ b/xml/xml-psi-api/src/com/intellij/patterns/XmlFilePattern.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,6 +36,7 @@ public class XmlFilePattern<Self extends XmlFilePattern<Self>> extends PsiFilePa
public Self withRootTag(final ElementPattern<XmlTag> rootTag) {
return with(new PatternCondition<XmlFile>("withRootTag") {
+ @Override
public boolean accepts(@NotNull final XmlFile xmlFile, final ProcessingContext context) {
XmlDocument document = xmlFile.getDocument();
return document != null && rootTag.getCondition().accepts(document.getRootTag(), context);
diff --git a/xml/xml-psi-api/src/com/intellij/patterns/XmlNamedElementPattern.java b/xml/xml-psi-api/src/com/intellij/patterns/XmlNamedElementPattern.java
index 2bc01880db02..c5064cdcc76a 100644
--- a/xml/xml-psi-api/src/com/intellij/patterns/XmlNamedElementPattern.java
+++ b/xml/xml-psi-api/src/com/intellij/patterns/XmlNamedElementPattern.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -46,6 +46,7 @@ public abstract class XmlNamedElementPattern<T extends XmlElement & PsiNamedElem
public Self withLocalName(final ElementPattern<String> localName) {
return with(new PsiNamePatternCondition<T>("withLocalName", localName) {
+ @Override
public String getPropertyValue(@NotNull final Object o) {
return o instanceof XmlElement ? getLocalName((T)o) : null;
}
@@ -74,16 +75,19 @@ public abstract class XmlNamedElementPattern<T extends XmlElement & PsiNamedElem
public static class XmlAttributePattern extends XmlNamedElementPattern<XmlAttribute, XmlAttributePattern> {
protected XmlAttributePattern() {
super(new InitialPatternCondition<XmlAttribute>(XmlAttribute.class) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof XmlAttribute;
}
});
}
+ @Override
protected String getLocalName(XmlAttribute xmlAttribute) {
return xmlAttribute.getLocalName();
}
+ @Override
protected String getNamespace(XmlAttribute xmlAttribute) {
return xmlAttribute.getNamespace();
}
diff --git a/xml/xml-psi-api/src/com/intellij/patterns/XmlTagPattern.java b/xml/xml-psi-api/src/com/intellij/patterns/XmlTagPattern.java
index 5be06fa8472e..c1d4badacac1 100644
--- a/xml/xml-psi-api/src/com/intellij/patterns/XmlTagPattern.java
+++ b/xml/xml-psi-api/src/com/intellij/patterns/XmlTagPattern.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ import java.util.Collection;
public class XmlTagPattern<Self extends XmlTagPattern<Self>> extends XmlNamedElementPattern<XmlTag, Self> {
protected XmlTagPattern() {
super(new InitialPatternCondition<XmlTag>(XmlTag.class) {
+ @Override
public boolean accepts(@Nullable final Object o, final ProcessingContext context) {
return o instanceof XmlTag;
}
@@ -42,16 +43,19 @@ public class XmlTagPattern<Self extends XmlTagPattern<Self>> extends XmlNamedEle
super(condition);
}
+ @Override
protected String getLocalName(XmlTag tag) {
return tag.getLocalName();
}
+ @Override
protected String getNamespace(XmlTag tag) {
return tag.getNamespace();
}
public Self withAttributeValue(@NotNull @NonNls final String attributeName, @NotNull final String attributeValue) {
return with(new PatternCondition<XmlTag>("withAttributeValue") {
+ @Override
public boolean accepts(@NotNull final XmlTag xmlTag, final ProcessingContext context) {
return Comparing.equal(xmlTag.getAttributeValue(attributeName), attributeValue);
}
@@ -60,6 +64,7 @@ public class XmlTagPattern<Self extends XmlTagPattern<Self>> extends XmlNamedEle
public Self withAnyAttribute(@NotNull @NonNls final String... attributeNames) {
return with(new PatternCondition<XmlTag>("withAnyAttribute") {
+ @Override
public boolean accepts(@NotNull final XmlTag xmlTag, final ProcessingContext context) {
for (String attributeName : attributeNames) {
if (xmlTag.getAttribute(attributeName) != null) {
@@ -73,6 +78,7 @@ public class XmlTagPattern<Self extends XmlTagPattern<Self>> extends XmlNamedEle
public Self withDescriptor(@NotNull final ElementPattern<? extends PsiMetaData> metaDataPattern) {
return with(new PatternCondition<XmlTag>("withDescriptor") {
+ @Override
public boolean accepts(@NotNull final XmlTag xmlTag, final ProcessingContext context) {
return metaDataPattern.accepts(xmlTag.getDescriptor());
}
@@ -81,6 +87,7 @@ public class XmlTagPattern<Self extends XmlTagPattern<Self>> extends XmlNamedEle
public Self isFirstSubtag(@NotNull final ElementPattern pattern) {
return with(new PatternCondition<XmlTag>("isFirstSubtag") {
+ @Override
public boolean accepts(@NotNull final XmlTag xmlTag, final ProcessingContext context) {
final XmlTag parent = xmlTag.getParentTag();
return parent != null &&
@@ -95,6 +102,7 @@ public class XmlTagPattern<Self extends XmlTagPattern<Self>> extends XmlNamedEle
public Self withSubTags(@NotNull final ElementPattern<? extends Collection<XmlTag>> pattern) {
return with(new PatternCondition<XmlTag>("withSubTags") {
+ @Override
public boolean accepts(@NotNull final XmlTag xmlTag, final ProcessingContext context) {
return pattern.getCondition().accepts(Arrays.asList(xmlTag.getSubTags()), context);
}
diff --git a/xml/xml-psi-api/src/com/intellij/pom/xml/XmlChangeSet.java b/xml/xml-psi-api/src/com/intellij/pom/xml/XmlChangeSet.java
index 4ea483566105..9e9a8d725ada 100644
--- a/xml/xml-psi-api/src/com/intellij/pom/xml/XmlChangeSet.java
+++ b/xml/xml-psi-api/src/com/intellij/pom/xml/XmlChangeSet.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,6 +26,7 @@ import java.util.List;
public interface XmlChangeSet extends PomChangeSet {
List<XmlChange> getChanges();
+ @Override
@NotNull
PomModelAspect getAspect();
diff --git a/xml/xml-psi-api/src/com/intellij/psi/XmlRecursiveElementVisitor.java b/xml/xml-psi-api/src/com/intellij/psi/XmlRecursiveElementVisitor.java
index 6c99c53fc424..cb63266d76b9 100644
--- a/xml/xml-psi-api/src/com/intellij/psi/XmlRecursiveElementVisitor.java
+++ b/xml/xml-psi-api/src/com/intellij/psi/XmlRecursiveElementVisitor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ public class XmlRecursiveElementVisitor extends XmlElementVisitor {
myVisitAllFileRoots = visitAllFileRoots;
}
+ @Override
public void visitElement(final PsiElement element) {
element.acceptChildren(this);
}
diff --git a/xml/xml-psi-api/src/com/intellij/psi/filters/position/NamespaceFilter.java b/xml/xml-psi-api/src/com/intellij/psi/filters/position/NamespaceFilter.java
index 88aba0702cfd..82bafa6818eb 100644
--- a/xml/xml-psi-api/src/com/intellij/psi/filters/position/NamespaceFilter.java
+++ b/xml/xml-psi-api/src/com/intellij/psi/filters/position/NamespaceFilter.java
@@ -29,10 +29,12 @@ public class NamespaceFilter implements ElementFilter {
myNamespaces = namespaces;
}
+ @Override
public boolean isClassAcceptable(Class hintClass){
return ReflectionUtil.isAssignable(XmlTag.class, hintClass) || ReflectionUtil.isAssignable(XmlDocument.class, hintClass);
}
+ @Override
public boolean isAcceptable(Object element, PsiElement context){
if(element instanceof XmlTag){
final XmlTag psiElement = (XmlTag)element;
diff --git a/xml/xml-psi-api/src/com/intellij/psi/xml/XmlElementDecl.java b/xml/xml-psi-api/src/com/intellij/psi/xml/XmlElementDecl.java
index d18b990b12b1..7105f87ec8f8 100644
--- a/xml/xml-psi-api/src/com/intellij/psi/xml/XmlElementDecl.java
+++ b/xml/xml-psi-api/src/com/intellij/psi/xml/XmlElementDecl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,6 +25,7 @@ import org.jetbrains.annotations.Nullable;
*/
public interface XmlElementDecl extends XmlElement, PsiMetaOwner, PsiNameIdentifierOwner {
XmlElement getNameElement();
+ @Override
@Nullable String getName();
XmlElementContentSpec getContentSpecElement();
}
diff --git a/xml/xml-psi-api/src/com/intellij/psi/xml/XmlEntityDecl.java b/xml/xml-psi-api/src/com/intellij/psi/xml/XmlEntityDecl.java
index 268b41c8b6b3..9901e61775de 100644
--- a/xml/xml-psi-api/src/com/intellij/psi/xml/XmlEntityDecl.java
+++ b/xml/xml-psi-api/src/com/intellij/psi/xml/XmlEntityDecl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ public interface XmlEntityDecl extends XmlElement, PsiNamedElement {
ENUMERATED_TYPE, ATTR_VALUE
}
+ @Override
String getName();
PsiElement getNameElement();
XmlAttributeValue getValueElement();
diff --git a/xml/xml-psi-api/src/com/intellij/xml/XmlSchemaProvider.java b/xml/xml-psi-api/src/com/intellij/xml/XmlSchemaProvider.java
index 25e4f1d7e87d..622894d19053 100644
--- a/xml/xml-psi-api/src/com/intellij/xml/XmlSchemaProvider.java
+++ b/xml/xml-psi-api/src/com/intellij/xml/XmlSchemaProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -83,6 +83,7 @@ public abstract class XmlSchemaProvider {
public static List<XmlSchemaProvider> getAvailableProviders(@NotNull final XmlFile file) {
return ContainerUtil.findAll(Extensions.getExtensions(EP_NAME), new Condition<XmlSchemaProvider>() {
+ @Override
public boolean value(XmlSchemaProvider xmlSchemaProvider) {
return xmlSchemaProvider.isAvailable(file);
}
diff --git a/xml/xml-psi-api/src/com/intellij/xml/util/XmlTagUtil.java b/xml/xml-psi-api/src/com/intellij/xml/util/XmlTagUtil.java
index 4850c98cb95e..b5b086b4e9d6 100644
--- a/xml/xml-psi-api/src/com/intellij/xml/util/XmlTagUtil.java
+++ b/xml/xml-psi-api/src/com/intellij/xml/util/XmlTagUtil.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,12 +42,12 @@ public class XmlTagUtil extends XmlTagUtilBase {
static {
ourCharacterEntities = new HashMap<String, Character>();
- ourCharacterEntities.put("lt", new Character('<'));
- ourCharacterEntities.put("gt", new Character('>'));
- ourCharacterEntities.put("apos", new Character('\''));
- ourCharacterEntities.put("quot", new Character('\"'));
- ourCharacterEntities.put("nbsp", new Character('\u00a0'));
- ourCharacterEntities.put("amp", new Character('&'));
+ ourCharacterEntities.put("lt", '<');
+ ourCharacterEntities.put("gt", '>');
+ ourCharacterEntities.put("apos", '\'');
+ ourCharacterEntities.put("quot", '\"');
+ ourCharacterEntities.put("nbsp", '\u00a0');
+ ourCharacterEntities.put("amp", '&');
}
/**
diff --git a/xml/impl/src/com/intellij/application/options/editor/XmlFoldingSettings.java b/xml/xml-psi-impl/src/com/intellij/application/options/editor/XmlFoldingSettings.java
index b35a26a53321..ada94b1e709c 100644
--- a/xml/impl/src/com/intellij/application/options/editor/XmlFoldingSettings.java
+++ b/xml/xml-psi-impl/src/com/intellij/application/options/editor/XmlFoldingSettings.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -60,20 +60,24 @@ public class XmlFoldingSettings implements XmlCodeFoldingSettings, PersistentSta
@SuppressWarnings({"WeakerAccess"}) public boolean COLLAPSE_XML_TAGS = false;
@SuppressWarnings({"WeakerAccess"}) public boolean COLLAPSE_HTML_STYLE_ATTRIBUTE = true;
+ @Override
@NotNull
public File[] getExportFiles() {
return new File[]{PathManager.getOptionsFile("editor.codeinsight")};
}
+ @Override
@NotNull
public String getPresentableName() {
return XmlBundle.message("xml.folding.settings");
}
+ @Override
public XmlFoldingSettings getState() {
return this;
}
+ @Override
public void loadState(final XmlFoldingSettings state) {
XmlSerializerUtil.copyBean(state, this);
}
diff --git a/xml/impl/src/com/intellij/codeInsight/highlighting/XmlReadWriteAccessDetector.java b/xml/xml-psi-impl/src/com/intellij/codeInsight/highlighting/XmlReadWriteAccessDetector.java
index 1a12263492ed..4a1d91804b7d 100644
--- a/xml/impl/src/com/intellij/codeInsight/highlighting/XmlReadWriteAccessDetector.java
+++ b/xml/xml-psi-impl/src/com/intellij/codeInsight/highlighting/XmlReadWriteAccessDetector.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaElementDescriptor.java b/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaElementDescriptor.java
index 52a1920a1d9b..4f6f0d1b8f9e 100644
--- a/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaElementDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaElementDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,6 +35,7 @@ public class RelaxedHtmlFromSchemaElementDescriptor extends XmlElementDescriptor
super(tag);
}
+ @Override
public XmlElementDescriptor getElementDescriptor(XmlTag childTag, XmlTag contextTag) {
XmlElementDescriptor elementDescriptor = super.getElementDescriptor(childTag, contextTag);
@@ -45,6 +46,7 @@ public class RelaxedHtmlFromSchemaElementDescriptor extends XmlElementDescriptor
return elementDescriptor;
}
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(final XmlTag context) {
return ArrayUtil.mergeArrays(
super.getElementsDescriptors(context),
@@ -64,6 +66,7 @@ public class RelaxedHtmlFromSchemaElementDescriptor extends XmlElementDescriptor
return null;
}
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final XmlTag context) {
return addAttrDescriptorsForFacelets(context, super.getAttributesDescriptors(context));
}
@@ -84,6 +87,7 @@ public class RelaxedHtmlFromSchemaElementDescriptor extends XmlElementDescriptor
return getAttributeDescriptor(attribute.getName(), attribute.getParent());
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(String attributeName, final XmlTag context) {
final XmlAttributeDescriptor descriptor = super.getAttributeDescriptor(attributeName.toLowerCase(), context);
if (descriptor != null) return descriptor;
@@ -105,6 +109,7 @@ public class RelaxedHtmlFromSchemaElementDescriptor extends XmlElementDescriptor
return null;
}
+ @Override
public boolean allowElementsFromNamespace(final String namespace, final XmlTag context) {
return true;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaNSDescriptor.java b/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaNSDescriptor.java
index 06a9bc979947..0703377055e8 100644
--- a/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaNSDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/html/impl/RelaxedHtmlFromSchemaNSDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class RelaxedHtmlFromSchemaNSDescriptor extends XmlNSDescriptorImpl implements RelaxedHtmlNSDescriptor {
+ @Override
public XmlElementDescriptor getElementDescriptor(@NotNull XmlTag tag) {
XmlElementDescriptor elementDescriptor = super.getElementDescriptor(tag);
@@ -43,10 +44,12 @@ public class RelaxedHtmlFromSchemaNSDescriptor extends XmlNSDescriptorImpl imple
return elementDescriptor;
}
+ @Override
protected XmlElementDescriptor createElementDescriptor(final XmlTag tag) {
return new RelaxedHtmlFromSchemaElementDescriptor(tag);
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable final XmlDocument doc) {
return ArrayUtil.mergeArrays(super.getRootElementsDescriptors(doc), HtmlUtil.getCustomTagDescriptors(doc));
diff --git a/xml/impl/src/com/intellij/html/impl/util/MicrodataUtil.java b/xml/xml-psi-impl/src/com/intellij/html/impl/util/MicrodataUtil.java
index 5374558370c6..bfdcca25f294 100644
--- a/xml/impl/src/com/intellij/html/impl/util/MicrodataUtil.java
+++ b/xml/xml-psi-impl/src/com/intellij/html/impl/util/MicrodataUtil.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/ide/highlighter/HtmlFileHighlighter.java b/xml/xml-psi-impl/src/com/intellij/ide/highlighter/HtmlFileHighlighter.java
index 9f8510bd6f9e..715c068d80ae 100644
--- a/xml/xml-psi-impl/src/com/intellij/ide/highlighter/HtmlFileHighlighter.java
+++ b/xml/xml-psi-impl/src/com/intellij/ide/highlighter/HtmlFileHighlighter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -93,7 +93,7 @@ public class HtmlFileHighlighter extends SyntaxHighlighterBase {
return SyntaxHighlighterBase.pack(XmlHighlighterColors.HTML_CODE, pack(keys1.get(tokenType), keys2.get(tokenType)));
}
- public static final void registerEmbeddedTokenAttributes(Map<IElementType, TextAttributesKey> _keys1,
+ public static void registerEmbeddedTokenAttributes(Map<IElementType, TextAttributesKey> _keys1,
Map<IElementType, TextAttributesKey> _keys2) {
if (_keys1 != null) {
for (Iterator<IElementType> iterator = _keys1.keySet().iterator(); iterator.hasNext();) {
diff --git a/xml/xml-psi-impl/src/com/intellij/ide/highlighter/XmlFileHighlighter.java b/xml/xml-psi-impl/src/com/intellij/ide/highlighter/XmlFileHighlighter.java
index 6c515a179b5f..e34dd98367ad 100644
--- a/xml/xml-psi-impl/src/com/intellij/ide/highlighter/XmlFileHighlighter.java
+++ b/xml/xml-psi-impl/src/com/intellij/ide/highlighter/XmlFileHighlighter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,7 +28,6 @@ import com.intellij.psi.xml.XmlTokenType;
import org.jetbrains.annotations.NotNull;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.Map;
public class XmlFileHighlighter extends SyntaxHighlighterBase {
@@ -118,7 +117,7 @@ public class XmlFileHighlighter extends SyntaxHighlighterBase {
keys2.put(XmlTokenType.XML_ENTITY_REF_TOKEN, XmlHighlighterColors.XML_ENTITY_REFERENCE);
}
- private boolean myIsDtd;
+ private final boolean myIsDtd;
private boolean myIsXHtml;
public XmlFileHighlighter() {
@@ -152,19 +151,17 @@ public class XmlFileHighlighter extends SyntaxHighlighterBase {
return pack(keys1.get(tokenType), keys2.get(tokenType));
}
- public static final void registerEmbeddedTokenAttributes(Map<IElementType, TextAttributesKey> _keys1,
+ public static void registerEmbeddedTokenAttributes(Map<IElementType, TextAttributesKey> _keys1,
Map<IElementType, TextAttributesKey> _keys2) {
if (_keys1!=null) {
- for (Iterator<IElementType> iterator = _keys1.keySet().iterator(); iterator.hasNext();) {
- IElementType iElementType = iterator.next();
- keys1.put(iElementType,_keys1.get(iElementType));
+ for (IElementType iElementType : _keys1.keySet()) {
+ keys1.put(iElementType, _keys1.get(iElementType));
}
}
if (_keys2!=null) {
- for (Iterator<IElementType> iterator = _keys2.keySet().iterator(); iterator.hasNext();) {
- IElementType iElementType = iterator.next();
- keys2.put(iElementType,_keys2.get(iElementType));
+ for (IElementType iElementType : _keys2.keySet()) {
+ keys2.put(iElementType, _keys2.get(iElementType));
}
}
}
diff --git a/xml/xml-psi-impl/src/com/intellij/javaee/ExternalResourceManagerExImpl.java b/xml/xml-psi-impl/src/com/intellij/javaee/ExternalResourceManagerExImpl.java
index 8cf870199c70..38f96f052c44 100644
--- a/xml/xml-psi-impl/src/com/intellij/javaee/ExternalResourceManagerExImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/javaee/ExternalResourceManagerExImpl.java
@@ -1,10 +1,25 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.javaee;
import com.intellij.application.options.PathMacrosImpl;
import com.intellij.application.options.ReplacePathToMacroMap;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.ApplicationManager;
-import com.intellij.openapi.components.ExpandMacroToPathMap;
+import com.intellij.openapi.components.*;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.openapi.fileTypes.FileType;
@@ -30,6 +45,8 @@ import java.io.File;
import java.net.URL;
import java.util.*;
+@State(name = "ExternalResourceManagerImpl",
+ storages = {@Storage( file = StoragePathMacros.APP_CONFIG + "/other.xml")})
public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
static final Logger LOG = Logger.getInstance("#com.intellij.j2ee.openapi.impl.ExternalResourceManagerImpl");
@@ -84,10 +101,11 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
@NonNls private static final String HTML_DEFAULT_DOCTYPE_ELEMENT = "default-html-doctype";
private static final String DEFAULT_VERSION = null;
- public ExternalResourceManagerExImpl(PathMacrosImpl pathMacros) {
+ public ExternalResourceManagerExImpl(@NotNull PathMacrosImpl pathMacros) {
myPathMacros = pathMacros;
}
+ @Override
public boolean isStandardResource(VirtualFile file) {
VirtualFile parent = file.getParent();
return parent != null && parent.getName().equals("standardSchemas");
@@ -116,10 +134,12 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
return map;
}
+ @Override
public String getResourceLocation(String url) {
return getResourceLocation(url, DEFAULT_VERSION);
}
+ @Override
public String getResourceLocation(@NonNls String url, String version) {
String result = getUserResource(url, version);
if (result == null) {
@@ -163,6 +183,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
return map != null ? map.get(url) : null;
}
+ @Override
public String getResourceLocation(@NonNls String url, @NotNull Project project) {
String location = getProjectResources(project).getResourceLocation(url);
return location == null || location.equals(url) ? getResourceLocation(url) : location;
@@ -173,6 +194,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
return location == null || location.equals(url) ? getResourceLocation(url, version) : location;
}
+ @Override
@Nullable
public PsiFile getResourceLocation(@NotNull @NonNls final String url, @NotNull final PsiFile baseFile, final String version) {
final XmlFile schema = XmlSchemaProvider.findSchema(url, baseFile);
@@ -183,10 +205,12 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
return XmlUtil.findXmlFile(baseFile, location);
}
+ @Override
public String[] getResourceUrls(FileType fileType, final boolean includeStandard) {
return getResourceUrls(fileType, DEFAULT_VERSION, includeStandard);
}
+ @Override
public String[] getResourceUrls(@Nullable final FileType fileType, @NonNls final String version, final boolean includeStandard) {
final List<String> result = new LinkedList<String>();
addResourcesFromMap(result, version, myResources);
@@ -210,6 +234,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
public static void addTestResource(final String url, final String location, Disposable parentDisposable) {
final ExternalResourceManagerExImpl instance = (ExternalResourceManagerExImpl)getInstance();
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
instance.addResource(url, location);
}
@@ -218,6 +243,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
@Override
public void dispose() {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
instance.removeResource(url);
}
@@ -225,10 +251,12 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
}
});
}
+ @Override
public void addResource(String url, String location) {
addResource(url, DEFAULT_VERSION, location);
}
+ @Override
public void addResource(@NonNls String url, @NonNls String version, @NonNls String location) {
ApplicationManager.getApplication().assertWriteAccessAllowed();
addSilently(url, version, location);
@@ -243,10 +271,12 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
myModificationCount++;
}
+ @Override
public void removeResource(String url) {
removeResource(url, DEFAULT_VERSION);
}
+ @Override
public void removeResource(String url, String version) {
ApplicationManager.getApplication().assertWriteAccessAllowed();
Map<String, String> map = getMap(myResources, version, false);
@@ -270,6 +300,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
getProjectResources(project).addResource(url, location);
}
+ @Override
public String[] getAvailableUrls() {
Set<String> urls = new HashSet<String>();
for (Map<String, String> map : myResources.values()) {
@@ -283,11 +314,13 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
return getProjectResources(project).getAvailableUrls();
}
+ @Override
public void clearAllResources() {
myResources.clear();
myIgnoredResources.clear();
}
+ @Override
public void clearAllResources(Project project) {
ApplicationManager.getApplication().assertWriteAccessAllowed();
clearAllResources();
@@ -296,6 +329,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
fireExternalResourceChanged();
}
+ @Override
public void addIgnoredResource(String url) {
ApplicationManager.getApplication().assertWriteAccessAllowed();
addIgnoredSilently(url);
@@ -307,6 +341,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
myModificationCount++;
}
+ @Override
public void removeIgnoredResource(String url) {
ApplicationManager.getApplication().assertWriteAccessAllowed();
if (myIgnoredResources.remove(url)) {
@@ -315,6 +350,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
}
}
+ @Override
public boolean isIgnoredResource(String url) {
myStdResources.getValue(); // ensure ignored resources are loaded
return myIgnoredResources.contains(url) || isImplicitNamespaceDescriptor(url);
@@ -328,11 +364,13 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
return false;
}
+ @Override
public String[] getIgnoredResources() {
myStdResources.getValue(); // ensure ignored resources are loaded
return ArrayUtil.toStringArray(myIgnoredResources);
}
+ @Override
public long getModificationCount() {
return myModificationCount;
}
@@ -342,7 +380,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
return getProjectResources(project).getModificationCount();
}
- public void readExternal(Element element) throws InvalidDataException {
+ public void readExternal(Element element) {
final ExpandMacroToPathMap macroExpands = new ExpandMacroToPathMap();
myPathMacros.addMacroExpands(macroExpands);
macroExpands.substitute(element, SystemInfo.isFileSystemCaseSensitive);
@@ -372,7 +410,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
}
}
- public void writeExternal(Element element) throws WriteExternalException {
+ public void writeExternal(Element element) {
final String[] urls = getAvailableUrls();
for (String url : urls) {
if (url == null) continue;
@@ -408,10 +446,12 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
macroReplacements.substitute(element, SystemInfo.isFileSystemCaseSensitive);
}
+ @Override
public void addExternalResourceListener(ExternalResourceListener listener) {
myListeners.add(listener);
}
+ @Override
public void removeExternalResourceListener(ExternalResourceListener listener) {
myListeners.remove(listener);
}
@@ -427,8 +467,10 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
}
- protected ExternalResourceManagerExImpl getProjectResources(Project project) {
- return this;
+ private static final NotNullLazyKey<ExternalResourceManagerExImpl, Project> INSTANCE_CACHE = ServiceManager.createLazyKey(ExternalResourceManagerExImpl.class);
+
+ private ExternalResourceManagerExImpl getProjectResources(Project project) {
+ return INSTANCE_CACHE.getValue(project);
}
@Override
@@ -486,6 +528,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
@TestOnly
public static void registerResourceTemporarily(final String url, final String location, Disposable disposable) {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
getInstance().addResource(url, location);
}
@@ -495,6 +538,7 @@ public class ExternalResourceManagerExImpl extends ExternalResourceManagerEx {
@Override
public void dispose() {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
+ @Override
public void run() {
getInstance().removeResource(url);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/javaee/InternalResourceProvider.java b/xml/xml-psi-impl/src/com/intellij/javaee/InternalResourceProvider.java
index d9755ad98847..673540ef38e8 100644
--- a/xml/xml-psi-impl/src/com/intellij/javaee/InternalResourceProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/javaee/InternalResourceProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,6 +23,7 @@ import com.intellij.xml.util.XmlUtil;
*/
public class InternalResourceProvider implements StandardResourceProvider{
+ @Override
public void registerResources(ResourceRegistrar registrar) {
ResourceRegistrarImpl impl = (ResourceRegistrarImpl)registrar;
diff --git a/xml/impl/src/com/intellij/javaee/ProjectResources.java b/xml/xml-psi-impl/src/com/intellij/javaee/ProjectResources.java
index 7bf3a03eb9f1..916090996e7c 100644
--- a/xml/impl/src/com/intellij/javaee/ProjectResources.java
+++ b/xml/xml-psi-impl/src/com/intellij/javaee/ProjectResources.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -20,8 +20,10 @@ import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.State;
import com.intellij.openapi.components.Storage;
import com.intellij.openapi.components.StoragePathMacros;
+import com.intellij.openapi.util.JDOMExternalizable;
import com.intellij.openapi.util.JDOMExternalizableAdapter;
import org.jdom.Element;
+import org.jetbrains.annotations.NotNull;
import java.util.Collections;
import java.util.Map;
@@ -30,11 +32,10 @@ import java.util.Map;
* @author Dmitry Avdeev
*/
@State(name = "ProjectResources", storages = {@Storage( file = StoragePathMacros.PROJECT_FILE)})
-public class ProjectResources extends ExternalResourceManagerImpl implements PersistentStateComponent<Element> {
-
+public class ProjectResources extends ExternalResourceManagerExImpl implements PersistentStateComponent<Element>, JDOMExternalizable {
private final JDOMExternalizableAdapter myAdapter;
- public ProjectResources(PathMacrosImpl pathMacros) {
+ public ProjectResources(@NotNull PathMacrosImpl pathMacros) {
super(pathMacros);
myAdapter = new JDOMExternalizableAdapter(this, "ProjectResources");
}
@@ -44,10 +45,12 @@ public class ProjectResources extends ExternalResourceManagerImpl implements Per
return Collections.emptyMap();
}
+ @Override
public Element getState() {
return myAdapter.getState();
}
+ @Override
public void loadState(Element state) {
myAdapter.loadState(state);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/javaee/ResourceRegistrarImpl.java b/xml/xml-psi-impl/src/com/intellij/javaee/ResourceRegistrarImpl.java
index 103bd127161e..a0fa57929f14 100644
--- a/xml/xml-psi-impl/src/com/intellij/javaee/ResourceRegistrarImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/javaee/ResourceRegistrarImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,10 +32,12 @@ public class ResourceRegistrarImpl implements ResourceRegistrar {
private final Map<String, Map<String, ExternalResourceManagerExImpl.Resource>> myResources = new HashMap<String, Map<String, ExternalResourceManagerExImpl.Resource>>();
private final List<String> myIgnored = new ArrayList<String>();
+ @Override
public void addStdResource(@NonNls String resource, @NonNls String fileName) {
addStdResource(resource, null, fileName, getClass());
}
+ @Override
public void addStdResource(@NonNls String resource, @NonNls String fileName, Class klass) {
addStdResource(resource, null, fileName, klass);
}
@@ -43,13 +45,16 @@ public class ResourceRegistrarImpl implements ResourceRegistrar {
public void addStdResource(@NonNls String resource, @NonNls String version, @NonNls String fileName, @Nullable Class klass, @Nullable ClassLoader classLoader) {
final Map<String, ExternalResourceManagerExImpl.Resource> map = ExternalResourceManagerExImpl.getMap(myResources, version, true);
assert map != null;
+ resource = new String(resource); // enforce copying; todo remove after final migration to JDK 1.7
map.put(resource, new ExternalResourceManagerExImpl.Resource(fileName, klass, classLoader));
}
+ @Override
public void addStdResource(@NonNls String resource, @Nullable @NonNls String version, @NonNls String fileName, Class klass) {
addStdResource(resource, version, fileName, klass, null);
}
+ @Override
public void addIgnoredResource(@NonNls String url) {
myIgnored.add(url);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/javaee/XMLCatalogManager.java b/xml/xml-psi-impl/src/com/intellij/javaee/XMLCatalogManager.java
index c9eacea92662..d3d7d39dc446 100644
--- a/xml/xml-psi-impl/src/com/intellij/javaee/XMLCatalogManager.java
+++ b/xml/xml-psi-impl/src/com/intellij/javaee/XMLCatalogManager.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,8 +37,8 @@ public class XMLCatalogManager {
private final static Logger LOG = Logger.getInstance(XMLCatalogManager.class);
- private static Field ourResources;
- private static Field ourPropertyFileUri;
+ private static final Field ourResources;
+ private static final Field ourPropertyFileUri;
static {
try {
@@ -48,7 +48,7 @@ public class XMLCatalogManager {
ourPropertyFileUri.setAccessible(true);
}
catch (NoSuchFieldException e) {
- LOG.error(e);
+ throw new RuntimeException(e);
}
}
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/XmlCodeFoldingBuilder.java b/xml/xml-psi-impl/src/com/intellij/lang/XmlCodeFoldingBuilder.java
index 959f3a4919a9..db2fd348a71e 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/XmlCodeFoldingBuilder.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/XmlCodeFoldingBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -46,6 +46,7 @@ public abstract class XmlCodeFoldingBuilder implements FoldingBuilder, DumbAware
private static final int MIN_TEXT_RANGE_LENGTH = 3;
private static final String STYLE_ATTRIBUTE = "style";
+ @Override
@NotNull
public FoldingDescriptor[] buildFoldRegions(@NotNull ASTNode node, @NotNull Document document) {
final PsiElement psiElement = node.getPsi();
@@ -217,6 +218,7 @@ public abstract class XmlCodeFoldingBuilder implements FoldingBuilder, DumbAware
return false;
}
+ @Override
public String getPlaceholderText(@NotNull ASTNode node) {
final PsiElement psi = node.getPsi();
if (psi instanceof XmlTag ||
@@ -227,6 +229,7 @@ public abstract class XmlCodeFoldingBuilder implements FoldingBuilder, DumbAware
return null;
}
+ @Override
public boolean isCollapsedByDefault(@NotNull ASTNode node) {
final PsiElement psi = node.getPsi();
final XmlCodeFoldingSettings foldingSettings = getFoldingSettings();
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/dtd/DTDParserDefinition.java b/xml/xml-psi-impl/src/com/intellij/lang/dtd/DTDParserDefinition.java
index 541aa16a72f7..8197314a18c6 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/dtd/DTDParserDefinition.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/dtd/DTDParserDefinition.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,10 +37,12 @@ import org.jetbrains.annotations.NotNull;
* @author max
*/
public class DTDParserDefinition extends XMLParserDefinition {
+ @Override
public SpaceRequirements spaceExistanceTypeBetweenTokens(ASTNode left, ASTNode right) {
return LanguageUtil.canStickTokensTogetherByLexer(left, right, new DtdLexer(false));
}
+ @Override
public PsiFile createFile(FileViewProvider viewProvider) {
return new XmlFileImpl(viewProvider, XmlElementType.DTD_FILE);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/dtd/DtdSyntaxHighlighterFactory.java b/xml/xml-psi-impl/src/com/intellij/lang/dtd/DtdSyntaxHighlighterFactory.java
index 8095517bcdb5..c57c77a23ec2 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/dtd/DtdSyntaxHighlighterFactory.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/dtd/DtdSyntaxHighlighterFactory.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.lang.dtd;
import com.intellij.ide.highlighter.XmlFileHighlighter;
@@ -6,6 +21,7 @@ import com.intellij.openapi.fileTypes.SyntaxHighlighter;
import org.jetbrains.annotations.NotNull;
public class DtdSyntaxHighlighterFactory extends SingleLazyInstanceSyntaxHighlighterFactory {
+ @Override
@NotNull
protected SyntaxHighlighter createHighlighter() {
return new XmlFileHighlighter(true);
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParser.java b/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParser.java
index db0c3e263923..89bb48e4fc85 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParser.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParser.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ import org.jetbrains.annotations.NotNull;
public class HTMLParser implements PsiParser {
+ @Override
@NotNull
public ASTNode parse(final IElementType root, final PsiBuilder builder) {
parseWithoutBuildingTree(root, builder);
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParserDefinition.java b/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParserDefinition.java
index 0e3dc6685097..8690f87fa414 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParserDefinition.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/html/HTMLParserDefinition.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,35 +38,42 @@ import org.jetbrains.annotations.NotNull;
* @author max
*/
public class HTMLParserDefinition implements ParserDefinition {
+ @Override
@NotNull
public Lexer createLexer(Project project) {
return new HtmlLexer();
}
+ @Override
public IFileElementType getFileNodeType() {
return XmlElementType.HTML_FILE;
}
+ @Override
@NotNull
public TokenSet getWhitespaceTokens() {
return XmlTokenType.WHITESPACES;
}
+ @Override
@NotNull
public TokenSet getCommentTokens() {
return XmlTokenType.COMMENTS;
}
+ @Override
@NotNull
public TokenSet getStringLiteralElements() {
return TokenSet.EMPTY;
}
+ @Override
@NotNull
public PsiParser createParser(final Project project) {
return new HTMLParser();
}
+ @Override
@NotNull
public PsiElement createElement(ASTNode node) {
if (node.getElementType() == XmlElementType.HTML_EMBEDDED_CONTENT) {
@@ -75,10 +82,12 @@ public class HTMLParserDefinition implements ParserDefinition {
return PsiUtilCore.NULL_PSI_ELEMENT;
}
+ @Override
public PsiFile createFile(FileViewProvider viewProvider) {
return new HtmlFileImpl(viewProvider);
}
+ @Override
public SpaceRequirements spaceExistanceTypeBetweenTokens(ASTNode left, ASTNode right) {
final Lexer lexer = createLexer(left.getPsi().getProject());
return XMLParserDefinition.canStickTokensTogetherByLexerInXml(left, right, lexer, 0);
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlSyntaxHighlighterFactory.java b/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlSyntaxHighlighterFactory.java
index 25c491355495..23b2f552512b 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlSyntaxHighlighterFactory.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/html/HtmlSyntaxHighlighterFactory.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.lang.html;
import com.intellij.ide.highlighter.HtmlFileHighlighter;
@@ -6,6 +21,7 @@ import com.intellij.openapi.fileTypes.SyntaxHighlighter;
import org.jetbrains.annotations.NotNull;
public class HtmlSyntaxHighlighterFactory extends SingleLazyInstanceSyntaxHighlighterFactory {
+ @Override
@NotNull
protected SyntaxHighlighter createHighlighter() {
return new HtmlFileHighlighter();
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XHTMLParserDefinition.java b/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XHTMLParserDefinition.java
index 93b34c035233..098d58bc12c7 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XHTMLParserDefinition.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XHTMLParserDefinition.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,16 +31,19 @@ import org.jetbrains.annotations.NotNull;
*/
public class XHTMLParserDefinition extends XMLParserDefinition {
+ @Override
@NotNull
public Lexer createLexer(Project project) {
return new XHtmlLexer();
}
+ @Override
public SpaceRequirements spaceExistanceTypeBetweenTokens(ASTNode left, ASTNode right) {
final Lexer lexer = createLexer(left.getPsi().getProject());
return canStickTokensTogetherByLexerInXml(left, right, lexer, 0);
}
+ @Override
public PsiFile createFile(FileViewProvider viewProvider) {
return new XmlFileImpl(viewProvider, XmlElementType.XHTML_FILE);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XhtmlSyntaxHighlighterFactory.java b/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XhtmlSyntaxHighlighterFactory.java
index 108fed274c14..6f09db4edeea 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XhtmlSyntaxHighlighterFactory.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xhtml/XhtmlSyntaxHighlighterFactory.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.lang.xhtml;
import com.intellij.ide.highlighter.XmlFileHighlighter;
@@ -6,6 +21,7 @@ import com.intellij.openapi.fileTypes.SyntaxHighlighter;
import org.jetbrains.annotations.NotNull;
public class XhtmlSyntaxHighlighterFactory extends SingleLazyInstanceSyntaxHighlighterFactory {
+ @Override
@NotNull
protected SyntaxHighlighter createHighlighter() {
return new XmlFileHighlighter(false, true);
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/xml/XMLParserDefinition.java b/xml/xml-psi-impl/src/com/intellij/lang/xml/XMLParserDefinition.java
index a25df7758b13..b37cc3546629 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/xml/XMLParserDefinition.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xml/XMLParserDefinition.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,44 +37,53 @@ import org.jetbrains.annotations.NotNull;
* @author max
*/
public class XMLParserDefinition implements ParserDefinition {
+ @Override
@NotNull
public Lexer createLexer(Project project) {
return new XmlLexer();
}
+ @Override
public IFileElementType getFileNodeType() {
return XmlElementType.XML_FILE;
}
+ @Override
@NotNull
public TokenSet getWhitespaceTokens() {
return XmlTokenType.WHITESPACES;
}
+ @Override
@NotNull
public TokenSet getCommentTokens() {
return XmlTokenType.COMMENTS;
}
+ @Override
@NotNull
public TokenSet getStringLiteralElements() {
return TokenSet.EMPTY;
}
+ @Override
@NotNull
public PsiParser createParser(final Project project) {
return new XmlParser();
}
+ @Override
@NotNull
public PsiElement createElement(ASTNode node) {
return PsiUtilCore.NULL_PSI_ELEMENT;
}
+ @Override
public PsiFile createFile(FileViewProvider viewProvider) {
return new XmlFileImpl(viewProvider, XmlElementType.XML_FILE);
}
+ @Override
public SpaceRequirements spaceExistanceTypeBetweenTokens(ASTNode left, ASTNode right) {
final Lexer lexer = createLexer(left.getPsi().getProject());
return canStickTokensTogetherByLexerInXml(left, right, lexer, 0);
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlCommenter.java b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlCommenter.java
index 470103694cbc..461c58697676 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlCommenter.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlCommenter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -22,22 +22,27 @@ import com.intellij.lang.Commenter;
*/
public class XmlCommenter implements Commenter {
+ @Override
public String getLineCommentPrefix() {
return null;
}
+ @Override
public String getBlockCommentPrefix() {
return "<!--";
}
+ @Override
public String getBlockCommentSuffix() {
return "-->";
}
+ @Override
public String getCommentedBlockCommentPrefix() {
return "&lt;!&ndash;";
}
+ @Override
public String getCommentedBlockCommentSuffix() {
return "&ndash;&gt;";
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlFindUsagesProvider.java b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlFindUsagesProvider.java
index 41b456d41119..a771d61cbfd0 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlFindUsagesProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlFindUsagesProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,14 +24,13 @@ import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiNamedElement;
import com.intellij.psi.meta.PsiMetaData;
import com.intellij.psi.xml.*;
-import com.intellij.usageView.UsageViewBundle;
import org.jetbrains.annotations.NotNull;
/**
* @author ven
*/
public class XmlFindUsagesProvider implements FindUsagesProvider {
-
+ @Override
public boolean canFindUsagesFor(@NotNull PsiElement element) {
return element instanceof XmlElementDecl ||
element instanceof XmlAttributeDecl ||
@@ -42,6 +41,7 @@ public class XmlFindUsagesProvider implements FindUsagesProvider {
element instanceof XmlComment;
}
+ @Override
@NotNull
public String getType(@NotNull PsiElement element) {
if (element instanceof XmlTag) {
@@ -71,10 +71,12 @@ public class XmlFindUsagesProvider implements FindUsagesProvider {
throw new IllegalArgumentException("Cannot get type for " + element);
}
+ @Override
public String getHelpId(@NotNull PsiElement element) {
return com.intellij.lang.HelpID.FIND_OTHER_USAGES;
}
+ @Override
@NotNull
public String getDescriptiveName(@NotNull PsiElement element) {
if (element instanceof XmlTag) {
@@ -87,29 +89,31 @@ public class XmlFindUsagesProvider implements FindUsagesProvider {
if (element instanceof PsiNamedElement) {
return ((PsiNamedElement)element).getName();
- } else {
- return element.getText();
}
+ return element.getText();
}
+ @Override
@NotNull
public String getNodeText(@NotNull PsiElement element, boolean useFullName) {
if (element instanceof XmlTag) {
final XmlTag xmlTag = (XmlTag)element;
final PsiMetaData metaData = xmlTag.getMetaData();
final String name = metaData != null ? DescriptiveNameUtil.getMetaDataName(metaData) : xmlTag.getName();
- return UsageViewBundle.message("usage.target.xml.tag.of.file", metaData == null ? "<" + name + ">" : name, xmlTag.getContainingFile().getName());
+
+ String presentableName = metaData == null ? "<" + name + ">" : name;
+ return presentableName+" of file "+xmlTag.getContainingFile().getName();
}
- else if (element instanceof XmlAttributeValue) {
+ if (element instanceof XmlAttributeValue) {
return ((XmlAttributeValue)element).getValue();
}
if (element instanceof PsiNamedElement) {
return ((PsiNamedElement)element).getName();
- } else {
- return element.getText();
}
+ return element.getText();
}
+ @Override
public WordsScanner getWordsScanner() {
return null;
}
diff --git a/xml/impl/src/com/intellij/lang/xml/XmlFoldingBuilder.java b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlFoldingBuilder.java
index 55feb0bedbb4..fa8e93eadb49 100644
--- a/xml/impl/src/com/intellij/lang/xml/XmlFoldingBuilder.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlFoldingBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,12 +16,8 @@
package com.intellij.lang.xml;
import com.intellij.application.options.editor.XmlFoldingSettings;
-import com.intellij.lang.ASTNode;
import com.intellij.lang.XmlCodeFoldingBuilder;
import com.intellij.lang.XmlCodeFoldingSettings;
-import com.intellij.psi.PsiElement;
-import com.intellij.psi.xml.*;
-import org.jetbrains.annotations.NotNull;
/**
* @author Maxim.Mossienko
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlSyntaxHighlighterFactory.java b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlSyntaxHighlighterFactory.java
index 152b2bb28bcd..cd5b675565a9 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlSyntaxHighlighterFactory.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlSyntaxHighlighterFactory.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.lang.xml;
import com.intellij.ide.highlighter.XmlFileHighlighter;
@@ -6,6 +21,7 @@ import com.intellij.openapi.fileTypes.SyntaxHighlighter;
import org.jetbrains.annotations.NotNull;
public class XmlSyntaxHighlighterFactory extends SingleLazyInstanceSyntaxHighlighterFactory {
+ @Override
@NotNull
protected SyntaxHighlighter createHighlighter() {
return new XmlFileHighlighter();
diff --git a/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlTemplateTreePatcher.java b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlTemplateTreePatcher.java
index 0669461187c6..7cdb9311064f 100644
--- a/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlTemplateTreePatcher.java
+++ b/xml/xml-psi-impl/src/com/intellij/lang/xml/XmlTemplateTreePatcher.java
@@ -25,6 +25,7 @@ import com.intellij.psi.xml.XmlTokenType;
import com.intellij.util.CharTable;
public class XmlTemplateTreePatcher implements TreePatcher {
+ @Override
public void insert(CompositeElement parent, TreeElement anchorBefore, OuterLanguageElement toInsert) {
if(anchorBefore != null) {
//[mike]
@@ -39,6 +40,7 @@ public class XmlTemplateTreePatcher implements TreePatcher {
else parent.rawAddChildren((TreeElement)toInsert);
}
+ @Override
public LeafElement split(LeafElement leaf, int offset, final CharTable table) {
final CharSequence chars = leaf.getChars();
final LeafElement leftPart = ASTFactory.leaf(leaf.getElementType(), table.intern(chars, 0, offset));
diff --git a/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java b/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java
index 7e2c1727d63b..3e01e209c5eb 100644
--- a/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/lexer/BaseHtmlLexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -47,7 +47,7 @@ abstract class BaseHtmlLexer extends DelegateLexer {
private static final int SEEN_CONTENT_TYPE = 0x400;
protected static final int BASE_STATE_SHIFT = 11;
@Nullable
- protected static Language ourDefaultLanguage = Language.findLanguageByID("JavaScript");
+ protected static final Language ourDefaultLanguage = Language.findLanguageByID("JavaScript");
private boolean seenTag;
private boolean seenAttribute;
diff --git a/xml/xml-psi-impl/src/com/intellij/lexer/HtmlHighlightingLexer.java b/xml/xml-psi-impl/src/com/intellij/lexer/HtmlHighlightingLexer.java
index 1303d56d7591..eeae1d318e15 100644
--- a/xml/xml-psi-impl/src/com/intellij/lexer/HtmlHighlightingLexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/lexer/HtmlHighlightingLexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,7 +35,7 @@ public class HtmlHighlightingLexer extends BaseHtmlLexer {
protected Lexer elLexer;
private boolean hasNoEmbeddments;
private final FileType ourStyleFileType;// = FileTypeManager.getInstance().getStdFileType("CSS");
- private static FileType ourInlineScriptFileType = null;
+ private static final FileType ourInlineScriptFileType;
static {
diff --git a/xml/xml-psi-impl/src/com/intellij/lexer/XHtmlLexer.java b/xml/xml-psi-impl/src/com/intellij/lexer/XHtmlLexer.java
index 784198ced9c2..b108e9c722bb 100644
--- a/xml/xml-psi-impl/src/com/intellij/lexer/XHtmlLexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/lexer/XHtmlLexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@ public class XHtmlLexer extends HtmlLexer {
this(new XmlLexer(true));
}
+ @Override
protected boolean isHtmlTagState(int state) {
return state == __XmlLexer.TAG || state == __XmlLexer.END_TAG;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/lexer/XmlHighlightingLexer.java b/xml/xml-psi-impl/src/com/intellij/lexer/XmlHighlightingLexer.java
index e4857748841f..65485236e353 100644
--- a/xml/xml-psi-impl/src/com/intellij/lexer/XmlHighlightingLexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/lexer/XmlHighlightingLexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,6 +26,7 @@ public class XmlHighlightingLexer extends DelegateLexer {
super(new XmlLexer());
}
+ @Override
public IElementType getTokenType() {
IElementType tokenType = getDelegate().getTokenType();
diff --git a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectChangeSetImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectChangeSetImpl.java
index eb9da7bc8cbb..9aa3054a5148 100644
--- a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectChangeSetImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectChangeSetImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -46,15 +46,18 @@ public class XmlAspectChangeSetImpl implements XmlChangeSet {
}
}
+ @Override
public List<XmlChange> getChanges(){
return Collections.unmodifiableList(myChanges);
}
+ @Override
@NotNull
public PomModelAspect getAspect() {
return myModel.getModelAspect(XmlAspect.class);
}
+ @Override
public void merge(@NotNull PomChangeSet blocked) {
final List<XmlChange> changes = ((XmlAspectChangeSetImpl)blocked).myChanges;
for (XmlChange xmlChange : changes) {
@@ -62,21 +65,24 @@ public class XmlAspectChangeSetImpl implements XmlChangeSet {
}
}
+ @Override
public void add(XmlChange xmlChange) {
myChanges.add(xmlChange);
}
+ @Override
public void clear() {
myChanges.clear();
}
+ @Override
@NotNull
public Iterable<XmlFile> getChangedFiles() {
return myChangedFiles;
}
public String toString(){
- final StringBuffer buffer = new StringBuffer();
+ final StringBuilder buffer = new StringBuilder();
final Iterator<XmlChange> iterator = myChanges.iterator();
while (iterator.hasNext()) {
XmlChange xmlChange = iterator.next();
@@ -88,6 +94,7 @@ public class XmlAspectChangeSetImpl implements XmlChangeSet {
return buffer.toString();
}
+ @Override
public void addChangedFile(@NotNull final XmlFile xmlFile) {
myChangedFiles.add(xmlFile);
}
diff --git a/xml/impl/src/com/intellij/pom/xml/impl/XmlAspectImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectImpl.java
index db7580206072..1afcdb72d26e 100644
--- a/xml/impl/src/com/intellij/pom/xml/impl/XmlAspectImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/XmlAspectImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -49,6 +49,7 @@ public class XmlAspectImpl implements XmlAspect {
myModel.registerAspect(XmlAspect.class, this, Collections.singleton((PomModelAspect)myTreeAspect));
}
+ @Override
public void update(PomModelEvent event) {
if (!event.getChangedAspects().contains(myTreeAspect)) return;
final TreeChangeEvent changeSet = (TreeChangeEvent)event.getChangeSet(myTreeAspect);
diff --git a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlAttributeSetImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlAttributeSetImpl.java
index 2f9f08e4a7e0..4f2a013ba7f7 100644
--- a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlAttributeSetImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlAttributeSetImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,14 +35,17 @@ public class XmlAttributeSetImpl implements XmlAttributeSet {
myTag = xmlTag;
}
+ @Override
public String getName() {
return myName;
}
+ @Override
public String getValue() {
return myValue;
}
+ @Override
public XmlTag getTag() {
return myTag;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlDocumentChangedImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlDocumentChangedImpl.java
index 2bad3d23b66d..3b406552929b 100644
--- a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlDocumentChangedImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlDocumentChangedImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ public class XmlDocumentChangedImpl implements XmlDocumentChanged {
myDocument = document;
}
+ @Override
public XmlDocument getDocument() {
return myDocument;
}
diff --git a/xml/impl/src/com/intellij/pom/xml/impl/events/XmlElementChangedImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlElementChangedImpl.java
index 6c694ac7b365..bd117c998a7a 100644
--- a/xml/impl/src/com/intellij/pom/xml/impl/events/XmlElementChangedImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlElementChangedImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,6 +25,7 @@ public class XmlElementChangedImpl implements XmlElementChanged {
myElement = treeElement;
}
+ @Override
public XmlElement getElement() {
return myElement;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildAddImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildAddImpl.java
index 21024aa15bbc..94b4e063542f 100644
--- a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildAddImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildAddImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,10 +27,12 @@ public class XmlTagChildAddImpl implements XmlTagChildAdd {
myChild = treeElement;
}
+ @Override
public XmlTag getTag() {
return myTag;
}
+ @Override
public XmlTagChild getChild() {
return myChild;
}
diff --git a/xml/impl/src/com/intellij/pom/xml/impl/events/XmlTagChildChangedImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildChangedImpl.java
index 0550fcd24232..bff9d4685be2 100644
--- a/xml/impl/src/com/intellij/pom/xml/impl/events/XmlTagChildChangedImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildChangedImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,10 +33,12 @@ public class XmlTagChildChangedImpl implements XmlTagChildChanged {
myChild = treeElement;
}
+ @Override
public XmlTag getTag() {
return myTag;
}
+ @Override
public XmlTagChild getChild() {
return myChild;
}
diff --git a/xml/impl/src/com/intellij/pom/xml/impl/events/XmlTagChildRemovedImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildRemovedImpl.java
index 63e9336059eb..cd20f8c1ffac 100644
--- a/xml/impl/src/com/intellij/pom/xml/impl/events/XmlTagChildRemovedImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagChildRemovedImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,10 +27,12 @@ public class XmlTagChildRemovedImpl implements XmlTagChildRemoved {
myChild = treeElement;
}
+ @Override
public XmlTag getTag() {
return myTag;
}
+ @Override
public XmlTagChild getChild() {
return myChild;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagNameChangedImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagNameChangedImpl.java
index db972eb8536d..35a65c9d078c 100644
--- a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagNameChangedImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTagNameChangedImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,10 +33,12 @@ public class XmlTagNameChangedImpl implements XmlTagNameChanged {
myTag = tag;
}
+ @Override
public String getOldName() {
return myOldName;
}
+ @Override
public XmlTag getTag() {
return myTag;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTextChangedImpl.java b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTextChangedImpl.java
index 78fa37e03b49..77d0899e64ff 100644
--- a/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTextChangedImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/pom/xml/impl/events/XmlTextChangedImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,10 +33,12 @@ public class XmlTextChangedImpl implements XmlTextChanged {
myText = xmlText;
}
+ @Override
public String getOldText() {
return myOldText;
}
+ @Override
public XmlText getText() {
return myText;
}
diff --git a/xml/impl/src/com/intellij/psi/XmlElementFactoryImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/XmlElementFactoryImpl.java
index 4f354001bcf7..6f40f853b777 100644
--- a/xml/impl/src/com/intellij/psi/XmlElementFactoryImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/XmlElementFactoryImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -23,7 +23,6 @@ import com.intellij.lang.Language;
import com.intellij.lang.xml.XMLLanguage;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileTypes.FileType;
-import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.xml.*;
@@ -48,7 +47,7 @@ public class XmlElementFactoryImpl extends XmlElementFactory {
public XmlTag createTagFromText(@NotNull @NonNls CharSequence text, @NotNull Language language) throws IncorrectOperationException {
assert language instanceof XMLLanguage:"Tag can be created only for xml language";
FileType type = language.getAssociatedFileType();
- if (type == null) type = StdFileTypes.XML;
+ if (type == null) type = XmlFileType.INSTANCE;
final XmlDocument document = createXmlDocument(text, "dummy."+ type.getDefaultExtension(), type);
final XmlTag tag = document.getRootTag();
if (tag == null) throw new IncorrectOperationException("Incorrect tag text");
@@ -58,7 +57,7 @@ public class XmlElementFactoryImpl extends XmlElementFactory {
@Override
@NotNull
public XmlTag createTagFromText(@NotNull CharSequence text) throws IncorrectOperationException {
- return createTagFromText(text, StdFileTypes.XML.getLanguage());
+ return createTagFromText(text, XMLLanguage.INSTANCE);
}
@Override
diff --git a/xml/impl/src/com/intellij/psi/filters/TextContainFilter.java b/xml/xml-psi-impl/src/com/intellij/psi/filters/TextContainFilter.java
index 0a7ce9e6cba0..9af97cf8adc2 100644
--- a/xml/impl/src/com/intellij/psi/filters/TextContainFilter.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/filters/TextContainFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,6 +35,7 @@ public class TextContainFilter extends XmlTextFilter {
public TextContainFilter(){}
+ @Override
public boolean isAcceptable(Object element, PsiElement context){
if(element != null) {
for (final String value : myValue) {
diff --git a/xml/impl/src/com/intellij/psi/filters/TextStartFilter.java b/xml/xml-psi-impl/src/com/intellij/psi/filters/TextStartFilter.java
index f11d80663377..1ccac507996e 100644
--- a/xml/impl/src/com/intellij/psi/filters/TextStartFilter.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/filters/TextStartFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@ public class TextStartFilter extends XmlTextFilter{
public TextStartFilter(){}
+ @Override
public boolean isAcceptable(Object element, PsiElement context){
if(element != null) {
for (final String value : myValue) {
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTagFilter.java b/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTagFilter.java
index 2b2e7737bf4b..7dd7727e286c 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTagFilter.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTagFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,10 +27,12 @@ public class XmlTagFilter implements ElementFilter {
private XmlTagFilter() {}
+ @Override
public boolean isAcceptable(Object element, PsiElement context) {
return element instanceof XmlTag;
}
+ @Override
public boolean isClassAcceptable(Class hintClass) {
return true;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTextFilter.java b/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTextFilter.java
index 9f633432616e..265911962240 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTextFilter.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/filters/XmlTextFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -56,10 +56,12 @@ public class XmlTextFilter implements ElementFilter, InitializableFilter{
myValue[1] = value2;
}
+ @Override
public boolean isClassAcceptable(Class hintClass){
return true;
}
+ @Override
public boolean isAcceptable(Object element, PsiElement context){
if(element != null) {
for (final String value : myValue) {
@@ -91,6 +93,7 @@ public class XmlTextFilter implements ElementFilter, InitializableFilter{
return ret;
}
+ @Override
public void init(Object[] fromGetter){
try{
myValue = new String[fromGetter.length];
diff --git a/xml/impl/src/com/intellij/psi/filters/position/RootTagFilter.java b/xml/xml-psi-impl/src/com/intellij/psi/filters/position/RootTagFilter.java
index ea39b3fa2dbb..8d53d2d95e2f 100644
--- a/xml/impl/src/com/intellij/psi/filters/position/RootTagFilter.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/filters/position/RootTagFilter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ public class RootTagFilter extends PositionElementFilter{
}
public RootTagFilter(){}
+ @Override
public boolean isAcceptable(Object element, PsiElement scope){
if (!(element instanceof XmlDocument)) return false;
final XmlTag rootTag = ((XmlDocument)element).getRootTag();
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/filters/position/TargetNamespaceFilter.java b/xml/xml-psi-impl/src/com/intellij/psi/filters/position/TargetNamespaceFilter.java
index 1c5e2cae0b03..c738f4560674 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/filters/position/TargetNamespaceFilter.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/filters/position/TargetNamespaceFilter.java
@@ -37,10 +37,12 @@ public class TargetNamespaceFilter extends XmlTextFilter {
super(strs);
}
+ @Override
public boolean isClassAcceptable(Class hintClass){
return ReflectionUtil.isAssignable(XmlTag.class, hintClass) || ReflectionUtil.isAssignable(XmlDocument.class, hintClass);
}
+ @Override
public boolean isAcceptable(Object element, PsiElement context){
if(element instanceof XmlTag){
final String attributeValue = ((XmlTag)element).getAttributeValue("targetNamespace");
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/filters/position/XmlTokenTypeFilter.java b/xml/xml-psi-impl/src/com/intellij/psi/filters/position/XmlTokenTypeFilter.java
index fca6f8995e8c..bd96f5cb4ac3 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/filters/position/XmlTokenTypeFilter.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/filters/position/XmlTokenTypeFilter.java
@@ -38,10 +38,12 @@ public class XmlTokenTypeFilter implements ElementFilter{
myType = type;
}
+ @Override
public boolean isClassAcceptable(Class hintClass){
return ReflectionUtil.isAssignable(XmlToken.class, hintClass);
}
+ @Override
public boolean isAcceptable(Object element, PsiElement context){
if(element instanceof PsiElement) {
final ASTNode node = ((PsiElement)element).getNode();
diff --git a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlFilterLexer.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlFilterLexer.java
index 0fe0ed599b7b..3663fb7aed24 100644
--- a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlFilterLexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlFilterLexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,12 +18,11 @@ package com.intellij.psi.impl.cache.impl.idCache;
import com.intellij.lang.Language;
import com.intellij.lang.xml.XMLLanguage;
import com.intellij.lexer.Lexer;
-import com.intellij.psi.impl.cache.impl.BaseFilterLexer;
import com.intellij.psi.impl.cache.CacheUtil;
+import com.intellij.psi.impl.cache.impl.BaseFilterLexer;
import com.intellij.psi.impl.cache.impl.OccurrenceConsumer;
import com.intellij.psi.search.UsageSearchContext;
import com.intellij.psi.tree.IElementType;
-import com.intellij.psi.xml.XmlElementType;
import com.intellij.psi.xml.XmlTokenType;
public class XHtmlFilterLexer extends BaseFilterLexer {
@@ -32,6 +31,7 @@ public class XHtmlFilterLexer extends BaseFilterLexer {
super(originalLexer, table);
}
+ @Override
public void advance() {
final IElementType tokenType = myDelegate.getTokenType();
diff --git a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlIdIndexer.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlIdIndexer.java
index 4ae3e8306b92..be9c3946e97f 100644
--- a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlIdIndexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlIdIndexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@ import com.intellij.psi.impl.cache.impl.OccurrenceConsumer;
import com.intellij.psi.impl.cache.impl.id.LexerBasedIdIndexer;
public class XHtmlIdIndexer extends LexerBasedIdIndexer {
+ @Override
public Lexer createLexer(final OccurrenceConsumer consumer) {
return createIndexingLexer(consumer);
}
diff --git a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlTodoIndexer.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlTodoIndexer.java
index bd3458f6d88c..a445d1a3a4e3 100644
--- a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlTodoIndexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XHtmlTodoIndexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlFilterLexer.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlFilterLexer.java
index 0b4d5c20b7e2..c1dd31d91ec6 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlFilterLexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlFilterLexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -49,6 +49,7 @@ public class XmlFilterLexer extends BaseFilterLexer {
super(originalLexer, table);
}
+ @Override
public void advance() {
final IElementType tokenType = myDelegate.getTokenType();
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlIdIndexer.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlIdIndexer.java
index ba047854274c..502f8af8d9f8 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlIdIndexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlIdIndexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@ import com.intellij.psi.impl.cache.impl.OccurrenceConsumer;
import com.intellij.psi.impl.cache.impl.id.LexerBasedIdIndexer;
public class XmlIdIndexer extends LexerBasedIdIndexer {
+ @Override
public Lexer createLexer(final OccurrenceConsumer consumer) {
return createIndexingLexer(consumer);
}
diff --git a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlTodoIndexer.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlTodoIndexer.java
index 4847f3d32ea8..bd6537876594 100644
--- a/xml/impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlTodoIndexer.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/cache/impl/idCache/XmlTodoIndexer.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlConditionalCommentInjector.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlConditionalCommentInjector.java
index d78e94172080..395b40cf5b7b 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlConditionalCommentInjector.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlConditionalCommentInjector.java
@@ -77,6 +77,7 @@ public class HtmlConditionalCommentInjector implements MultiHostInjector {
return endOfEnd == null ? null : Pair.create(conditionalStart, conditionalEnd);
}
+ @Override
public void getLanguagesToInject(@NotNull final MultiHostRegistrar registrar, @NotNull final PsiElement host) {
Pair<ASTNode, ASTNode> pair = parseConditionalCommentBoundaries(host);
if (pair == null) {
@@ -93,6 +94,7 @@ public class HtmlConditionalCommentInjector implements MultiHostInjector {
}
}
+ @Override
@NotNull
public List<? extends Class<? extends PsiElement>> elementsToInjectIn() {
return Arrays.asList(PsiComment.class);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlDocumentImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlDocumentImpl.java
index 7aa9ce9f2d9f..864a854b69f5 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlDocumentImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlDocumentImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@ public class HtmlDocumentImpl extends XmlDocumentImpl {
super(XmlElementType.HTML_DOCUMENT);
}
+ @Override
public XmlTag getRootTag() {
return (XmlTag)findElementByTokenType(XmlElementType.HTML_TAG);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlEmbeddedContentImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlEmbeddedContentImpl.java
index 8cdeb23a0efe..7a37200c039f 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlEmbeddedContentImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlEmbeddedContentImpl.java
@@ -33,24 +33,28 @@ public class HtmlEmbeddedContentImpl extends ASTWrapperPsiElement implements Xml
super(node);
}
+ @Override
public XmlTag getParentTag() {
final PsiElement parent = getParent();
if (parent instanceof XmlTag) return (XmlTag)parent;
return null;
}
+ @Override
public XmlTagChild getNextSiblingInTag() {
PsiElement nextSibling = getNextSibling();
if (nextSibling instanceof XmlTagChild) return (XmlTagChild)nextSibling;
return null;
}
+ @Override
public XmlTagChild getPrevSiblingInTag() {
final PsiElement prevSibling = getPrevSibling();
if (prevSibling instanceof XmlTagChild) return (XmlTagChild)prevSibling;
return null;
}
+ @Override
public boolean processElements(PsiElementProcessor processor, PsiElement place) {
// TODO
return true;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlTagImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlTagImpl.java
index 843514d4d88c..c6afcbe5b1b4 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlTagImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/HtmlTagImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@ public class HtmlTagImpl extends XmlTagImpl implements HtmlTag {
super(XmlElementType.HTML_TAG);
}
+ @Override
@NotNull
public XmlTag[] findSubTags(String name, String namespace) {
final XmlTag[] subTags = getSubTags();
@@ -66,25 +67,30 @@ public class HtmlTagImpl extends XmlTagImpl implements HtmlTag {
return result == null ? EMPTY : result.toArray(new XmlTag[result.size()]);
}
+ @Override
protected boolean isCaseSensitive() {
return false;
}
+ @Override
public String getAttributeValue(String qname) {
qname = qname.toLowerCase();
return super.getAttributeValue(qname);
}
+ @Override
protected void cacheOneAttributeValue(String name, String value, final Map<String, String> attributesValueMap) {
name = name.toLowerCase();
super.cacheOneAttributeValue(name, value, attributesValueMap);
}
+ @Override
public String getAttributeValue(String name, String namespace) {
name = name.toLowerCase();
return super.getAttributeValue(name, namespace);
}
+ @Override
@NotNull
public String getNamespace() {
final String xmlNamespace = super.getNamespace();
@@ -101,6 +107,7 @@ public class HtmlTagImpl extends XmlTagImpl implements HtmlTag {
return xmlNamespace;
}
+ @Override
protected String getRealNs(final String value) {
if (XmlUtil.XHTML_URI.equals(value)) return XmlUtil.HTML_URI;
return value;
@@ -110,6 +117,7 @@ public class HtmlTagImpl extends XmlTagImpl implements HtmlTag {
return "HtmlTag:" + getName();
}
+ @Override
public String getPrefixByNamespace(String namespace) {
if (XmlUtil.HTML_URI.equals(namespace)) namespace = XmlUtil.XHTML_URI;
return super.getPrefixByNamespace(namespace);
diff --git a/xml/impl/src/com/intellij/psi/impl/source/html/TemplateHtmlScriptContentProvider.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/TemplateHtmlScriptContentProvider.java
index 8f4e49203482..203ee7ee178e 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/html/TemplateHtmlScriptContentProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/TemplateHtmlScriptContentProvider.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.psi.impl.source.html;
import com.intellij.ide.highlighter.HtmlFileType;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlAttributeDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlAttributeDescriptorImpl.java
index 7204bf720403..eaa52b87534f 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlAttributeDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlAttributeDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,56 +34,69 @@ public class HtmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor {
myCaseSensitive = caseSensitive;
}
+ @Override
public boolean isRequired() {
return delegate.isRequired();
}
+ @Override
public boolean isFixed() {
return delegate.isFixed();
}
+ @Override
public boolean hasIdType() {
return delegate.hasIdType();
}
+ @Override
public boolean hasIdRefType() {
return delegate.hasIdRefType();
}
+ @Override
public String getDefaultValue() {
return delegate.getDefaultValue();
}
//todo: refactor to hierarchy of value descriptor?
+ @Override
public boolean isEnumerated() {
return delegate.isEnumerated();
}
+ @Override
public String[] getEnumeratedValues() {
return delegate.getEnumeratedValues();
}
+ @Override
public String validateValue(XmlElement context, String value) {
if (!myCaseSensitive) value = value.toLowerCase();
return delegate.validateValue(context, value);
}
+ @Override
public PsiElement getDeclaration() {
return delegate.getDeclaration();
}
+ @Override
public String getName(PsiElement context) {
return delegate.getName(context);
}
+ @Override
public String getName() {
return delegate.getName();
}
+ @Override
public void init(PsiElement element) {
delegate.init(element);
}
+ @Override
public Object[] getDependences() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlElementDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlElementDescriptorImpl.java
index bd9085a50b42..aec421651439 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlElementDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlElementDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,15 +42,18 @@ public class HtmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl {
myCaseSensitive = caseSensitive;
}
+ @Override
public String getQualifiedName() {
return myDelegate.getQualifiedName();
}
+ @Override
public String getDefaultName() {
return myDelegate.getDefaultName();
}
// Read-only calculation
+ @Override
protected final XmlElementDescriptor[] doCollectXmlDescriptors(final XmlTag context) {
XmlElementDescriptor[] elementsDescriptors = myDelegate.getElementsDescriptors(context);
XmlElementDescriptor[] temp = new XmlElementDescriptor[elementsDescriptors.length];
@@ -61,6 +64,7 @@ public class HtmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl {
return temp;
}
+ @Override
public XmlElementDescriptor getElementDescriptor(XmlTag element, XmlTag contextTag) {
String name = element.getName();
if (!myCaseSensitive) name = name.toLowerCase();
@@ -74,6 +78,7 @@ public class HtmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl {
}
// Read-only calculation
+ @Override
protected HashMap<String, XmlElementDescriptor> collectElementDescriptorsMap(final XmlTag element) {
final HashMap<String, XmlElementDescriptor> hashMap = new HashMap<String, XmlElementDescriptor>();
final XmlElementDescriptor[] elementDescriptors = myDelegate.getElementsDescriptors(element);
@@ -85,6 +90,7 @@ public class HtmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl {
}
// Read-only calculation
+ @Override
protected XmlAttributeDescriptor[] collectAttributeDescriptors(final XmlTag context) {
final XmlAttributeDescriptor[] attributesDescriptors = myDelegate.getAttributesDescriptors(context);
XmlAttributeDescriptor[] temp = new XmlAttributeDescriptor[attributesDescriptors.length];
@@ -95,6 +101,7 @@ public class HtmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl {
return temp;
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(String attributeName, final XmlTag context) {
String caseSensitiveAttributeName = !myCaseSensitive ? attributeName.toLowerCase() : attributeName;
XmlAttributeDescriptor descriptor = super.getAttributeDescriptor(caseSensitiveAttributeName, context);
@@ -118,6 +125,7 @@ public class HtmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl {
}
// Read-only calculation
+ @Override
protected HashMap<String, XmlAttributeDescriptor> collectAttributeDescriptorsMap(final XmlTag context) {
final HashMap<String, XmlAttributeDescriptor> hashMap = new HashMap<String, XmlAttributeDescriptor>();
XmlAttributeDescriptor[] elementAttributeDescriptors = myDelegate.getAttributesDescriptors(context);
@@ -131,34 +139,42 @@ public class HtmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl {
return hashMap;
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
return myDelegate.getNSDescriptor();
}
+ @Override
public int getContentType() {
return myDelegate.getContentType();
}
+ @Override
public PsiElement getDeclaration() {
return myDelegate.getDeclaration();
}
+ @Override
public String getName(PsiElement context) {
return myDelegate.getName(context);
}
+ @Override
public String getName() {
return myDelegate.getName();
}
+ @Override
public void init(PsiElement element) {
myDelegate.init(element);
}
+ @Override
public Object[] getDependences() {
return myDelegate.getDependences();
}
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final XmlTag context) {
return RelaxedHtmlFromSchemaElementDescriptor.addAttrDescriptorsForFacelets(context, super.getAttributesDescriptors(context));
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlNSDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlNSDescriptorImpl.java
index 368efbf89ea2..daf7de410668 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlNSDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/html/dtd/HtmlNSDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -41,14 +41,17 @@ public class HtmlNSDescriptorImpl implements XmlNSDescriptor, DumbAware, XmlNSTy
private final boolean myCaseSensitive;
private static final SimpleFieldCache<Map<String, XmlElementDescriptor>, HtmlNSDescriptorImpl> myCachedDeclsCache = new SimpleFieldCache<Map<String, XmlElementDescriptor>, HtmlNSDescriptorImpl>() {
+ @Override
protected Map<String, XmlElementDescriptor> compute(final HtmlNSDescriptorImpl htmlNSDescriptor) {
return htmlNSDescriptor.doBuildCachedMap();
}
+ @Override
protected Map<String, XmlElementDescriptor> getValue(final HtmlNSDescriptorImpl htmlNSDescriptor) {
return htmlNSDescriptor.myCachedDecls;
}
+ @Override
protected void putValue(final Map<String, XmlElementDescriptor> map, final HtmlNSDescriptorImpl htmlNSDescriptor) {
htmlNSDescriptor.myCachedDecls = map;
}
@@ -84,6 +87,7 @@ public class HtmlNSDescriptorImpl implements XmlNSDescriptor, DumbAware, XmlNSTy
return decls;
}
+ @Override
public XmlElementDescriptor getElementDescriptor(@NotNull XmlTag tag) {
String name = tag.getLocalName();
if (!myCaseSensitive) name = name.toLowerCase();
@@ -95,36 +99,44 @@ public class HtmlNSDescriptorImpl implements XmlNSDescriptor, DumbAware, XmlNSTy
return xmlElementDescriptor;
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable final XmlDocument document) {
return myDelegate == null ? XmlElementDescriptor.EMPTY_ARRAY : myDelegate.getRootElementsDescriptors(document);
}
+ @Override
@Nullable
public XmlFile getDescriptorFile() {
return myDelegate == null ? null : myDelegate.getDescriptorFile();
}
+ @Override
public boolean isHierarhyEnabled() {
return false;
}
+ @Override
public PsiElement getDeclaration() {
return myDelegate == null ? null : myDelegate.getDeclaration();
}
+ @Override
public String getName(PsiElement context) {
return myDelegate == null ? "" : myDelegate.getName(context);
}
+ @Override
public String getName() {
return myDelegate == null ? "" : myDelegate.getName();
}
+ @Override
public void init(PsiElement element) {
myDelegate.init(element);
}
+ @Override
public Object[] getDependences() {
return myDelegate == null ? null : myDelegate.getDependences();
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/HtmlBuilderDriver.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/HtmlBuilderDriver.java
index 571b1e42d633..8be807ed7ace 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/HtmlBuilderDriver.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/HtmlBuilderDriver.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ public class HtmlBuilderDriver extends XmlBuilderDriver {
super(text);
}
+ @Override
protected PsiBuilder createBuilderAndParse() {
final ParserDefinition htmlParserDef = LanguageParserDefinitions.INSTANCE.forLanguage(HTMLLanguage.INSTANCE);
assert htmlParserDef != null;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/XmlParser.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/XmlParser.java
index 8c5889da8d62..b0edbdabb916 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/XmlParser.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/parsing/xml/XmlParser.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -59,6 +59,7 @@ public class XmlParser implements PsiParser {
}
};
+ @Override
@NotNull
public ASTNode parse(final IElementType root, final PsiBuilder builder) {
builder.enforceCommentTokens(TokenSet.EMPTY);
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeManipulator.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeManipulator.java
index f39f160047e6..f39f160047e6 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeManipulator.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeManipulator.java
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeValueManipulator.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeValueManipulator.java
index a32b51f5fc3f..a32b51f5fc3f 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeValueManipulator.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlAttributeValueManipulator.java
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlProcessingInstructionManipulator.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlProcessingInstructionManipulator.java
index 61149c5db6ef..61149c5db6ef 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlProcessingInstructionManipulator.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlProcessingInstructionManipulator.java
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTagManipulator.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTagManipulator.java
index ef3b83c54505..ef3b83c54505 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTagManipulator.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTagManipulator.java
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTextManipulator.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTextManipulator.java
index de4f9eb6cbc7..de4f9eb6cbc7 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTextManipulator.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTextManipulator.java
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTokenManipulator.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTokenManipulator.java
index 1ce8eb17aeca..1ce8eb17aeca 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTokenManipulator.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/manipulators/XmlTokenManipulator.java
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/BasicAttributeValueReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/BasicAttributeValueReference.java
index 6cd7479593a2..efaf54a1e592 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/BasicAttributeValueReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/BasicAttributeValueReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,8 +26,8 @@ import org.jetbrains.annotations.NotNull;
* @author peter
*/
public abstract class BasicAttributeValueReference implements PsiReference {
- protected PsiElement myElement;
- protected TextRange myRange;
+ protected final PsiElement myElement;
+ protected final TextRange myRange;
public BasicAttributeValueReference(final PsiElement element) {
this ( element, ElementManipulators.getValueTextRange(element));
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/DependentNSReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/DependentNSReference.java
index feeb5bc890c1..944ca40e0563 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/DependentNSReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/DependentNSReference.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.psi.impl.source.resolve.reference.impl.providers;
import com.intellij.javaee.ExternalResourceManager;
@@ -25,6 +40,7 @@ public class DependentNSReference extends BasicAttributeValueReference {
myForceFetchResultValid = valid;
}
+ @Override
@Nullable
public PsiElement resolve() {
final String canonicalText = getCanonicalText();
@@ -33,11 +49,13 @@ public class DependentNSReference extends BasicAttributeValueReference {
return myReference.resolve();
}
+ @Override
@NotNull
public Object[] getVariants() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
+ @Override
public boolean isSoft() {
return false;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/SchemaReferencesProvider.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/SchemaReferencesProvider.java
index 450ae1043c6e..97613a6f2bcf 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/SchemaReferencesProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/SchemaReferencesProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -72,6 +72,7 @@ public class SchemaReferencesProvider extends PsiReferenceProvider {
private static final Pattern pattern = Pattern.compile("^(?:\\\\i|\\\\l)");
private static final Pattern pattern2 = Pattern.compile("([^\\\\])(?:\\\\i|\\\\l)");
+ @Override
@Nullable
public PsiElement resolve() {
try {
@@ -90,15 +91,18 @@ public class SchemaReferencesProvider extends PsiReferenceProvider {
}
}
+ @Override
@NotNull
public Object[] getVariants() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
+ @Override
public boolean isSoft() {
return false;
}
+ @Override
@NotNull
public String getUnresolvedMessagePattern() {
return message;
@@ -112,25 +116,30 @@ public class SchemaReferencesProvider extends PsiReferenceProvider {
myElement = element;
}
+ @Override
public PsiElement getElement() {
return myElement;
}
+ @Override
public TextRange getRangeInElement() {
return ElementManipulators.getValueTextRange(myElement);
}
+ @Override
@Nullable
public PsiElement resolve() {
return myElement.getParent().getParent();
}
+ @Override
@NotNull
public String getCanonicalText() {
String text = myElement.getText();
return text.substring(1,text.length()- 1);
}
+ @Override
public PsiElement handleElementRename(String newElementName) throws IncorrectOperationException {
return ElementManipulators.getManipulator(myElement).handleContentChange(
myElement,
@@ -139,24 +148,29 @@ public class SchemaReferencesProvider extends PsiReferenceProvider {
);
}
+ @Override
public PsiElement bindToElement(@NotNull PsiElement element) throws IncorrectOperationException {
return null;
}
+ @Override
public boolean isReferenceTo(PsiElement element) {
return myElement.getManager().areElementsEquivalent(resolve(), element);
}
+ @Override
@NotNull
public Object[] getVariants() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
+ @Override
public boolean isSoft() {
return true;
}
}
+ @Override
@NotNull
public PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull final ProcessingContext context) {
final PsiElement parent = element.getParent();
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/TypeOrElementOrAttributeReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/TypeOrElementOrAttributeReference.java
index df4b38a5a54a..47a77fef37a9 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/TypeOrElementOrAttributeReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/TypeOrElementOrAttributeReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -108,14 +108,17 @@ public class TypeOrElementOrAttributeReference implements PsiReference {
return null;
}
+ @Override
public PsiElement getElement() {
return myElement;
}
+ @Override
public TextRange getRangeInElement() {
return myRange;
}
+ @Override
@Nullable
public PsiElement resolve() {
final PsiElement psiElement = ResolveCache
@@ -216,6 +219,7 @@ public class TypeOrElementOrAttributeReference implements PsiReference {
URLReference.processWsdlSchemas(
document.getRootTag(),
new Processor<XmlTag>() {
+ @Override
public boolean process(final XmlTag xmlTag) {
if (namespace.equals(xmlTag.getAttributeValue(TARGET_NAMESPACE))) {
descrs[0] = (XmlNSDescriptor)xmlTag.getMetaData();
@@ -255,6 +259,7 @@ public class TypeOrElementOrAttributeReference implements PsiReference {
return namespaceByPrefix;
}
+ @Override
@NotNull
public String getCanonicalText() {
final String text = myElement.getText();
@@ -265,6 +270,7 @@ public class TypeOrElementOrAttributeReference implements PsiReference {
return name;
}
+ @Override
public PsiElement handleElementRename(String newElementName) throws IncorrectOperationException {
final String canonicalText = getCanonicalText();
@@ -274,14 +280,17 @@ public class TypeOrElementOrAttributeReference implements PsiReference {
return element;
}
+ @Override
public PsiElement bindToElement(@NotNull PsiElement element) throws IncorrectOperationException {
throw new IncorrectOperationException();
}
+ @Override
public boolean isReferenceTo(PsiElement element) {
return myElement.getManager().areElementsEquivalent(resolve(), element);
}
+ @Override
@NotNull
public Object[] getVariants() {
final XmlTag tag = PsiTreeUtil.getContextOfType(myElement, XmlTag.class, true);
@@ -356,19 +365,21 @@ public class TypeOrElementOrAttributeReference implements PsiReference {
);
}
+ @Override
public boolean isSoft() {
return false;
}
private static class MyResolver implements ResolveCache.Resolver {
- static MyResolver INSTANCE = new MyResolver();
+ static final MyResolver INSTANCE = new MyResolver();
+ @Override
public PsiElement resolve(@NotNull PsiReference ref, boolean incompleteCode) {
return ((TypeOrElementOrAttributeReference)ref).resolveInner();
}
}
private static class CompletionProcessor implements PsiElementProcessor<XmlTag> {
- List<String> myElements = new ArrayList<String>(1);
+ final List<String> myElements = new ArrayList<String>(1);
String namespace;
final XmlTag tag;
private final String prefix;
@@ -378,6 +389,7 @@ public class TypeOrElementOrAttributeReference implements PsiReference {
this.prefix = prefix;
}
+ @Override
public boolean execute(@NotNull final XmlTag element) {
String name = element.getAttributeValue(SchemaReferencesProvider.NAME_ATTR_NAME);
final String prefixByNamespace = tag.getPrefixByNamespace(namespace);
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URIReferenceProvider.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URIReferenceProvider.java
index a86d7598cdde..249edad17733 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URIReferenceProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URIReferenceProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,6 +38,7 @@ import java.util.StringTokenizer;
public class URIReferenceProvider extends PsiReferenceProvider {
public static final ElementFilter ELEMENT_FILTER = new ElementFilter() {
+ @Override
public boolean isAcceptable(Object element, PsiElement context) {
final PsiElement parent = context.getParent();
if (parent instanceof XmlAttribute) {
@@ -47,6 +48,7 @@ public class URIReferenceProvider extends PsiReferenceProvider {
return false;
}
+ @Override
public boolean isClassAcceptable(Class hintClass) {
return true;
}
@@ -54,6 +56,7 @@ public class URIReferenceProvider extends PsiReferenceProvider {
@NonNls
private static final String NAMESPACE_ATTR_NAME = "namespace";
+ @Override
@NotNull
public PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull final ProcessingContext context) {
final String text = element.getText();
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URLReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URLReference.java
index 557e8e0b0878..3ae8bc8d24dd 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URLReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/URLReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -64,14 +64,17 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
mySoft = soft;
}
+ @Override
public PsiElement getElement() {
return myElement;
}
+ @Override
public TextRange getRangeInElement() {
return myRange != null ? myRange : ElementManipulators.getValueTextRange(myElement);
}
+ @Override
@Nullable
public PsiElement resolve() {
myIncorrectResourceMapped = false;
@@ -134,6 +137,7 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
final PsiElement[] result = new PsiElement[1];
processWsdlSchemas(rootTag,new Processor<XmlTag>() {
+ @Override
public boolean process(final XmlTag t) {
if (canonicalText.equals(t.getAttributeValue(TARGET_NAMESPACE_ATTR_NAME))) {
result[0] = t;
@@ -156,6 +160,7 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
return null;
}
+ @Override
@NotNull
public String getCanonicalText() {
final String text = myElement.getText();
@@ -166,6 +171,7 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
return "";
}
+ @Override
public PsiElement handleElementRename(String newElementName) throws IncorrectOperationException {
final TextRange textRangeInElement = getRangeInElement();
final PsiElement elementToChange = myElement.findElementAt(textRangeInElement.getStartOffset());
@@ -178,6 +184,7 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
return myElement;
}
+ @Override
public PsiElement bindToElement(@NotNull PsiElement element) throws IncorrectOperationException {
assert element instanceof PsiFile;
@@ -190,10 +197,12 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
return myElement;
}
+ @Override
public boolean isReferenceTo(PsiElement element) {
return myElement.getManager().areElementsEquivalent(resolve(),element);
}
+ @Override
@NotNull
public Object[] getVariants() {
final XmlFile file = (XmlFile)myElement.getContainingFile();
@@ -212,6 +221,7 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
XmlTag rootTag = document.getRootTag();
final ArrayList<String> additionalNs = new ArrayList<String>();
if (rootTag != null) processWsdlSchemas(rootTag, new Processor<XmlTag>() {
+ @Override
public boolean process(final XmlTag xmlTag) {
final String s = xmlTag.getAttributeValue(TARGET_NAMESPACE_ATTR_NAME);
if (s != null) { additionalNs.add(s); }
@@ -222,10 +232,12 @@ public class URLReference implements PsiReference, EmptyResolveMessageProvider {
return resourceUrls;
}
+ @Override
public boolean isSoft() {
return mySoft;
}
+ @Override
@NotNull
public String getUnresolvedMessagePattern() {
return XmlErrorMessages.message(myIncorrectResourceMapped ? "registered.resource.is.not.recognized":"uri.is.not.registered");
diff --git a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/XmlValueReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/XmlValueReference.java
index 9bccd2589707..ba1e6898d533 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/XmlValueReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/XmlValueReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,7 +28,7 @@ import org.jetbrains.annotations.NotNull;
* @author Dmitry Avdeev
*/
public abstract class XmlValueReference implements PsiReference {
- protected XmlTag myTag;
+ protected final XmlTag myTag;
protected TextRange myRange;
protected XmlValueReference(XmlTag tag) {
@@ -36,14 +36,17 @@ public abstract class XmlValueReference implements PsiReference {
myRange = ElementManipulators.getValueTextRange(tag);
}
+ @Override
public PsiElement getElement() {
return myTag;
}
+ @Override
public TextRange getRangeInElement() {
return myRange;
}
+ @Override
@NotNull
public String getCanonicalText() {
return myRange.substring(myTag.getText());
@@ -55,10 +58,12 @@ public abstract class XmlValueReference implements PsiReference {
myRange = manipulator.getRangeInElement(myTag);
}
+ @Override
public boolean isReferenceTo(PsiElement element) {
return myTag.getManager().areElementsEquivalent(element, resolve());
}
+ @Override
public boolean isSoft() {
return false;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/HtmlFileElement.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/HtmlFileElement.java
index e1d0624b2a40..3ff9ed89bef9 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/HtmlFileElement.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/HtmlFileElement.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ public class HtmlFileElement extends FileElement implements XmlElementType {
super(HTML_FILE, text);
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
if (child.getElementType() == HTML_DOCUMENT) {
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/XmlFileElement.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/XmlFileElement.java
index db3128d8c962..1296afa99d9f 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/XmlFileElement.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/XmlFileElement.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ public class XmlFileElement extends FileElement implements XmlElementType {
super(type, text);
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
if (child.getElementType() == XML_DOCUMENT ||
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlAttributeLiteralEscaper.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlAttributeLiteralEscaper.java
index 21606615f0da..a4e0ce1c55cd 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlAttributeLiteralEscaper.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlAttributeLiteralEscaper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ public class XmlAttributeLiteralEscaper extends LiteralTextEscaper<XmlAttributeV
myXmlAttribute = (XmlAttribute)host.getParent();
}
+ @Override
public boolean decode(@NotNull final TextRange rangeInsideHost, @NotNull StringBuilder outChars) {
ProperTextRange.assertProperRange(rangeInsideHost);
TextRange valueTextRange = myXmlAttribute.getValueTextRange();
@@ -47,6 +48,7 @@ public class XmlAttributeLiteralEscaper extends LiteralTextEscaper<XmlAttributeV
return true;
}
+ @Override
public int getOffsetInHost(final int offsetInDecoded, @NotNull final TextRange rangeInsideHost) {
TextRange valueTextRange = myXmlAttribute.getValueTextRange();
int displayStart = myXmlAttribute.physicalToDisplay(rangeInsideHost.getStartOffset());
@@ -56,6 +58,7 @@ public class XmlAttributeLiteralEscaper extends LiteralTextEscaper<XmlAttributeV
return dp + valueTextRange.getStartOffset();
}
+ @Override
public boolean isOneLine() {
return true;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlCommentLiteralEscaper.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlCommentLiteralEscaper.java
index 8426623a835e..01b1158c216d 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlCommentLiteralEscaper.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlCommentLiteralEscaper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,12 +32,14 @@ public class XmlCommentLiteralEscaper extends LiteralTextEscaper<XmlCommentImpl>
super(host);
}
+ @Override
public boolean decode(@NotNull final TextRange rangeInsideHost, @NotNull final StringBuilder outChars) {
ProperTextRange.assertProperRange(rangeInsideHost);
outChars.append(myHost.getText(), rangeInsideHost.getStartOffset(), rangeInsideHost.getEndOffset());
return true;
}
+ @Override
public int getOffsetInHost(final int offsetInDecoded, @NotNull final TextRange rangeInsideHost) {
int offset = offsetInDecoded + rangeInsideHost.getStartOffset();
if (offset < rangeInsideHost.getStartOffset()) offset = rangeInsideHost.getStartOffset();
@@ -45,6 +47,7 @@ public class XmlCommentLiteralEscaper extends LiteralTextEscaper<XmlCommentImpl>
return offset;
}
+ @Override
public boolean isOneLine() {
final Commenter commenter = LanguageCommenters.INSTANCE.forLanguage(myHost.getLanguage());
if (commenter instanceof CodeDocumentationAwareCommenter) {
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlTextLiteralEscaper.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlTextLiteralEscaper.java
index ca6154728968..92a6b1f1a72b 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlTextLiteralEscaper.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/tree/injected/XmlTextLiteralEscaper.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,6 +29,7 @@ public class XmlTextLiteralEscaper extends LiteralTextEscaper<XmlTextImpl> {
super(xmlText);
}
+ @Override
public boolean decode(@NotNull final TextRange rangeInsideHost, @NotNull StringBuilder outChars) {
ProperTextRange.assertProperRange(rangeInsideHost);
int startInDecoded = myHost.physicalToDisplay(rangeInsideHost.getStartOffset());
@@ -37,6 +38,7 @@ public class XmlTextLiteralEscaper extends LiteralTextEscaper<XmlTextImpl> {
return true;
}
+ @Override
public int getOffsetInHost(final int offsetInDecoded, @NotNull final TextRange rangeInsideHost) {
final int rangeInsideHostStartOffset = rangeInsideHost.getStartOffset();
int displayStart = myHost.physicalToDisplay(rangeInsideHostStartOffset);
@@ -48,11 +50,13 @@ public class XmlTextLiteralEscaper extends LiteralTextEscaper<XmlTextImpl> {
return i;
}
+ @Override
@NotNull
public TextRange getRelevantTextRange() {
return myHost.getCDATAInterior();
}
+ @Override
public boolean isOneLine() {
return false;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/LanguageXmlPsiPolicy.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/LanguageXmlPsiPolicy.java
index a67b4603cb6a..2dfa64e07460 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/LanguageXmlPsiPolicy.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/LanguageXmlPsiPolicy.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.psi.impl.source.xml;
import com.intellij.lang.LanguageExtension;
@@ -7,7 +22,7 @@ import com.intellij.psi.impl.source.xml.behavior.CDATAOnAnyEncodedPolicy;
* @author yole
*/
public class LanguageXmlPsiPolicy extends LanguageExtension<XmlPsiPolicy> {
- public static LanguageXmlPsiPolicy INSTANCE = new LanguageXmlPsiPolicy();
+ public static final LanguageXmlPsiPolicy INSTANCE = new LanguageXmlPsiPolicy();
private LanguageXmlPsiPolicy() {
super("com.intellij.xml.psiPolicy", new CDATAOnAnyEncodedPolicy());
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefix.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefix.java
index 5fbc795e6851..a0e272549ebe 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefix.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefix.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -52,10 +52,12 @@ public class SchemaPrefix extends RenameableFakePsiElement {
};
}
+ @Override
public String getTypeName() {
return "XML Namespace Prefix";
}
+ @Override
public Icon getIcon() {
return PlatformIcons.VARIABLE_ICON;
}
@@ -75,6 +77,7 @@ public class SchemaPrefix extends RenameableFakePsiElement {
return myName;
}
+ @Override
public XmlAttribute getDeclaration() {
return (XmlAttribute)getParent();
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefixReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefixReference.java
index 4d4c3aa60187..64b9232075a3 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefixReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/SchemaPrefixReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -67,10 +67,12 @@ public class SchemaPrefixReference extends PsiReferenceBase<XmlElement> implemen
return myName;
}
+ @Override
public SchemaPrefix resolve() {
return myPrefix == null ? resolvePrefix(myElement, myName) : myPrefix;
}
+ @Override
@NotNull
public Object[] getVariants() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/TagNameReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/TagNameReference.java
index 814b06805a09..26fcc9940608 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/TagNameReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/TagNameReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -45,6 +45,7 @@ public class TagNameReference implements PsiReference {
myNameElement = nameElement;
}
+ @Override
public PsiElement getElement() {
PsiElement element = myNameElement.getPsi();
final PsiElement parent = element.getParent();
@@ -58,6 +59,7 @@ public class TagNameReference implements PsiReference {
return (XmlTag)element;
}
+ @Override
public TextRange getRangeInElement() {
final ASTNode nameElement = getNameElement();
if (nameElement == null){
@@ -89,6 +91,7 @@ public class TagNameReference implements PsiReference {
return myNameElement;
}
+ @Override
public PsiElement resolve() {
final XmlTag tag = getTagElement();
final XmlElementDescriptor descriptor = tag != null ? tag.getDescriptor():null;
@@ -104,11 +107,13 @@ public class TagNameReference implements PsiReference {
return null;
}
+ @Override
@NotNull
public String getCanonicalText() {
return getNameElement().getText();
}
+ @Override
@Nullable
public PsiElement handleElementRename(String newElementName) throws IncorrectOperationException {
final XmlTag element = getTagElement();
@@ -136,6 +141,7 @@ public class TagNameReference implements PsiReference {
return newElementName;
}
+ @Override
public PsiElement bindToElement(@NotNull PsiElement element) throws IncorrectOperationException {
PsiMetaData metaData = null;
@@ -162,15 +168,18 @@ public class TagNameReference implements PsiReference {
throw new IncorrectOperationException("Cant bind to not a xml element definition!"+element+","+metaData + "," + tag + "," + (tag != null ? tag.getDescriptor() : "unknown descriptor"));
}
+ @Override
public boolean isReferenceTo(PsiElement element) {
return getElement().getManager().areElementsEquivalent(element, resolve());
}
+ @Override
@NotNull
public Object[] getVariants(){
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
+ @Override
public boolean isSoft() {
return false;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttlistDeclImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttlistDeclImpl.java
index d65ea69662f7..c53037cc0d55 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttlistDeclImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttlistDeclImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@ public class XmlAttlistDeclImpl extends XmlElementImpl implements XmlAttlistDecl
super(XmlElementType.XML_ATTLIST_DECL);
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
if (child.getElementType() == XmlTokenType.XML_NAME) {
@@ -49,13 +50,16 @@ public class XmlAttlistDeclImpl extends XmlElementImpl implements XmlAttlistDecl
}
}
+ @Override
public XmlElement getNameElement() {
return (XmlElement)findChildByRoleAsPsiElement(XmlChildRole.XML_NAME);
}
+ @Override
public XmlAttributeDecl[] getAttributeDecls() {
final List<XmlAttributeDecl> result = new ArrayList<XmlAttributeDecl>();
processElements(new FilterElementProcessor(new ClassFilter(XmlAttributeDecl.class), result) {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlAttributeDecl) {
if (element.getNextSibling() == null && element.getChildren().length == 1) {
@@ -69,11 +73,13 @@ public class XmlAttlistDeclImpl extends XmlElementImpl implements XmlAttlistDecl
return result.toArray(new XmlAttributeDecl[result.size()]);
}
+ @Override
@NotNull
public PsiReference[] getReferences() {
return ReferenceProvidersRegistry.getReferencesFromProviders(this,XmlAttlistDecl.class);
}
+ @Override
public String getName() {
XmlElement xmlElement = getNameElement();
if (xmlElement != null) return xmlElement.getText();
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeDeclImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeDeclImpl.java
index 1d060810ae2b..f09b6892bbbb 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeDeclImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeDeclImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -45,6 +45,7 @@ public class XmlAttributeDeclImpl extends XmlElementImpl implements XmlAttribute
super(XML_ATTRIBUTE_DECL);
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
IElementType i = child.getElementType();
@@ -71,26 +72,32 @@ public class XmlAttributeDeclImpl extends XmlElementImpl implements XmlAttribute
}
}
+ @Override
public XmlElement getNameElement() {
return findElementByTokenType(XML_NAME);
}
+ @Override
public boolean isAttributeRequired() {
return findElementByTokenType(XML_ATT_REQUIRED) != null;
}
+ @Override
public boolean isAttributeFixed() {
return findElementByTokenType(XML_ATT_FIXED) != null;
}
+ @Override
public boolean isAttributeImplied() {
return findElementByTokenType(XML_ATT_IMPLIED) != null;
}
+ @Override
public XmlAttributeValue getDefaultValue() {
return (XmlAttributeValue)findElementByTokenType(XML_ATTRIBUTE_VALUE);
}
+ @Override
public String getDefaultValueText() {
XmlAttributeValue value = getDefaultValue();
if (value == null) return null;
@@ -99,6 +106,7 @@ public class XmlAttributeDeclImpl extends XmlElementImpl implements XmlAttribute
final StringBuilder builder = new StringBuilder();
value.processElements(new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull PsiElement element) {
builder.append(element.getText());
return true;
@@ -107,10 +115,12 @@ public class XmlAttributeDeclImpl extends XmlElementImpl implements XmlAttribute
return builder.toString();
}
+ @Override
public boolean isEnumerated() {
return findElementByTokenType(XML_ENUMERATED_TYPE) != null;
}
+ @Override
public XmlElement[] getEnumeratedValues() {
XmlEnumeratedType enumeratedType = (XmlEnumeratedType)findElementByTokenType(XML_ENUMERATED_TYPE);
if (enumeratedType != null) {
@@ -121,6 +131,7 @@ public class XmlAttributeDeclImpl extends XmlElementImpl implements XmlAttribute
}
}
+ @Override
public boolean isIdAttribute() {
final PsiElement elementType = findElementType();
@@ -135,32 +146,38 @@ public class XmlAttributeDeclImpl extends XmlElementImpl implements XmlAttribute
return elementType;
}
+ @Override
public boolean isIdRefAttribute() {
final PsiElement elementType = findElementType();
return elementType != null && elementType.getText().equals(IDREF_ATT);
}
+ @Override
public PsiMetaData getMetaData() {
return MetaRegistry.getMeta(this);
}
+ @Override
public PsiElement setName(@NotNull String name) throws IncorrectOperationException {
XmlElementChangeUtil.doNameReplacement(this, getNameElement(), name);
return null;
}
+ @Override
public String getName() {
XmlElement name = getNameElement();
return (name != null) ? name.getText() : null;
}
+ @Override
public boolean canNavigate() {
if (isPhysical()) return super.canNavigate();
final PsiNamedElement psiNamedElement = XmlUtil.findRealNamedElement(this);
return psiNamedElement != null && psiNamedElement != this && ((Navigatable)psiNamedElement).canNavigate();
}
+ @Override
public void navigate(final boolean requestFocus) {
if (isPhysical()) {
super.navigate(requestFocus);
@@ -181,6 +198,7 @@ public class XmlAttributeDeclImpl extends XmlElementImpl implements XmlAttribute
}
}
+ @Override
@NotNull
public PsiElement getNavigationElement() {
return this;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeReference.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeReference.java
index b3b29ce4e0d0..44eec73d35f7 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeReference.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeReference.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ import org.jetbrains.annotations.Nullable;
public class XmlAttributeReference implements PsiReference {
private final NullableLazyValue<XmlAttributeDescriptor> myDescriptor = new NullableLazyValue<XmlAttributeDescriptor>() {
+ @Override
protected XmlAttributeDescriptor compute() {
XmlTag parent = myAttribute.getParent();
final XmlElementDescriptor descr = parent.getDescriptor();
@@ -48,10 +49,12 @@ public class XmlAttributeReference implements PsiReference {
myAttribute = attribute;
}
+ @Override
public XmlAttribute getElement() {
return myAttribute;
}
+ @Override
public TextRange getRangeInElement() {
final int parentOffset = myAttribute.getNameElement().getStartOffsetInParent();
int nsLen = myAttribute.getNamespacePrefix().length();
@@ -59,16 +62,19 @@ public class XmlAttributeReference implements PsiReference {
return new TextRange(parentOffset + nsLen, parentOffset + myAttribute.getNameElement().getTextLength());
}
+ @Override
public PsiElement resolve() {
final XmlAttributeDescriptor descriptor = getDescriptor();
return descriptor != null ? descriptor.getDeclaration() : null;
}
+ @Override
@NotNull
public String getCanonicalText() {
return myAttribute.getName();
}
+ @Override
public PsiElement handleElementRename(String newElementName) throws IncorrectOperationException {
String newName = newElementName;
if (getDescriptor() instanceof XmlAttributeDescriptorEx) {
@@ -82,6 +88,7 @@ public class XmlAttributeReference implements PsiReference {
return myAttribute.setName(newName);
}
+ @Override
public PsiElement bindToElement(@NotNull PsiElement element) throws IncorrectOperationException {
if (element instanceof PsiMetaOwner) {
final PsiMetaOwner owner = (PsiMetaOwner)element;
@@ -92,15 +99,18 @@ public class XmlAttributeReference implements PsiReference {
throw new IncorrectOperationException("Cant bind to not a xml element definition!");
}
+ @Override
public boolean isReferenceTo(PsiElement element) {
return myAttribute.getManager().areElementsEquivalent(element, resolve());
}
+ @Override
@NotNull
public Object[] getVariants() {
return ArrayUtil.EMPTY_OBJECT_ARRAY; // moved to XmlAttributeReferenceCompletionProvider
}
+ @Override
public boolean isSoft() {
return getDescriptor() == null;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeValueImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeValueImpl.java
index 29e4dab483d3..690ec23e015a 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeValueImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlAttributeValueImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -50,6 +50,7 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
super(XmlElementType.XML_ATTRIBUTE_VALUE);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlAttributeValue(this);
@@ -59,6 +60,7 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
}
}
+ @Override
public String getValue() {
// it is more correct way to strip quotes since injected xml may have quotes encoded
String text = getText();
@@ -73,6 +75,7 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
return text;
}
+ @Override
public TextRange getValueTextRange() {
final TextRange range = getTextRange();
final String value = getValue();
@@ -84,11 +87,13 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
return new TextRange(start, end);
}
+ @Override
public void clearCaches() {
super.clearCaches();
myCachedReferences = null;
}
+ @Override
@NotNull
public PsiReference[] getReferences() {
PsiReference[] cachedReferences = myCachedReferences;
@@ -102,6 +107,7 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
return cachedReferences;
}
+ @Override
public PsiReference getReference() {
final PsiReference[] refs = getReferences();
if (refs.length > 0) return refs[0];
@@ -109,6 +115,7 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
}
+ @Override
public int getTextOffset() {
return getTextRange().getStartOffset() + 1;
}
@@ -118,6 +125,7 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
return getParent() instanceof XmlAttributeImpl;
}
+ @Override
public PsiLanguageInjectionHost updateText(@NotNull String text) {
try {
final String quoteChar = getTextLength() > 0 ? getText().substring(0, 1) : "";
@@ -135,30 +143,37 @@ public class XmlAttributeValueImpl extends XmlElementImpl implements XmlAttribut
return this;
}
+ @Override
@NotNull
public LiteralTextEscaper<XmlAttributeValueImpl> createLiteralTextEscaper() {
return new XmlAttributeLiteralEscaper(this);
}
+ @Override
public PsiMetaData getMetaData() {
return this;
}
+ @Override
public PsiElement getDeclaration() {
return this;
}
+ @Override
public String getName(final PsiElement context) {
return getValue();
}
+ @Override
public String getName() {
return getValue();
}
+ @Override
public void init(final PsiElement element) {
}
+ @Override
public Object[] getDependences() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlCommentImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlCommentImpl.java
index 9b3faa535ecb..eb9f65b66a6f 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlCommentImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlCommentImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,10 +35,12 @@ public class XmlCommentImpl extends XmlElementImpl implements XmlComment, XmlEle
super(XML_COMMENT);
}
+ @Override
public IElementType getTokenType() {
return XML_COMMENT;
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlComment(this);
@@ -53,31 +55,37 @@ public class XmlCommentImpl extends XmlElementImpl implements XmlComment, XmlEle
return true;
}
+ @Override
public XmlTag getParentTag() {
if(getParent() instanceof XmlTag) return (XmlTag)getParent();
return null;
}
+ @Override
public XmlTagChild getNextSiblingInTag() {
if(getParent() instanceof XmlTag) return (XmlTagChild)getNextSibling();
return null;
}
+ @Override
public XmlTagChild getPrevSiblingInTag() {
if(getParent() instanceof XmlTag) return (XmlTagChild)getPrevSibling();
return null;
}
+ @Override
@NotNull
public PsiReference[] getReferences() {
return ReferenceProvidersRegistry.getReferencesFromProviders(this, XmlComment.class);
}
+ @Override
@Nullable
public PsiMetaData getMetaData() {
return MetaRegistry.getMetaBase(this);
}
+ @Override
public PsiLanguageInjectionHost updateText(@NotNull final String text) {
final PsiFile psiFile = getContainingFile();
@@ -93,6 +101,7 @@ public class XmlCommentImpl extends XmlElementImpl implements XmlComment, XmlEle
return this;
}
+ @Override
@NotNull
public LiteralTextEscaper<? extends PsiLanguageInjectionHost> createLiteralTextEscaper() {
return new XmlCommentLiteralEscaper(this);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlConditionalSectionImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlConditionalSectionImpl.java
index 26c0bec1f622..976eb4fb8f0f 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlConditionalSectionImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlConditionalSectionImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ public class XmlConditionalSectionImpl extends XmlElementImpl implements XmlCond
super(XmlElementType.XML_CONDITIONAL_SECTION);
}
+ @Override
public boolean isIncluded(PsiFile targetFile) {
ASTNode child = findChildByType(XmlTokenType.XML_CONDITIONAL_SECTION_START);
@@ -72,6 +73,7 @@ public class XmlConditionalSectionImpl extends XmlElementImpl implements XmlCond
return false;
}
+ @Override
public PsiElement getBodyStart() {
ASTNode child = findChildByType(XmlTokenType.XML_MARKUP_START);
if (child != null) child = child.getTreeNext();
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDeclImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDeclImpl.java
index da165b63c416..2022c144cf37 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDeclImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDeclImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,6 +29,7 @@ public class XmlDeclImpl extends XmlElementImpl implements XmlDecl{
super(XmlElementType.XML_DECL);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlDecl(this);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDoctypeImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDoctypeImpl.java
index 14d07718ba87..b2e5192a4df7 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDoctypeImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDoctypeImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -41,6 +41,7 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
super(XmlElementType.XML_DOCTYPE);
}
+ @Override
public void clearCaches() {
final XmlDocument doc = getContainingDocument();
if (doc != null) {
@@ -64,6 +65,7 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
return null;
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
IElementType i = child.getElementType();
@@ -81,6 +83,7 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
}
}
+ @Override
@Nullable
public String getDtdUri() {
final PsiElement dtdUrlElement = getDtdUrlElement();
@@ -119,6 +122,7 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
return false;
}
+ @Override
@Nullable
public PsiElement getDtdUrlElement() {
PsiElement docTypePublic = findChildByRoleAsPsiElement(XmlChildRole.XML_DOCTYPE_PUBLIC);
@@ -162,15 +166,18 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
return null;
}
+ @Override
public XmlElement getNameElement() {
return (XmlElement)findChildByRoleAsPsiElement(XmlChildRole.XML_NAME);
}
+ @Override
@Nullable
public String getPublicId() {
return getSomeId(XmlChildRole.XML_DOCTYPE_PUBLIC);
}
+ @Override
public String getSystemId() {
return getSomeId(XmlChildRole.XML_DOCTYPE_SYSTEM);
}
@@ -195,6 +202,7 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
return null;
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlDoctype(this);
@@ -204,6 +212,7 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
}
}
+ @Override
public XmlMarkupDecl getMarkupDecl() {
for(PsiElement child = getFirstChild(); child != null; child = child.getNextSibling()){
if (child instanceof XmlMarkupDecl){
@@ -214,6 +223,7 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
return null;
}
+ @Override
@NotNull
public PsiReference[] getReferences() {
final PsiElement dtdUrlElement = getDtdUrlElement();
@@ -230,15 +240,18 @@ public class XmlDoctypeImpl extends XmlElementImpl implements XmlDoctype {
protected PsiReference createUrlReference(final PsiElement dtdUrlElement) {
return new URLReference(XmlDoctypeImpl.this) {
+ @Override
@NotNull
public Object[] getVariants() {
return findChildByRoleAsPsiElement(XmlChildRole.XML_DOCTYPE_PUBLIC) != null ?
super.getVariants(): EMPTY_ARRAY;
}
+ @Override
@NotNull
public String getCanonicalText() {
return extractValue(dtdUrlElement);
}
+ @Override
public TextRange getRangeInElement() {
return TextRange.from(dtdUrlElement.getTextRange().getStartOffset() - getTextRange().getStartOffset() + 1, Math.max(dtdUrlElement.getTextRange().getLength() - 2, 0));
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDocumentImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDocumentImpl.java
index 29d212496148..c86139c4bbcd 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDocumentImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlDocumentImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -82,6 +82,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
super(type);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlDocument(this);
@@ -91,6 +92,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
}
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
IElementType i = child.getElementType();
@@ -105,6 +107,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
}
}
+ @Override
public XmlProlog getProlog() {
XmlProlog prolog = myProlog;
@@ -121,6 +124,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
return myProlog;
}
+ @Override
public XmlTag getRootTag() {
XmlTag rootTag = myRootTag;
@@ -137,6 +141,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
return myRootTag;
}
+ @Override
@SuppressWarnings("ConstantConditions")
public XmlNSDescriptor getRootTagNSDescriptor() {
XmlTag rootTag = getRootTag();
@@ -146,6 +151,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
private ConcurrentHashMap<String, CachedValue<XmlNSDescriptor>> myDefaultDescriptorsCacheStrict = new ConcurrentHashMap<String, CachedValue<XmlNSDescriptor>>();
private ConcurrentHashMap<String, CachedValue<XmlNSDescriptor>> myDefaultDescriptorsCacheNotStrict = new ConcurrentHashMap<String, CachedValue<XmlNSDescriptor>>();
+ @Override
public void clearCaches() {
myDefaultDescriptorsCacheStrict.clear();
myDefaultDescriptorsCacheNotStrict.clear();
@@ -154,6 +160,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
super.clearCaches();
}
+ @Override
public XmlNSDescriptor getDefaultNSDescriptor(final String namespace, final boolean strict) {
long curExtResourcesModCount = ExternalResourceManagerEx.getInstanceEx().getModificationCount(getProject());
if (myExtResourcesModCount != curExtResourcesModCount) {
@@ -173,6 +180,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
CachedValue<XmlNSDescriptor> cachedValue = defaultDescriptorsCache.get(namespace);
if (cachedValue == null) {
defaultDescriptorsCache.put(namespace, cachedValue = new PsiCachedValueImpl<XmlNSDescriptor>(getManager(), new CachedValueProvider<XmlNSDescriptor>() {
+ @Override
public Result<XmlNSDescriptor> compute() {
final XmlNSDescriptor defaultNSDescriptorInner = getDefaultNSDescriptorInner(namespace, strict);
@@ -339,6 +347,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
return descriptor;
}
+ @Override
public CompositePsiElement clone() {
HashMap<String, CachedValue<XmlNSDescriptor>> cacheStrict = new HashMap<String, CachedValue<XmlNSDescriptor>>(
myDefaultDescriptorsCacheStrict
@@ -351,6 +360,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
return copy;
}
+ @Override
public PsiElement copy() {
HashMap<String, CachedValue<XmlNSDescriptor>> cacheStrict = new HashMap<String, CachedValue<XmlNSDescriptor>>(
myDefaultDescriptorsCacheStrict
@@ -383,6 +393,7 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
}
}
+ @Override
public PsiMetaData getMetaData() {
return MetaRegistry.getMeta(this);
}
@@ -418,12 +429,14 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
}
}
+ @Override
public TreeElement addInternal(final TreeElement first, final ASTNode last, final ASTNode anchor, final Boolean before) {
final PomModel model = PomManager.getModel(getProject());
final XmlAspect aspect = model.getModelAspect(XmlAspect.class);
final TreeElement[] holder = new TreeElement[1];
try{
model.runTransaction(new PomTransactionBase(this, aspect) {
+ @Override
public PomModelEvent runInner() {
holder[0] = XmlDocumentImpl.super.addInternal(first, last, anchor, before);
return XmlDocumentChangedImpl.createXmlDocumentChanged(model, XmlDocumentImpl.this);
@@ -434,11 +447,13 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
return holder[0];
}
+ @Override
public void deleteChildInternal(@NotNull final ASTNode child) {
final PomModel model = PomManager.getModel(getProject());
final XmlAspect aspect = model.getModelAspect(XmlAspect.class);
try{
model.runTransaction(new PomTransactionBase(this, aspect) {
+ @Override
public PomModelEvent runInner() {
XmlDocumentImpl.super.deleteChildInternal(child);
return XmlDocumentChangedImpl.createXmlDocumentChanged(model, XmlDocumentImpl.this);
@@ -448,11 +463,13 @@ public class XmlDocumentImpl extends XmlElementImpl implements XmlDocument {
catch(IncorrectOperationException ignored){}
}
+ @Override
public void replaceChildInternal(@NotNull final ASTNode child, @NotNull final TreeElement newElement) {
final PomModel model = PomManager.getModel(getProject());
final XmlAspect aspect = model.getModelAspect(XmlAspect.class);
try{
model.runTransaction(new PomTransactionBase(this, aspect) {
+ @Override
public PomModelEvent runInner() {
XmlDocumentImpl.super.replaceChildInternal(child, newElement);
return XmlDocumentChangedImpl.createXmlDocumentChanged(model, XmlDocumentImpl.this);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementContentSpecImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementContentSpecImpl.java
index c060c4327df7..6b041acd1d7e 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementContentSpecImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementContentSpecImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@ public class XmlElementContentSpecImpl extends XmlElementImpl implements XmlElem
super(XML_ELEMENT_CONTENT_SPEC);
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
IElementType i = child.getElementType();
@@ -56,19 +57,23 @@ public class XmlElementContentSpecImpl extends XmlElementImpl implements XmlElem
}
}
+ @Override
public boolean isEmpty() {
return findElementByTokenType(XML_CONTENT_EMPTY) != null;
}
+ @Override
public boolean isAny() {
return findElementByTokenType(XML_CONTENT_ANY) != null;
}
+ @Override
public boolean isMixed() {
XmlElementContentGroup topGroup = getTopGroup();
return topGroup != null && ((XmlElementImpl)topGroup).findElementByTokenType(XML_PCDATA) != null;
}
+ @Override
public boolean hasChildren() {
return !(isEmpty() || isAny() || isMixed());
}
@@ -78,11 +83,13 @@ public class XmlElementContentSpecImpl extends XmlElementImpl implements XmlElem
return (XmlElementContentGroup)findElementByTokenType(XML_ELEMENT_CONTENT_GROUP);
}
+ @Override
@NotNull
public PsiReference[] getReferences() {
return ReferenceProvidersRegistry.getReferencesFromProviders(this,XmlElementContentSpec.class);
}
+ @Override
public void accept(@NotNull final PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlElement(this);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementDeclImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementDeclImpl.java
index c45e6492f6c5..39e9d622b64c 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementDeclImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementDeclImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -41,6 +41,7 @@ public class XmlElementDeclImpl extends XmlElementImpl implements XmlElementDecl
super(XML_ELEMENT_DECL);
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
IElementType i = child.getElementType();
@@ -55,34 +56,41 @@ public class XmlElementDeclImpl extends XmlElementImpl implements XmlElementDecl
}
}
+ @Override
public int getTextOffset() {
final XmlElement name = getNameElement();
return name != null ? name.getTextOffset() : super.getTextOffset();
}
+ @Override
public XmlElement getNameElement() {
return (XmlElement)findChildByRoleAsPsiElement(XmlChildRole.XML_NAME);
}
+ @Override
public XmlElementContentSpec getContentSpecElement() {
return (XmlElementContentSpec)findChildByRoleAsPsiElement(XmlChildRole.XML_ELEMENT_CONTENT_SPEC);
}
+ @Override
public PsiMetaData getMetaData() {
return MetaRegistry.getMeta(this);
}
+ @Override
public PsiElement setName(@NotNull String name) throws IncorrectOperationException {
XmlElementChangeUtil.doNameReplacement(this, getNameElement(), name);
return null;
}
+ @Override
@NotNull
public PsiReference[] getReferences() {
return ReferenceProvidersRegistry.getReferencesFromProviders(this,XmlElementDecl.class);
}
+ @Override
public PsiElement getOriginalElement() {
if (isPhysical()) return super.getOriginalElement();
@@ -95,6 +103,7 @@ public class XmlElementDeclImpl extends XmlElementImpl implements XmlElementDecl
return this;
}
+ @Override
public boolean canNavigate() {
if (!isPhysical()) {
return getOriginalElement() != this;
@@ -103,6 +112,7 @@ public class XmlElementDeclImpl extends XmlElementImpl implements XmlElementDecl
return super.canNavigate();
}
+ @Override
public void navigate(boolean requestFocus) {
if (!isPhysical()) {
PsiElement element = getOriginalElement();
@@ -116,6 +126,7 @@ public class XmlElementDeclImpl extends XmlElementImpl implements XmlElementDecl
super.navigate(requestFocus);
}
+ @Override
public String getName() {
XmlElement xmlElement = getNameElement();
if (xmlElement != null) return xmlElement.getText();
@@ -134,10 +145,12 @@ public class XmlElementDeclImpl extends XmlElementImpl implements XmlElementDecl
return element1 == element2;
}
+ @Override
public PsiElement getNameIdentifier() {
return null;
}
+ @Override
@NotNull
public PsiElement getNavigationElement() {
return this;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementImpl.java
index e0ec1ad033c6..ec5f1d903b37 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlElementImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -47,6 +47,7 @@ public abstract class XmlElementImpl extends CompositePsiElement implements XmlE
super(type);
}
+ @Override
public boolean processElements(PsiElementProcessor processor, PsiElement place){
return XmlPsiUtil.processXmlElements(this, processor, false);
}
@@ -60,6 +61,7 @@ public abstract class XmlElementImpl extends CompositePsiElement implements XmlE
result[0] = null;
processElements(new PsiElementProcessor(){
+ @Override
public boolean execute(@NotNull PsiElement element){
if(element instanceof TreeElement && ((ASTNode)element).getElementType() == type){
result[0] = (XmlElement)element;
@@ -72,6 +74,7 @@ public abstract class XmlElementImpl extends CompositePsiElement implements XmlE
return result[0];
}
+ @Override
public PsiElement getContext() {
final XmlElement data = getUserData(INCLUDING_ELEMENT);
if(data != null) return data;
@@ -82,6 +85,7 @@ public abstract class XmlElementImpl extends CompositePsiElement implements XmlE
return super.getParent();
}
+ @Override
@NotNull
public PsiElement getNavigationElement() {
if (!isPhysical()) {
@@ -97,10 +101,12 @@ public abstract class XmlElementImpl extends CompositePsiElement implements XmlE
return super.getNavigationElement();
}
+ @Override
public PsiElement getParent(){
return getContext();
}
+ @Override
@NotNull
public Language getLanguage() {
return getContainingFile().getLanguage();
@@ -120,6 +126,7 @@ public abstract class XmlElementImpl extends CompositePsiElement implements XmlE
final StringBuilder builder = new StringBuilder();
((XmlElement)name.getPsi()).processElements(new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
builder.append(element.getText());
return true;
@@ -130,6 +137,7 @@ public abstract class XmlElementImpl extends CompositePsiElement implements XmlE
return null;
}
+ @Override
@NotNull
public SearchScope getUseScope() {
return GlobalSearchScope.allScope(getProject());
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityCache.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityCache.java
index 8f91c22899a1..8b3052d0400d 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityCache.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityCache.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.psi.impl.source.xml;
import com.intellij.openapi.util.Key;
@@ -23,6 +38,7 @@ public class XmlEntityCache {
cachingMap.put(
name, CachedValuesManager.getManager(file.getProject()).createCachedValue(new CachedValueProvider<XmlEntityDecl>() {
+ @Override
public Result<XmlEntityDecl> compute() {
PsiElement declElement = declPointer.getElement();
if (declElement instanceof XmlEntityDecl && declElement.isValid() && name.equals(((XmlEntityDecl)declElement).getName()))
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityDeclImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityDeclImpl.java
index deff9ba1f680..1eb615fb58fd 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityDeclImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityDeclImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@ public class XmlEntityDeclImpl extends XmlElementImpl implements XmlEntityDecl,
super(XML_ENTITY_DECL);
}
+ @Override
public PsiElement getNameElement() {
for (ASTNode e = getFirstChildNode(); e != null; e = e.getTreeNext()) {
if (e instanceof XmlTokenImpl) {
@@ -51,6 +52,7 @@ public class XmlEntityDeclImpl extends XmlElementImpl implements XmlEntityDecl,
return null;
}
+ @Override
public XmlAttributeValue getValueElement() {
if (isInternalReference()) {
for (ASTNode e = getFirstChildNode(); e != null; e = e.getTreeNext()) {
@@ -70,11 +72,13 @@ public class XmlEntityDeclImpl extends XmlElementImpl implements XmlEntityDecl,
return null;
}
+ @Override
public String getName() {
PsiElement nameElement = getNameElement();
return nameElement != null ? nameElement.getText() : "";
}
+ @Override
public PsiElement setName(@NotNull String name) throws IncorrectOperationException {
final PsiElement nameElement = getNameElement();
@@ -88,6 +92,7 @@ public class XmlEntityDeclImpl extends XmlElementImpl implements XmlEntityDecl,
return null;
}
+ @Override
public PsiElement parse(PsiFile baseFile, EntityContextType contextType, final XmlEntityRef originalElement) {
PsiElement dep = XmlElement.DEPENDING_ELEMENT.get(getParent());
PsiElement dependsOnElement = getValueElement(dep instanceof PsiFile ? (PsiFile)dep : baseFile);
@@ -153,6 +158,7 @@ public class XmlEntityDeclImpl extends XmlElementImpl implements XmlEntityDecl,
return null;
}
+ @Override
public boolean isInternalReference() {
for (ASTNode e = getFirstChildNode(); e != null; e = e.getTreeNext()) {
if (e.getElementType() instanceof IXmlLeafElementType) {
@@ -167,22 +173,26 @@ public class XmlEntityDeclImpl extends XmlElementImpl implements XmlEntityDecl,
return true;
}
+ @Override
@NotNull
public PsiElement getNavigationElement() {
return getNameElement();
}
+ @Override
public int getTextOffset() {
final PsiElement name = getNameElement();
return name != null ? name.getTextOffset() : super.getTextOffset();
}
+ @Override
public boolean canNavigate() {
if (isPhysical()) return super.canNavigate();
final PsiNamedElement psiNamedElement = XmlUtil.findRealNamedElement(this);
return psiNamedElement != null;
}
+ @Override
public void navigate(final boolean requestFocus) {
if (!isPhysical()) {
((Navigatable)XmlUtil.findRealNamedElement(this)).navigate(requestFocus);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityRefImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityRefImpl.java
index 8bd39976fe44..b74834a28162 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityRefImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEntityRefImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -51,6 +51,7 @@ public class XmlEntityRefImpl extends XmlElementImpl implements XmlEntityRef {
private static final Key<String> EVALUATION_IN_PROCESS = Key.create("EvalKey");
+ @Override
public XmlEntityDecl resolve(PsiFile targetFile) {
String text = getText();
if (text.equals(GT_ENTITY) || text.equals(QUOT_ENTITY)) return null;
@@ -79,6 +80,7 @@ public class XmlEntityRefImpl extends XmlElementImpl implements XmlEntityRef {
return resolveEntity(targetElement, entityName, containingFile).getValue();
}
value = CachedValuesManager.getManager(manager.getProject()).createCachedValue(new CachedValueProvider<XmlEntityDecl>() {
+ @Override
public Result<XmlEntityDecl> compute() {
return resolveEntity(targetElement, entityName, containingFile);
}
@@ -103,6 +105,7 @@ public class XmlEntityRefImpl extends XmlElementImpl implements XmlEntityRef {
final XmlEntityDecl[] result = {null};
PsiElementProcessor processor = new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull PsiElement element) {
if (element instanceof XmlDoctype) {
XmlDoctype xmlDoctype = (XmlDoctype)element;
@@ -187,29 +190,34 @@ public class XmlEntityRefImpl extends XmlElementImpl implements XmlEntityRef {
return HtmlUtil.isHtml5Doctype(xmlDoctype) ? Html5SchemaProvider.getCharsDtdLocation() : XmlUtil.getDtdUri(xmlDoctype);
}
+ @Override
public XmlTag getParentTag() {
final XmlElement parent = (XmlElement)getParent();
if(parent instanceof XmlTag) return (XmlTag)parent;
return null;
}
+ @Override
public XmlTagChild getNextSiblingInTag() {
PsiElement nextSibling = getNextSibling();
if(nextSibling instanceof XmlTagChild) return (XmlTagChild)nextSibling;
return null;
}
+ @Override
public XmlTagChild getPrevSiblingInTag() {
final PsiElement prevSibling = getPrevSibling();
if(prevSibling instanceof XmlTagChild) return (XmlTagChild)prevSibling;
return null;
}
+ @Override
@NotNull
public PsiReference[] getReferences() {
return ReferenceProvidersRegistry.getReferencesFromProviders(this,XmlEntityRef.class);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlElement(this);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEnumeratedTypeImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEnumeratedTypeImpl.java
index 2390f7fc3157..6cdd06855584 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEnumeratedTypeImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlEnumeratedTypeImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ public class XmlEnumeratedTypeImpl extends XmlElementImpl implements XmlEnumerat
super(XML_ENUMERATED_TYPE);
}
+ @Override
public XmlElement[] getEnumeratedValues() {
final List<XmlElement> result = new ArrayList<XmlElement>();
processElements(new FilterElementProcessor(new XmlTokenTypeFilter(XmlTokenType.XML_NAME), result), this);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlMarkupDeclImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlMarkupDeclImpl.java
index a022992fa34d..a490a5516d9e 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlMarkupDeclImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlMarkupDeclImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ public class XmlMarkupDeclImpl extends XmlElementImpl implements XmlMarkupDecl {
super(XmlElementType.XML_MARKUP_DECL);
}
+ @Override
public PsiMetaData getMetaData(){
return MetaRegistry.getMeta(this);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlNotationDeclImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlNotationDeclImpl.java
index e7e07a27b0f3..3a52fe8a804d 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlNotationDeclImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlNotationDeclImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,6 +30,7 @@ public class XmlNotationDeclImpl extends XmlElementImpl implements XmlNotationDe
super(XML_NOTATION_DECL);
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
if (child.getElementType() == XML_ELEMENT_CONTENT_SPEC) {
@@ -40,10 +41,12 @@ public class XmlNotationDeclImpl extends XmlElementImpl implements XmlNotationDe
}
}
+ @Override
public XmlElement getNameElement() {
return (XmlElement)findChildByRoleAsPsiElement(XmlChildRole.XML_NAME);
}
+ @Override
public XmlElementContentSpec getContentSpecElement() {
return (XmlElementContentSpec)findChildByRoleAsPsiElement(XmlChildRole.XML_ELEMENT_CONTENT_SPEC);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlProcessingInstructionImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlProcessingInstructionImpl.java
index 92891154ff30..d0d67bf490cb 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlProcessingInstructionImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlProcessingInstructionImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,7 @@ public class XmlProcessingInstructionImpl extends XmlElementImpl implements XmlP
super(XmlElementType.XML_PROCESSING_INSTRUCTION);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlProcessingInstruction(this);
@@ -46,18 +47,21 @@ public class XmlProcessingInstructionImpl extends XmlElementImpl implements XmlP
}
}
+ @Override
public XmlTag getParentTag() {
final PsiElement parent = getParent();
if(parent instanceof XmlTag) return (XmlTag)parent;
return null;
}
+ @Override
public XmlTagChild getNextSiblingInTag() {
PsiElement nextSibling = getNextSibling();
if(nextSibling instanceof XmlTagChild) return (XmlTagChild)nextSibling;
return null;
}
+ @Override
public XmlTagChild getPrevSiblingInTag() {
final PsiElement prevSibling = getPrevSibling();
if(prevSibling instanceof XmlTagChild) return (XmlTagChild)prevSibling;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlPrologImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlPrologImpl.java
index 88b534951634..ee78a746f249 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlPrologImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlPrologImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,6 +36,7 @@ public class XmlPrologImpl extends XmlElementImpl implements XmlProlog, XmlEleme
super(XML_PROLOG);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlProlog(this);
@@ -45,6 +46,7 @@ public class XmlPrologImpl extends XmlElementImpl implements XmlProlog, XmlEleme
}
}
+ @Override
public int getChildRole(ASTNode child) {
LOG.assertTrue(child.getTreeParent() == this);
if (child.getElementType() == XML_DOCTYPE) {
@@ -55,6 +57,7 @@ public class XmlPrologImpl extends XmlElementImpl implements XmlProlog, XmlEleme
}
}
+ @Override
public XmlDoctype getDoctype() {
return (XmlDoctype)findChildByRoleAsPsiElement(XmlChildRole.XML_DOCTYPE);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTagValueImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTagValueImpl.java
index ddbd368cc1df..dbfb181a5881 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTagValueImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTagValueImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -45,11 +45,13 @@ public class XmlTagValueImpl implements XmlTagValue{
myElements = bodyElements;
}
+ @Override
@NotNull
public XmlTagChild[] getChildren() {
return myElements;
}
+ @Override
@NotNull
public XmlText[] getTextElements() {
XmlText[] textElements = myTextElements;
@@ -61,6 +63,7 @@ public class XmlTagValueImpl implements XmlTagValue{
return myTextElements = textElementsList.isEmpty() ? XmlText.EMPTY_ARRAY : ContainerUtil.toArray(textElementsList, new XmlText[textElementsList.size()]);
}
+ @Override
@NotNull
public String getText() {
String text = myText;
@@ -72,6 +75,7 @@ public class XmlTagValueImpl implements XmlTagValue{
return myText = consolidatedText.toString();
}
+ @Override
@NotNull
public TextRange getTextRange() {
if(myElements.length == 0){
@@ -83,6 +87,7 @@ public class XmlTagValueImpl implements XmlTagValue{
return new TextRange(myElements[0].getTextRange().getStartOffset(), myElements[myElements.length - 1].getTextRange().getEndOffset());
}
+ @Override
@NotNull
public String getTrimmedText() {
String trimmedText = myTrimmedText;
@@ -159,6 +164,7 @@ public class XmlTagValueImpl implements XmlTagValue{
tag.processElements(new PsiElementProcessor() {
boolean insideBody = false;
+ @Override
public boolean execute(@NotNull PsiElement element) {
final ASTNode treeElement = element.getNode();
if (insideBody) {
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java
index c640e27f1ce8..9a8b11a88c2d 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -67,6 +67,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
return true;
}
+ @Override
@Nullable
public XmlText split(int displayIndex) {
try {
@@ -77,6 +78,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
}
}
+ @Override
public String getValue() {
String displayText = myDisplayText;
if (displayText != null) return displayText;
@@ -133,6 +135,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
return text;
}
+ @Override
public int physicalToDisplay(int physicalIndex) {
getValue();
if (myGapPhysicalStarts.length == 0) return physicalIndex;
@@ -157,6 +160,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
return physicalIndex - prevPhysGapStart + prevDisplayGapStart;
}
+ @Override
public int displayToPhysical(int displayIndex) {
getValue();
if (myGapDisplayStarts.length == 0) return displayIndex;
@@ -170,6 +174,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
return displayIndex - prevDisplayGapStart + prevPhysGapStart;
}
+ @Override
public void setValue(String s) throws IncorrectOperationException {
doSetValue(s, getPolicy());
}
@@ -178,6 +183,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
final PomModel model = PomManager.getModel(getProject());
final XmlAspect aspect = model.getModelAspect(XmlAspect.class);
model.runTransaction(new PomTransactionBase(this, aspect) {
+ @Override
public PomModelEvent runInner() {
final String oldText = getText();
final ASTNode firstEncodedElement = policy.encodeXmlTextContents(s, XmlTextImpl.this);
@@ -192,6 +198,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
});
}
+ @Override
public XmlElement insertAtOffset(final XmlElement element, final int displayOffset) throws IncorrectOperationException {
if (element instanceof XmlText) {
insertText(((XmlText)element).getValue(), displayOffset);
@@ -200,6 +207,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
final PomModel model = PomManager.getModel(getProject());
final XmlAspect aspect = model.getModelAspect(XmlAspect.class);
model.runTransaction(new PomTransactionBase(getParent(), aspect) {
+ @Override
public PomModelEvent runInner() throws IncorrectOperationException {
final XmlTag tag = getParentTag();
assert tag != null;
@@ -224,6 +232,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
return LanguageXmlPsiPolicy.INSTANCE.forLanguage(getLanguage());
}
+ @Override
public void insertText(String text, int displayOffset) throws IncorrectOperationException {
if (text == null || text.isEmpty()) return;
@@ -241,6 +250,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
final PomModel model = PomManager.getModel(getProject());
final XmlAspect aspect = model.getModelAspect(XmlAspect.class);
model.runTransaction(new PomTransactionBase(this, aspect) {
+ @Override
public PomModelEvent runInner() {
final String oldText = getText();
@@ -265,6 +275,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
}
}
+ @Override
public void removeText(int displayStart, int displayEnd) throws IncorrectOperationException {
final String value = getValue();
@@ -291,6 +302,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
final PomModel model = PomManager.getModel(getProject());
final XmlAspect aspect = model.getModelAspect(XmlAspect.class);
model.runTransaction(new PomTransactionBase(this, aspect) {
+ @Override
public PomModelEvent runInner() throws IncorrectOperationException {
final String oldText = getText();
@@ -321,28 +333,33 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
}
}
+ @Override
public XmlTag getParentTag() {
final PsiElement parent = getParent();
if (parent instanceof XmlTag) return (XmlTag)parent;
return null;
}
+ @Override
public XmlTagChild getNextSiblingInTag() {
PsiElement nextSibling = getNextSibling();
if (nextSibling instanceof XmlTagChild) return (XmlTagChild)nextSibling;
return null;
}
+ @Override
public XmlTagChild getPrevSiblingInTag() {
PsiElement prevSibling = getPrevSibling();
if (prevSibling instanceof XmlTagChild) return (XmlTagChild)prevSibling;
return null;
}
+ @Override
public TreeElement addInternal(TreeElement first, ASTNode last, ASTNode anchor, Boolean before) {
throw new RuntimeException("Clients must not use operations with direct children of XmlText!");
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof XmlElementVisitor) {
((XmlElementVisitor)visitor).visitXmlText(this);
@@ -352,6 +369,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
}
}
+ @Override
public void clearCaches() {
super.clearCaches();
myDisplayText = null;
@@ -387,6 +405,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
return new TextRange(start, end);
}
+ @Override
public PsiLanguageInjectionHost updateText(@NotNull final String text) {
try {
doSetValue(text, new DefaultXmlPsiPolicy());
@@ -416,6 +435,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
super(xmlTag, aspect);
}
+ @Override
@Nullable
public PomModelEvent runInner() throws IncorrectOperationException {
final String oldText = getValue();
@@ -506,6 +526,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI
return event;
}
+ @Override
@NotNull
public LiteralTextEscaper<XmlTextImpl> createLiteralTextEscaper() {
return new XmlTextLiteralEscaper(this);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/CDATAOnAnyEncodedPolicy.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/CDATAOnAnyEncodedPolicy.java
index 69f8c40c3ff5..b3425e80501d 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/CDATAOnAnyEncodedPolicy.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/CDATAOnAnyEncodedPolicy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,6 +30,7 @@ import com.intellij.util.CharTable;
import com.intellij.xml.util.XmlUtil;
public class CDATAOnAnyEncodedPolicy extends DefaultXmlPsiPolicy{
+ @Override
public ASTNode encodeXmlTextContents(String displayText, PsiElement text) {
final ASTNode firstChild = text.getNode().getFirstChildNode();
boolean textAlreadyHasCDATA = firstChild != null && firstChild.getElementType() == XmlElementType.XML_CDATA;
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/DefaultXmlPsiPolicy.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/DefaultXmlPsiPolicy.java
index a5bfb195dab7..23f0cf1988bf 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/DefaultXmlPsiPolicy.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/DefaultXmlPsiPolicy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -34,6 +34,7 @@ import com.intellij.util.CharTable;
public class DefaultXmlPsiPolicy implements XmlPsiPolicy{
private static final Logger LOG = Logger.getInstance("#com.intellij.psi.impl.source.xml.behavior.DefaultXmlPsiPolicy");
+ @Override
public ASTNode encodeXmlTextContents(String displayText, PsiElement text) {
final PsiFile containingFile = text.getContainingFile();
CharTable charTable = SharedImplUtil.findCharTableByTree(text.getNode());
diff --git a/xml/impl/src/com/intellij/psi/impl/source/xml/behavior/EncodeEachSymbolPolicy.java b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/EncodeEachSymbolPolicy.java
index 64e9b28e39a7..8b782610d415 100644
--- a/xml/impl/src/com/intellij/psi/impl/source/xml/behavior/EncodeEachSymbolPolicy.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/impl/source/xml/behavior/EncodeEachSymbolPolicy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@ import com.intellij.psi.PsiElement;
import com.intellij.util.CharTable;
public class EncodeEachSymbolPolicy extends DefaultXmlPsiPolicy{
+ @Override
public ASTNode encodeXmlTextContents(String displayText, PsiElement text) {
if(!toCode(displayText)) return super.encodeXmlTextContents(displayText, text);
final FileElement dummyParent = DummyHolderFactory.createHolder(text.getManager(), null, SharedImplUtil.findCharTableByTree(text.getNode())).getTreeElement();
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlChildRole.java b/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlChildRole.java
index 02cb1fe03b5a..4a4f66cf1dd2 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlChildRole.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlChildRole.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ import org.jetbrains.annotations.Nullable;
public interface XmlChildRole {
RoleFinder START_TAG_NAME_FINDER = new RoleFinder() {
+ @Override
public ASTNode findChild(@NotNull ASTNode parent) {
final PsiElement element = XmlTagUtil.getStartTagNameElement((XmlTag)parent.getPsi());
return element == null ? null : element.getNode();
@@ -35,6 +36,7 @@ public interface XmlChildRole {
};
RoleFinder CLOSING_TAG_NAME_FINDER = new RoleFinder() {
+ @Override
@Nullable
public ASTNode findChild(@NotNull ASTNode parent) {
final PsiElement element = XmlTagUtil.getEndTagNameElement((XmlTag)parent.getPsi());
@@ -43,6 +45,7 @@ public interface XmlChildRole {
};
RoleFinder DOCUMENT_FINDER = new RoleFinder() {
+ @Override
public ASTNode findChild(@NotNull ASTNode parent) {
ASTNode oldDocument = parent.findChildByType(XmlElementType.XML_DOCUMENT);
if(oldDocument == null) oldDocument = parent.findChildByType(XmlElementType.HTML_DOCUMENT);
diff --git a/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlElementType.java b/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlElementType.java
index 6e3d2db4f393..04f5d67d3694 100644
--- a/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlElementType.java
+++ b/xml/xml-psi-impl/src/com/intellij/psi/xml/XmlElementType.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -67,6 +67,7 @@ public interface XmlElementType extends XmlTokenType {
IFileElementType DTD_FILE = new IFileElementType("DTD_FILE", DTDLanguage.INSTANCE);
IElementType XML_MARKUP_DECL = new CustomParsingType("XML_MARKUP_DECL", XMLLanguage.INSTANCE){
+ @Override
public ASTNode parse(CharSequence text, CharTable table) {
return new DtdParsing(text, XML_MARKUP_DECL, DtdParsing.TYPE_FOR_MARKUP_DECL, null).parse();
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/DefaultXmlExtension.java b/xml/xml-psi-impl/src/com/intellij/xml/DefaultXmlExtension.java
index 2a29eea055f2..de06f8cef03b 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/DefaultXmlExtension.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/DefaultXmlExtension.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,10 +37,12 @@ import java.util.*;
*/
public class DefaultXmlExtension extends XmlExtension {
+ @Override
public boolean isAvailable(final PsiFile file) {
return true;
}
+ @Override
@NotNull
public List<TagInfo> getAvailableTagNames(@NotNull final XmlFile file, @NotNull final XmlTag context) {
@@ -110,6 +112,7 @@ public class DefaultXmlExtension extends XmlExtension {
return false;
}
+ @Override
public SchemaPrefix getPrefixDeclaration(final XmlTag context, String namespacePrefix) {
@NonNls String nsDeclarationAttrName = null;
for(XmlTag t = context; t != null; t = t.getParentTag()) {
diff --git a/xml/impl/src/com/intellij/xml/XmlChangeLocalityDetector.java b/xml/xml-psi-impl/src/com/intellij/xml/XmlChangeLocalityDetector.java
index fb65aa55965d..db3bba7f1ed1 100644
--- a/xml/impl/src/com/intellij/xml/XmlChangeLocalityDetector.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/XmlChangeLocalityDetector.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/XmlCoreEnvironment.java b/xml/xml-psi-impl/src/com/intellij/xml/XmlCoreEnvironment.java
index 5ae81dd96174..b7704fb3b981 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/XmlCoreEnvironment.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/XmlCoreEnvironment.java
@@ -1,5 +1,24 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml;
+import com.intellij.application.options.PathMacrosImpl;
+import com.intellij.application.options.editor.XmlFoldingSettings;
+import com.intellij.codeInsight.highlighting.ReadWriteAccessDetector;
+import com.intellij.codeInsight.highlighting.XmlReadWriteAccessDetector;
import com.intellij.codeInspection.XmlSuppressionProvider;
import com.intellij.core.CoreApplicationEnvironment;
import com.intellij.core.CoreProjectEnvironment;
@@ -8,37 +27,47 @@ import com.intellij.ide.highlighter.HtmlFileType;
import com.intellij.ide.highlighter.XHtmlFileType;
import com.intellij.ide.highlighter.XmlFileType;
import com.intellij.javaee.*;
+import com.intellij.lang.Language;
import com.intellij.lang.LanguageASTFactory;
import com.intellij.lang.LanguageParserDefinitions;
import com.intellij.lang.dtd.DTDLanguage;
import com.intellij.lang.dtd.DTDParserDefinition;
import com.intellij.lang.dtd.DtdSyntaxHighlighterFactory;
+import com.intellij.lang.findUsages.LanguageFindUsages;
+import com.intellij.lang.folding.LanguageFolding;
import com.intellij.lang.html.HTMLLanguage;
import com.intellij.lang.html.HTMLParserDefinition;
import com.intellij.lang.html.HtmlSyntaxHighlighterFactory;
import com.intellij.lang.xhtml.XHTMLLanguage;
import com.intellij.lang.xhtml.XHTMLParserDefinition;
import com.intellij.lang.xhtml.XhtmlSyntaxHighlighterFactory;
-import com.intellij.lang.xml.XMLLanguage;
-import com.intellij.lang.xml.XMLParserDefinition;
-import com.intellij.lang.xml.XmlASTFactory;
-import com.intellij.lang.xml.XmlSyntaxHighlighterFactory;
+import com.intellij.lang.xml.*;
import com.intellij.lexer.HtmlEmbeddedTokenTypesProvider;
+import com.intellij.openapi.application.PathMacros;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.openapi.fileTypes.SyntaxHighlighterFactory;
+import com.intellij.psi.XmlElementFactory;
+import com.intellij.psi.XmlElementFactoryImpl;
import com.intellij.psi.impl.cache.impl.id.IdIndexers;
+import com.intellij.psi.impl.cache.impl.idCache.XHtmlTodoIndexer;
import com.intellij.psi.impl.cache.impl.idCache.XmlIdIndexer;
+import com.intellij.psi.impl.cache.impl.idCache.XmlTodoIndexer;
+import com.intellij.psi.impl.cache.impl.todo.TodoIndexers;
import com.intellij.psi.impl.source.xml.XmlElementDescriptorProvider;
import com.intellij.psi.meta.MetaDataContributor;
import com.intellij.psi.xml.StartTagEndTokenProvider;
import com.intellij.psi.xml.XmlFileNSInfoProvider;
import com.intellij.util.indexing.FileBasedIndexExtension;
+import com.intellij.xml.index.SchemaTypeInheritanceIndex;
import com.intellij.xml.index.XmlNamespaceIndex;
+import com.intellij.xml.index.XmlTagNamesIndex;
+import com.intellij.xml.util.HtmlFileNSInfoProvider;
import com.intellij.xml.util.XmlApplicationComponent;
/**
* @author yole
*/
+@SuppressWarnings("UnusedDeclaration") //upsource
public class XmlCoreEnvironment {
public static class ApplicationEnvironment {
public ApplicationEnvironment(CoreApplicationEnvironment appEnvironment) {
@@ -58,18 +87,21 @@ public class XmlCoreEnvironment {
appEnvironment.addExplicitExtension(LanguageParserDefinitions.INSTANCE, HTMLLanguage.INSTANCE, new HTMLParserDefinition());
appEnvironment.addExplicitExtension(LanguageParserDefinitions.INSTANCE, XHTMLLanguage.INSTANCE, new XHTMLParserDefinition());
- XmlASTFactory astFactory = new XmlASTFactory();
- appEnvironment.addExplicitExtension(LanguageASTFactory.INSTANCE, XMLLanguage.INSTANCE, astFactory);
- appEnvironment.addExplicitExtension(LanguageASTFactory.INSTANCE, HTMLLanguage.INSTANCE, astFactory);
- appEnvironment.addExplicitExtension(LanguageASTFactory.INSTANCE, XHTMLLanguage.INSTANCE, astFactory);
- appEnvironment.addExplicitExtension(LanguageASTFactory.INSTANCE, DTDLanguage.INSTANCE, astFactory);
-
appEnvironment.addExplicitExtension(IdIndexers.INSTANCE, XmlFileType.INSTANCE, new XmlIdIndexer());
appEnvironment.addExplicitExtension(IdIndexers.INSTANCE, DTDFileType.INSTANCE, new XmlIdIndexer());
+ appEnvironment.addExplicitExtension(TodoIndexers.INSTANCE, XmlFileType.INSTANCE, new XmlTodoIndexer());
+ appEnvironment.addExplicitExtension(TodoIndexers.INSTANCE, DTDFileType.INSTANCE, new XmlTodoIndexer());
+ appEnvironment.addExplicitExtension(TodoIndexers.INSTANCE, XHtmlFileType.INSTANCE, new XHtmlTodoIndexer());
+
+ CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ReadWriteAccessDetector.EP_NAME,
+ ReadWriteAccessDetector.class);
+ appEnvironment.addExtension(ReadWriteAccessDetector.EP_NAME, new XmlReadWriteAccessDetector());
+
+ CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), XmlFileNSInfoProvider.EP_NAME, XmlFileNSInfoProvider.class);
+ appEnvironment.addExtension(XmlFileNSInfoProvider.EP_NAME, new HtmlFileNSInfoProvider());
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), StartTagEndTokenProvider.EP_NAME, StartTagEndTokenProvider.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), XmlSuppressionProvider.EP_NAME, XmlSuppressionProvider.class);
- CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), XmlFileNSInfoProvider.EP_NAME, XmlFileNSInfoProvider.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), XmlSchemaProvider.EP_NAME, XmlSchemaProvider.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ImplicitNamespaceDescriptorProvider.EP_NAME, ImplicitNamespaceDescriptorProvider.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), XmlElementDescriptorProvider.EP_NAME, XmlElementDescriptorProvider.class);
@@ -82,9 +114,19 @@ public class XmlCoreEnvironment {
appEnvironment.addExtension(MetaDataContributor.EP_NAME, new XmlApplicationComponent());
appEnvironment.addExtension(FileBasedIndexExtension.EXTENSION_POINT_NAME, new XmlNamespaceIndex());
+ appEnvironment.addExtension(FileBasedIndexExtension.EXTENSION_POINT_NAME, new SchemaTypeInheritanceIndex());
+ appEnvironment.addExtension(FileBasedIndexExtension.EXTENSION_POINT_NAME, new XmlTagNamesIndex());
appEnvironment.addExtension(StandardResourceProvider.EP_NAME, new InternalResourceProvider());
- appEnvironment.registerApplicationService(ExternalResourceManager.class, createExternalResourceManager());
+ appEnvironment.registerApplicationComponent(PathMacros.class, new PathMacrosImpl());
+ appEnvironment.registerApplicationService(ExternalResourceManager.class, new ExternalResourceManagerExImpl(PathMacrosImpl.getInstanceEx()));
+ appEnvironment.registerApplicationService(XmlFoldingSettings.class, new XmlFoldingSettings());
+ Language[] myLanguages = new Language[]{XMLLanguage.INSTANCE, HTMLLanguage.INSTANCE, XHTMLLanguage.INSTANCE, DTDLanguage.INSTANCE};
+ for (Language myLanguage : myLanguages) {
+ appEnvironment.addExplicitExtension(LanguageFolding.INSTANCE, myLanguage, new XmlFoldingBuilder());
+ appEnvironment.addExplicitExtension(LanguageFindUsages.INSTANCE, myLanguage, new XmlFindUsagesProvider());
+ appEnvironment.addExplicitExtension(LanguageASTFactory.INSTANCE, myLanguage, new XmlASTFactory());
+ }
}
protected ExternalResourceManagerEx createExternalResourceManager() {
@@ -94,6 +136,9 @@ public class XmlCoreEnvironment {
public static class ProjectEnvironment {
public ProjectEnvironment(CoreProjectEnvironment projectEnvironment) {
+ projectEnvironment.getProject().registerService(XmlElementFactory.class, new XmlElementFactoryImpl(projectEnvironment.getProject()));
+ projectEnvironment.getProject().registerService(ExternalResourceManagerExImpl.class,
+ new ProjectResources(PathMacrosImpl.getInstanceEx()));
}
}
}
diff --git a/xml/impl/src/com/intellij/xml/XmlPsiManager.java b/xml/xml-psi-impl/src/com/intellij/xml/XmlPsiManager.java
index 8492313042f3..3525a00163a7 100644
--- a/xml/impl/src/com/intellij/xml/XmlPsiManager.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/XmlPsiManager.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/actions/validate/ValidateXmlActionHandler.java b/xml/xml-psi-impl/src/com/intellij/xml/actions/validate/ValidateXmlActionHandler.java
index 1495efb9d93f..2e851e555812 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/actions/validate/ValidateXmlActionHandler.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/actions/validate/ValidateXmlActionHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -138,24 +138,29 @@ public class ValidateXmlActionHandler {
public void doParse() {
try {
myParser.parse(new InputSource(new StringReader(myFile.getText())), new DefaultHandler() {
+ @Override
public void warning(SAXParseException e) throws SAXException {
if (myErrorReporter.isUniqueProblem(e)) myErrorReporter.processError(e, ProblemType.WARNING);
}
+ @Override
public void error(SAXParseException e) throws SAXException {
if (myErrorReporter.isUniqueProblem(e)) myErrorReporter.processError(e, ProblemType.ERROR);
}
+ @Override
public void fatalError(SAXParseException e) throws SAXException {
if (myErrorReporter.isUniqueProblem(e)) myErrorReporter.processError(e, ProblemType.FATAL);
}
+ @Override
public InputSource resolveEntity(String publicId, String systemId) {
final PsiFile psiFile = myXmlResourceResolver.resolve(null, systemId);
if (psiFile == null) return null;
return new InputSource(new StringReader(psiFile.getText()));
}
+ @Override
public void startDocument() throws SAXException {
super.startDocument();
myParser.setProperty(
@@ -173,7 +178,7 @@ public class ValidateXmlActionHandler {
}
myFile.putUserData(DEPENDENT_FILES_KEY, files);
- myFile.putUserData(GRAMMAR_POOL_TIME_STAMP_KEY, new Long(calculateTimeStamp(files, myProject)));
+ myFile.putUserData(GRAMMAR_POOL_TIME_STAMP_KEY, calculateTimeStamp(files, myProject));
}
myFile.putUserData(KNOWN_NAMESPACES_KEY, getNamespaces(myFile));
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/BasicXmlAttributeDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/BasicXmlAttributeDescriptor.java
index 4e2055d40fe7..541ab9a9794c 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/BasicXmlAttributeDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/BasicXmlAttributeDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,10 +31,12 @@ import com.intellij.xml.XmlAttributeDescriptor;
import org.jetbrains.annotations.Nullable;
public abstract class BasicXmlAttributeDescriptor extends XmlEnumerationDescriptor implements XmlAttributeDescriptor {
+ @Override
public String validateValue(XmlElement context, String value) {
return null;
}
+ @Override
public String getName(PsiElement context){
return getName();
}
@@ -54,12 +56,14 @@ public abstract class BasicXmlAttributeDescriptor extends XmlEnumerationDescript
return getName();
}
+ @Override
protected PsiElement getEnumeratedValueDeclaration(XmlElement xmlElement, String value) {
String[] values = getEnumeratedValues();
if (values == null || values.length == 0) return getDeclaration();
return ArrayUtilRt.find(values, value) != -1 ? getDeclaration() : null;
}
+ @Override
protected PsiElement getDefaultValueDeclaration() {
return getDeclaration();
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/BaseXmlElementDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/BaseXmlElementDescriptorImpl.java
index 5e144f7bdc4f..97e3b042c7e4 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/BaseXmlElementDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/BaseXmlElementDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,9 +25,6 @@ import com.intellij.xml.XmlElementsGroup;
import java.util.HashMap;
-/**
- * @by maxim
- */
public abstract class BaseXmlElementDescriptorImpl implements XmlElementDescriptor {
private volatile XmlElementDescriptor[] myElementDescriptors = null;
private volatile XmlAttributeDescriptor[] myAttributeDescriptors;
@@ -51,38 +48,46 @@ public abstract class BaseXmlElementDescriptorImpl implements XmlElementDescript
static final FieldCache<XmlElementDescriptor[],BaseXmlElementDescriptorImpl,Object, XmlTag> myElementDescriptorsCache =
new FieldCache<XmlElementDescriptor[], BaseXmlElementDescriptorImpl, Object, XmlTag>() {
+ @Override
protected final XmlElementDescriptor[] compute(final BaseXmlElementDescriptorImpl xmlElementDescriptor, XmlTag tag) {
return xmlElementDescriptor.doCollectXmlDescriptors(tag);
}
+ @Override
protected final XmlElementDescriptor[] getValue(final BaseXmlElementDescriptorImpl xmlElementDescriptor, Object o) {
return xmlElementDescriptor.myElementDescriptors;
}
+ @Override
protected final void putValue(final XmlElementDescriptor[] xmlElementDescriptors, final BaseXmlElementDescriptorImpl xmlElementDescriptor,Object o) {
xmlElementDescriptor.myElementDescriptors = xmlElementDescriptors;
}
};
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(XmlTag context) {
return myElementDescriptorsCache.get(null, this, context);
}
private static final SimpleFieldCache<XmlAttributeDescriptor[],BaseXmlElementDescriptorImpl> myAttributeDescriptorsCache =
new SimpleFieldCache<XmlAttributeDescriptor[], BaseXmlElementDescriptorImpl>() {
+ @Override
protected final XmlAttributeDescriptor[] compute(final BaseXmlElementDescriptorImpl xmlElementDescriptor) {
return xmlElementDescriptor.collectAttributeDescriptors(null);
}
+ @Override
protected final XmlAttributeDescriptor[] getValue(final BaseXmlElementDescriptorImpl xmlElementDescriptor) {
return xmlElementDescriptor.myAttributeDescriptors;
}
+ @Override
protected final void putValue(final XmlAttributeDescriptor[] xmlAttributeDescriptors, final BaseXmlElementDescriptorImpl xmlElementDescriptor) {
xmlElementDescriptor.myAttributeDescriptors = xmlAttributeDescriptors;
}
};
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final XmlTag context) {
return myAttributeDescriptorsCache.get(this);
}
@@ -92,19 +97,23 @@ public abstract class BaseXmlElementDescriptorImpl implements XmlElementDescript
private static final SimpleFieldCache<HashMap<String,XmlAttributeDescriptor>, BaseXmlElementDescriptorImpl> attributeDescriptorsMapCache =
new SimpleFieldCache<HashMap<String, XmlAttributeDescriptor>, BaseXmlElementDescriptorImpl>() {
+ @Override
protected final HashMap<String, XmlAttributeDescriptor> compute(final BaseXmlElementDescriptorImpl baseXmlElementDescriptor) {
return baseXmlElementDescriptor.collectAttributeDescriptorsMap(null);
}
+ @Override
protected final HashMap<String, XmlAttributeDescriptor> getValue(final BaseXmlElementDescriptorImpl baseXmlElementDescriptor) {
return baseXmlElementDescriptor.attributeDescriptorsMap;
}
+ @Override
protected final void putValue(final HashMap<String, XmlAttributeDescriptor> hashMap, final BaseXmlElementDescriptorImpl baseXmlElementDescriptor) {
baseXmlElementDescriptor.attributeDescriptorsMap = hashMap;
}
};
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(String attributeName, final XmlTag context) {
return attributeDescriptorsMapCache.get(this).get(attributeName);
}
@@ -114,20 +123,24 @@ public abstract class BaseXmlElementDescriptorImpl implements XmlElementDescript
private static final FieldCache<HashMap<String,XmlElementDescriptor>,BaseXmlElementDescriptorImpl,Object,XmlTag> myElementDescriptorsMapCache =
new FieldCache<HashMap<String, XmlElementDescriptor>, BaseXmlElementDescriptorImpl, Object, XmlTag>() {
+ @Override
protected final HashMap<String, XmlElementDescriptor> compute(final BaseXmlElementDescriptorImpl baseXmlElementDescriptor, final XmlTag p) {
return baseXmlElementDescriptor.collectElementDescriptorsMap(p);
}
+ @Override
protected final HashMap<String, XmlElementDescriptor> getValue(final BaseXmlElementDescriptorImpl baseXmlElementDescriptor, final Object p) {
return baseXmlElementDescriptor.myElementDescriptorsMap;
}
+ @Override
protected final void putValue(final HashMap<String, XmlElementDescriptor> hashMap,
final BaseXmlElementDescriptorImpl baseXmlElementDescriptor, final Object p) {
baseXmlElementDescriptor.myElementDescriptorsMap = hashMap;
}
};
+ @Override
public XmlElementDescriptor getElementDescriptor(XmlTag element, XmlTag contextTag){
return myElementDescriptorsMapCache.get(null, this, element).get(element.getName());
}
@@ -139,6 +152,7 @@ public abstract class BaseXmlElementDescriptorImpl implements XmlElementDescript
// Read-only calculation
protected abstract HashMap<String, XmlElementDescriptor> collectElementDescriptorsMap(final XmlTag element);
+ @Override
public final XmlAttributeDescriptor getAttributeDescriptor(XmlAttribute attr){
return getAttributeDescriptor(attr.getName(), attr.getParent());
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlAttributeDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlAttributeDescriptorImpl.java
index 1471fc459eb0..fe0a8abdc80c 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlAttributeDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlAttributeDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -44,14 +44,17 @@ public class XmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor impl
init(decl);
}
+ @Override
public boolean isRequired() {
return myRequired;
}
+ @Override
public PsiElement getDeclaration(){
return myDecl;
}
+ @Override
public String getName() {
if (myName!=null) {
return myName;
@@ -60,6 +63,7 @@ public class XmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor impl
return myName;
}
+ @Override
public void init(PsiElement element){
myDecl = (XmlAttributeDecl) element;
myRequired = myDecl.isAttributeRequired();
@@ -67,22 +71,27 @@ public class XmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor impl
myEnumerated = myDecl.isEnumerated();
}
+ @Override
public Object[] getDependences(){
return new Object[]{myDecl};
}
+ @Override
public boolean isFixed() {
return myFixed;
}
+ @Override
public boolean hasIdType() {
return myDecl.isIdAttribute();
}
+ @Override
public boolean hasIdRefType() {
return myDecl.isIdRefAttribute();
}
+ @Override
public String getDefaultValue() {
String text = myDecl.getDefaultValueText();
if (text != null) {
@@ -92,10 +101,12 @@ public class XmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor impl
return null;
}
+ @Override
public boolean isEnumerated() {
return myEnumerated;
}
+ @Override
public String[] getEnumeratedValues() {
XmlElement[] values = myDecl.getEnumeratedValues();
@@ -111,6 +122,7 @@ public class XmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor impl
return getName();
}
+ @Override
public void setName(String name) throws IncorrectOperationException {
myName = name;
((PsiNamedElement)getDeclaration()).setName(name);
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlElementDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlElementDescriptorImpl.java
index 551856d7e326..46ce5b49a362 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlElementDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlElementDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -64,8 +64,10 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
}
private static final UserDataCache<CachedValue<XmlAttlistDecl[]>,XmlElement, Object> myAttlistDeclCache = new UserDataCache<CachedValue<XmlAttlistDecl[]>,XmlElement, Object>() {
+ @Override
protected final CachedValue<XmlAttlistDecl[]> compute(final XmlElement owner, Object o) {
return CachedValuesManager.getManager(owner.getProject()).createCachedValue(new CachedValueProvider<XmlAttlistDecl[]>() {
+ @Override
public Result<XmlAttlistDecl[]> compute() {
return new Result<XmlAttlistDecl[]>(doCollectAttlistDeclarations(owner),owner);
}
@@ -73,28 +75,34 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
}
};
+ @Override
public PsiElement getDeclaration(){
return myElementDecl;
}
+ @Override
public String getName(PsiElement context){
return getName();
}
+ @Override
public String getName() {
if (myName!=null) return myName;
return myName = myElementDecl.getName();
}
+ @Override
public void init(PsiElement element){
myElementDecl = (XmlElementDecl) element;
}
+ @Override
@SuppressWarnings("SpellCheckingInspection")
public Object[] getDependences(){
return new Object[]{myElementDecl, ExternalResourceManager.getInstance()};
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
return getNsDescriptorFrom(myElementDecl);
}
@@ -112,6 +120,7 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
}
// Read-only action
+ @Override
protected final XmlElementDescriptor[] doCollectXmlDescriptors(final XmlTag context) {
final LinkedHashSet<XmlElementDescriptor> result = new LinkedHashSet<XmlElementDescriptor>();
final XmlElementContentSpec contentSpecElement = myElementDecl.getContentSpecElement();
@@ -119,6 +128,7 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
final XmlNSDescriptor NSDescriptor = nsDescriptor != null? nsDescriptor:getNsDescriptorFrom(context);
XmlUtil.processXmlElements(contentSpecElement, new PsiElementProcessor(){
+ @Override
public boolean execute(@NotNull PsiElement child){
if (child instanceof XmlToken) {
final XmlToken token = (XmlToken)child;
@@ -172,6 +182,7 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
}
// Read-only calculation
+ @Override
protected final XmlAttributeDescriptor[] collectAttributeDescriptors(final XmlTag context) {
final List<XmlAttributeDescriptor> result = new SmartList<XmlAttributeDescriptor>();
for (XmlAttlistDecl attlistDecl : findAttlistDeclarations(getName())) {
@@ -185,6 +196,7 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
}
// Read-only calculation
+ @Override
protected HashMap<String, XmlAttributeDescriptor> collectAttributeDescriptorsMap(final XmlTag context) {
final HashMap<String, XmlAttributeDescriptor> localADM;
final XmlAttributeDescriptor[] xmlAttributeDescriptors = getAttributesDescriptors(context);
@@ -230,6 +242,7 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
return topGroup == null ? null : new XmlElementsGroupImpl(topGroup, null);
}
+ @Override
public int getContentType() {
if (myElementDecl.getContentSpecElement().isAny()) {
return CONTENT_TYPE_ANY;
@@ -248,6 +261,7 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
}
// Read-only calculation
+ @Override
protected HashMap<String, XmlElementDescriptor> collectElementDescriptorsMap(final XmlTag element) {
final HashMap<String, XmlElementDescriptor> elementDescriptorsMap;
final XmlElementDescriptor[] descriptors = getElementsDescriptors(element);
@@ -259,14 +273,17 @@ public class XmlElementDescriptorImpl extends BaseXmlElementDescriptorImpl imple
return elementDescriptorsMap;
}
+ @Override
public String getQualifiedName() {
return getName();
}
+ @Override
public String getDefaultName() {
return getName();
}
+ @Override
public void setName(final String name) throws IncorrectOperationException {
// IDEADEV-11439
myName = null;
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlNSDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlNSDescriptorImpl.java
index b95ac5d2bd6d..18ea646c8b8b 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlNSDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/dtd/XmlNSDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -46,14 +46,17 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
private static final SimpleFieldCache<CachedValue<Map<String, XmlElementDescriptor>>, XmlNSDescriptorImpl> myCachedDeclsCache = new
SimpleFieldCache<CachedValue<Map<String, XmlElementDescriptor>>, XmlNSDescriptorImpl>() {
+ @Override
protected final CachedValue<Map<String, XmlElementDescriptor>> compute(final XmlNSDescriptorImpl xmlNSDescriptor) {
return xmlNSDescriptor.doBuildDeclarationMap();
}
+ @Override
protected final CachedValue<Map<String, XmlElementDescriptor>> getValue(final XmlNSDescriptorImpl xmlNSDescriptor) {
return xmlNSDescriptor.myCachedDecls;
}
+ @Override
protected final void putValue(final CachedValue<Map<String, XmlElementDescriptor>> cachedValue, final XmlNSDescriptorImpl xmlNSDescriptor) {
xmlNSDescriptor.myCachedDecls = cachedValue;
}
@@ -61,15 +64,18 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
private volatile CachedValue<Map<String, XmlElementDescriptor>> myCachedDecls;
private static final XmlUtil.DuplicationInfoProvider<XmlElementDecl> XML_ELEMENT_DECL_PROVIDER = new XmlUtil.DuplicationInfoProvider<XmlElementDecl>() {
+ @Override
public String getName(@NotNull final XmlElementDecl psiElement) {
return psiElement.getName();
}
+ @Override
@NotNull
public String getNameKey(@NotNull final XmlElementDecl psiElement, @NotNull final String name) {
return name;
}
+ @Override
@NotNull
public PsiElement getNodeForMessage(@NotNull final XmlElementDecl psiElement) {
return psiElement.getNameElement();
@@ -78,10 +84,12 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
public XmlNSDescriptorImpl() {}
+ @Override
public XmlFile getDescriptorFile() {
return myDescriptorFile;
}
+ @Override
public boolean isHierarhyEnabled() {
return false;
}
@@ -98,6 +106,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
// Read-only calculation
private CachedValue<Map<String, XmlElementDescriptor>> doBuildDeclarationMap() {
return CachedValuesManager.getManager(myElement.getProject()).createCachedValue(new CachedValueProvider<Map<String, XmlElementDescriptor>>() {
+ @Override
public Result<Map<String, XmlElementDescriptor>> compute() {
final List<XmlElementDecl> result = new ArrayList<XmlElementDecl>();
myElement.processElements(new FilterElementProcessor(new ClassFilter(XmlElementDecl.class), result), getDeclaration());
@@ -116,11 +125,13 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
}, false);
}
+ @Override
public XmlElementDescriptor getElementDescriptor(@NotNull XmlTag tag) {
String name = tag.getName();
return getElementDescriptor(name);
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable final XmlDocument document) {
// Suggest more appropriate variant if DOCTYPE <element_name> exists
@@ -147,18 +158,22 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
return buildDeclarationMap().get(name);
}
+ @Override
public PsiElement getDeclaration() {
return myElement;
}
+ @Override
public String getName(PsiElement context){
return getName();
}
+ @Override
public String getName(){
return myDescriptorFile.getName();
}
+ @Override
public void init(PsiElement element){
myElement = (XmlElement)element;
myDescriptorFile = (XmlFile)element.getContainingFile();
@@ -168,15 +183,18 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
}
}
+ @Override
public Object[] getDependences(){
return new Object[]{myElement, ExternalResourceManager.getInstance()};
}
+ @Override
public void validate(@NotNull XmlDocument document, @NotNull ValidationHost host) {
if (document.getLanguage() == DTDLanguage.INSTANCE) {
final List<XmlElementDecl> decls = new ArrayList<XmlElementDecl>(3);
XmlUtil.processXmlElements(document, new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlElementDecl) decls.add((XmlElementDecl)element);
return true;
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlAttributeDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlAttributeDescriptor.java
index 986ea48a921d..2a73abf3ef2c 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlAttributeDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlAttributeDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,21 +42,26 @@ public class AnyXmlAttributeDescriptor implements XmlAttributeDescriptor {
myCanContainAttributeType = canContainAttributeType;
}
+ @Override
public PsiElement getDeclaration(){
return null;
}
+ @Override
public String getName(PsiElement context){
return myAttributeName;
}
+ @Override
public String getName() {
return myAttributeName;
}
+ @Override
public void init(PsiElement element){
}
+ @Override
public Object[] getDependences(){
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
@@ -69,35 +74,43 @@ public class AnyXmlAttributeDescriptor implements XmlAttributeDescriptor {
return myAttributeName;
}
+ @Override
public boolean isRequired() {
return false;
}
+ @Override
public boolean isFixed() {
return false;
}
+ @Override
public boolean hasIdType() {
return false;
}
+ @Override
public boolean hasIdRefType() {
return false;
}
+ @Override
public String getDefaultValue() {
return null;
}
//todo: refactor to hierarchy of value descriptor?
+ @Override
public boolean isEnumerated() {
return false;
}
+ @Override
public String[] getEnumeratedValues() {
return ArrayUtil.EMPTY_STRING_ARRAY;
}
+ @Override
public String validateValue(XmlElement context, String value) {
return null;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlElementDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlElementDescriptor.java
index 7343adf58a01..a50c3a0ffea1 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlElementDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/AnyXmlElementDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,6 +42,7 @@ public class AnyXmlElementDescriptor implements XmlElementDescriptor {
myXmlNSDescriptor = xmlNSDescriptor;
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
return myXmlNSDescriptor;
}
@@ -51,53 +52,66 @@ public class AnyXmlElementDescriptor implements XmlElementDescriptor {
return null;
}
+ @Override
public PsiElement getDeclaration(){
return null;
}
+ @Override
public String getName(PsiElement context){
return getName();
}
+ @Override
public String getName() {
return myParentDescriptor.getName();
}
+ @Override
public void init(PsiElement element){
}
+ @Override
public Object[] getDependences(){
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
+ @Override
public String getQualifiedName() {
return myParentDescriptor.getQualifiedName();
}
+ @Override
public String getDefaultName() {
return myParentDescriptor.getDefaultName();
}
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(XmlTag context) {
return myParentDescriptor.getElementsDescriptors(context);
}
+ @Override
public XmlElementDescriptor getElementDescriptor(XmlTag tag, XmlTag contextTag){
return new AnyXmlElementDescriptor(this, myXmlNSDescriptor);
}
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final XmlTag context) {
return new XmlAttributeDescriptor[0];
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(final String attributeName, final XmlTag context) {
return new AnyXmlAttributeDescriptor(attributeName);
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(XmlAttribute attr){
return myParentDescriptor.getAttributeDescriptor(attr);
}
+ @Override
public int getContentType() {
return CONTENT_TYPE_UNKNOWN;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/ComplexTypeDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/ComplexTypeDescriptor.java
index f4d468edf759..09a51017260f 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/ComplexTypeDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/ComplexTypeDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -49,14 +49,17 @@ public class ComplexTypeDescriptor extends TypeDescriptor {
private static final FieldCache<XmlElementDescriptor[],ComplexTypeDescriptor,Object, XmlElement> myElementDescriptorsCache =
new FieldCache<XmlElementDescriptor[],ComplexTypeDescriptor,Object, XmlElement>() {
+ @Override
protected XmlElementDescriptor[] compute(final ComplexTypeDescriptor complexTypeDescriptor, final XmlElement p) {
return complexTypeDescriptor.doCollectElements(p);
}
+ @Override
protected XmlElementDescriptor[] getValue(final ComplexTypeDescriptor complexTypeDescriptor, final Object p) {
return complexTypeDescriptor.myElementDescriptors;
}
+ @Override
protected void putValue(final XmlElementDescriptor[] xmlElementDescriptors,
final ComplexTypeDescriptor complexTypeDescriptor, final Object p) {
complexTypeDescriptor.myElementDescriptors = xmlElementDescriptors;
@@ -65,14 +68,17 @@ public class ComplexTypeDescriptor extends TypeDescriptor {
private static final FieldCache<XmlAttributeDescriptor[], ComplexTypeDescriptor, Object, XmlElement> myAttributeDescriptorsCache =
new FieldCache<XmlAttributeDescriptor[], ComplexTypeDescriptor, Object, XmlElement>() {
+ @Override
protected final XmlAttributeDescriptor[] compute(final ComplexTypeDescriptor complexTypeDescriptor, XmlElement p) {
return complexTypeDescriptor.doCollectAttributes(p);
}
+ @Override
protected final XmlAttributeDescriptor[] getValue(final ComplexTypeDescriptor complexTypeDescriptor, Object o) {
return complexTypeDescriptor.myAttributeDescriptors;
}
+ @Override
protected final void putValue(final XmlAttributeDescriptor[] xmlAttributeDescriptors,
final ComplexTypeDescriptor complexTypeDescriptor, final Object p) {
complexTypeDescriptor.myAttributeDescriptors = xmlAttributeDescriptors;
@@ -233,6 +239,9 @@ public class ComplexTypeDescriptor extends TypeDescriptor {
else {
XmlAttributeDescriptorImpl descriptor = myDocumentDescriptor.createAttributeDescriptor(tag);
descriptor.myUse = use;
+ if (ref != null) {
+ descriptor.myReferenceName = ref.getAttributeValue(REF_ATTR_NAME);
+ }
addAttributeDescriptor(result, descriptor);
}
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NamedObjectDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NamedObjectDescriptor.java
index 04779f1707c1..be1801d252c0 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NamedObjectDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NamedObjectDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ public class NamedObjectDescriptor implements PsiWritableMetaData, PsiMetaData {
public NamedObjectDescriptor() {}
+ @Override
public void setName(String name) throws IncorrectOperationException {
setName(myDcl, name);
}
@@ -47,22 +48,27 @@ public class NamedObjectDescriptor implements PsiWritableMetaData, PsiMetaData {
}
}
+ @Override
public PsiElement getDeclaration() {
return myDcl;
}
+ @Override
public String getName(PsiElement context) {
return getName();
}
+ @Override
public String getName() {
return myDcl.getAttributeValue("name");
}
+ @Override
public void init(PsiElement element) {
myDcl = (XmlTag)element;
}
+ @Override
public Object[] getDependences() {
return new Object[] { myDcl };
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NullElementDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NullElementDescriptor.java
index 3704042e0aaa..63a0c2da0466 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NullElementDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/NullElementDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -38,35 +38,43 @@ public class NullElementDescriptor implements XmlElementDescriptor {
private NullElementDescriptor() {
}
+ @Override
public String getQualifiedName() {
return null;
}
+ @Override
public String getDefaultName() {
return null;
}
//todo: refactor to support full DTD spec
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(XmlTag context) {
return new XmlElementDescriptor[0];
}
+ @Override
public XmlElementDescriptor getElementDescriptor(XmlTag childTag, XmlTag contextTag) {
return null;
}
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final XmlTag context) {
return new XmlAttributeDescriptor[0];
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(String attributeName, final XmlTag context) {
return null;
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(XmlAttribute attribute) {
return null;
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
return null;
}
@@ -76,6 +84,7 @@ public class NullElementDescriptor implements XmlElementDescriptor {
return null;
}
+ @Override
public int getContentType() {
return 0;
}
@@ -85,21 +94,26 @@ public class NullElementDescriptor implements XmlElementDescriptor {
return null;
}
+ @Override
public PsiElement getDeclaration() {
return null;
}
+ @Override
public String getName(PsiElement context) {
return null;
}
+ @Override
public String getName() {
return null;
}
+ @Override
public void init(PsiElement element) {
}
+ @Override
public Object[] getDependences() {
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/SchemaNSDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/SchemaNSDescriptor.java
index f29bf32f1878..65a91cc93a16 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/SchemaNSDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/SchemaNSDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -42,6 +42,7 @@ public class SchemaNSDescriptor extends XmlNSDescriptorImpl {
@NonNls private static final String NAME_ATTR_NAME = "name";
private static final Validator<XmlTag> ELEMENT_VALIDATOR = new Validator<XmlTag>() {
+ @Override
public void validate(@NotNull final XmlTag tag, @NotNull ValidationHost host) {
if (!isFromSchemaNs(tag)) return;
final boolean hasRefAttribute = tag.getAttributeValue(REF_ATTR_NAME) != null;
@@ -95,6 +96,7 @@ public class SchemaNSDescriptor extends XmlNSDescriptorImpl {
};
private static final Validator<XmlTag> ATTRIBUTE_VALIDATOR = new Validator<XmlTag>() {
+ @Override
public void validate(@NotNull final XmlTag tag, @NotNull ValidationHost host) {
if (!isFromSchemaNs(tag)) return;
@@ -123,15 +125,18 @@ public class SchemaNSDescriptor extends XmlNSDescriptorImpl {
};
private static final XmlUtil.DuplicationInfoProvider<XmlTag> SCHEMA_ATTR_DUP_INFO_PROVIDER = new XmlUtil.DuplicationInfoProvider<XmlTag>() {
+ @Override
public String getName(@NotNull final XmlTag t) {
return t.getAttributeValue(NAME_ATTR_NAME);
}
+ @Override
@NotNull
public String getNameKey(@NotNull final XmlTag t, @NotNull String name) {
return name;
}
+ @Override
@NotNull
public PsiElement getNodeForMessage(@NotNull final XmlTag t) {
return t.getAttribute(NAME_ATTR_NAME, null).getValueElement();
@@ -139,6 +144,7 @@ public class SchemaNSDescriptor extends XmlNSDescriptorImpl {
};
private static final Validator<XmlTag> ELEMENT_AND_ATTR_VALIDATOR = new Validator<XmlTag>() {
+ @Override
public void validate(@NotNull final XmlTag tag, @NotNull ValidationHost host) {
if (!isFromSchemaNs(tag)) return;
final String nsPrefix = tag.getNamespacePrefix();
@@ -166,6 +172,7 @@ public class SchemaNSDescriptor extends XmlNSDescriptorImpl {
return XmlUtil.XML_SCHEMA_URI.equals(tag.getNamespace());
}
+ @Override
protected XmlElementDescriptor createElementDescriptor(final XmlTag tag) {
final XmlElementDescriptor descriptor = super.createElementDescriptor(tag);
String localName = tag.getAttributeValue(NAME_ATTR_NAME);
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlAttributeDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlAttributeDescriptorImpl.java
index c8179cc1e080..b463e92aa706 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlAttributeDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlAttributeDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,6 +33,7 @@ import org.jetbrains.annotations.Nullable;
public class XmlAttributeDescriptorImpl extends XsdEnumerationDescriptor implements PsiWritableMetaData, XmlAttributeDescriptor {
private XmlTag myTag;
String myUse;
+ String myReferenceName;
@NonNls
public static final String REQUIRED_ATTR_VALUE = "required";
@@ -46,23 +47,28 @@ public class XmlAttributeDescriptorImpl extends XsdEnumerationDescriptor impleme
public XmlAttributeDescriptorImpl() {}
+ @Override
public XmlTag getDeclaration(){
return myTag;
}
+ @Override
public String getName() {
return myTag.getAttributeValue("name");
}
+ @Override
public void init(PsiElement element){
myTag = (XmlTag) element;
myUse = myTag.getAttributeValue("use");
}
+ @Override
public Object[] getDependences(){
return ArrayUtil.EMPTY_OBJECT_ARRAY;
}
+ @Override
public boolean isRequired() {
return REQUIRED_ATTR_VALUE.equals(myUse);
}
@@ -90,14 +96,17 @@ public class XmlAttributeDescriptorImpl extends XsdEnumerationDescriptor impleme
return myTag.getAttributeValue("type");
}
+ @Override
public boolean hasIdType() {
return hasSimpleSchemaType("ID");
}
+ @Override
public boolean hasIdRefType() {
return hasSimpleSchemaType("IDREF");
}
+ @Override
public boolean isEnumerated() {
return isEnumerated(null);
}
@@ -108,24 +117,37 @@ public class XmlAttributeDescriptorImpl extends XsdEnumerationDescriptor impleme
return null;
}
+ @Override
public String getName(PsiElement context) {
+ String name = getName();
if (context == null) {
- return getName();
+ return name;
}
- final String form = myTag.getAttributeValue("form");
- boolean isQualifiedAttr = QUALIFIED_ATTR_VALUE.equals(form);
final XmlTag rootTag = (((XmlFile) myTag.getContainingFile())).getRootTag();
assert rootTag != null;
String targetNs = rootTag.getAttributeValue("targetNamespace");
+ if (targetNs == null) return name;
+
XmlTag contextTag = (XmlTag)context;
- String name = getName();
+ if (QUALIFIED_ATTR_VALUE.equals(myTag.getAttributeValue("form")) ||
+ QUALIFIED_ATTR_VALUE.equals(rootTag.getAttributeValue("attributeFormDefault")) ||
+ shouldBeQualified(targetNs, contextTag)) {
+ final String prefixByNamespace = contextTag.getPrefixByNamespace(targetNs);
+ if (prefixByNamespace!= null && prefixByNamespace.length() > 0) {
+ name = prefixByNamespace + ":" + name;
+ }
+ }
+ return name;
+ }
+
+ private boolean shouldBeQualified(String targetNs, XmlTag contextTag) {
boolean attributeShouldBeQualified = false;
String contextNs = contextTag.getNamespace();
- if (targetNs != null && !contextNs.equals(targetNs)) {
+ if (!contextNs.equals(targetNs)) {
final XmlElementDescriptor xmlElementDescriptor = contextTag.getDescriptor();
if (xmlElementDescriptor instanceof XmlElementDescriptorImpl) {
@@ -134,6 +156,13 @@ public class XmlAttributeDescriptorImpl extends XsdEnumerationDescriptor impleme
if (type instanceof ComplexTypeDescriptor) {
final ComplexTypeDescriptor typeDescriptor = (ComplexTypeDescriptor)type;
+ if (myReferenceName != null) {
+ return myReferenceName.indexOf(':') != 0;
+ }
+ XmlAttributeDescriptor[] attributes = ((ComplexTypeDescriptor)type).getAttributes(contextTag);
+ if (ArrayUtil.contains(this, attributes)) {
+ return false;
+ }
attributeShouldBeQualified = typeDescriptor.canContainAttribute(targetNs, null) != ComplexTypeDescriptor.CanContainAttributeType.CanNotContain;
}
@@ -142,22 +171,10 @@ public class XmlAttributeDescriptorImpl extends XsdEnumerationDescriptor impleme
}
}
}
-
- if (targetNs != null &&
- ( isQualifiedAttr ||
- QUALIFIED_ATTR_VALUE.equals(rootTag.getAttributeValue("attributeFormDefault")) ||
- attributeShouldBeQualified
- )
- ) {
- final String prefixByNamespace = contextTag.getPrefixByNamespace(targetNs);
- if (prefixByNamespace!= null && prefixByNamespace.length() > 0) {
- name = prefixByNamespace + ":" + name;
- }
- }
-
- return name;
+ return attributeShouldBeQualified;
}
+ @Override
public void setName(String name) throws IncorrectOperationException {
NamedObjectDescriptor.setName(myTag, name);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorByType.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorByType.java
index 5e1bbd182e68..e901d597fd31 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorByType.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorByType.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -39,14 +39,17 @@ public class XmlElementDescriptorByType extends XmlElementDescriptorImpl {
public XmlElementDescriptorByType() {}
+ @Override
public XmlTag getDeclaration(){
return myDescriptorTag;
}
+ @Override
public String getName(PsiElement context){
return myDescriptorTag.getName();
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
XmlNSDescriptor nsDescriptor = NSDescriptor;
if (nsDescriptor ==null) {
@@ -60,10 +63,12 @@ public class XmlElementDescriptorByType extends XmlElementDescriptorImpl {
return nsDescriptor;
}
+ @Override
public ComplexTypeDescriptor getType(XmlElement context) {
return myType;
}
+ @Override
public String getDefaultName() {
XmlTag rootTag = ((XmlFile)getType(null).getDeclaration().getContainingFile()).getDocument().getRootTag();
@@ -74,6 +79,7 @@ public class XmlElementDescriptorByType extends XmlElementDescriptorImpl {
return getName();
}
+ @Override
protected boolean askParentDescriptorViaXsi() {
return false;
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorImpl.java
index 083512a77b10..7bf9f02710b3 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlElementDescriptorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2011 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -59,10 +59,12 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
public XmlElementDescriptorImpl() {}
+ @Override
public XmlTag getDeclaration(){
return myDescriptorTag;
}
+ @Override
public String getName(PsiElement context){
String value = myDescriptorTag.getAttributeValue("name");
@@ -93,6 +95,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
}
/** getter for _local_ name */
+ @Override
public String getName() {
return XmlUtil.findLocalNameByQualifiedName(getName(null));
}
@@ -122,6 +125,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
myDescriptorTag.getNamespaceByPrefix(namespacePrefix);
}
+ @Override
public void init(PsiElement element){
if (myDescriptorTag!=element && myDescriptorTag!=null) {
NSDescriptor = null;
@@ -129,6 +133,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
myDescriptorTag = (XmlTag) element;
}
+ @Override
public Object[] getDependences(){
return new Object[]{myDescriptorTag};
}
@@ -151,6 +156,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return nsDescriptor;
}
+ @Override
public XmlNSDescriptor getNSDescriptor() {
XmlNSDescriptor nsDescriptor = NSDescriptor;
if (nsDescriptor == null || !NSDescriptor.getDeclaration().isValid()) {
@@ -185,7 +191,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
String substAttr = myDescriptorTag.getAttributeValue("substitutionGroup");
if (substAttr != null) {
final String namespacePrefix = XmlUtil.findPrefixByQualifiedName(substAttr);
- final String namespace = "".equals(namespacePrefix) ?
+ final String namespace = namespacePrefix.isEmpty() ?
((XmlNSDescriptorImpl)getNSDescriptor()).getDefaultNamespace() :
myDescriptorTag.getNamespaceByPrefix(namespacePrefix);
final String local = XmlUtil.findLocalNameByQualifiedName(substAttr);
@@ -198,6 +204,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return type;
}
+ @Override
public XmlElementDescriptor[] getElementsDescriptors(XmlTag context) {
if (context != null) {
final XmlElementDescriptor parentDescriptorByType = XmlUtil.findXmlDescriptorByType(context);
@@ -272,6 +279,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return EMPTY_ARRAY;
}
+ @Override
public XmlAttributeDescriptor[] getAttributesDescriptors(final XmlTag context) {
TypeDescriptor type = getType(context);
@@ -318,6 +326,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return attributeDescriptors;
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(String attributeName, final XmlTag context){
return getAttributeDescriptorImpl(attributeName,context);
}
@@ -327,7 +336,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
final String localName = XmlUtil.findLocalNameByQualifiedName(attributeName);
final String namespacePrefix = XmlUtil.findPrefixByQualifiedName(attributeName);
final XmlNSDescriptorImpl xmlNSDescriptor = (XmlNSDescriptorImpl)getNSDescriptor();
- final String namespace = namespacePrefix != null && namespacePrefix.isEmpty() ?
+ final String namespace = namespacePrefix.isEmpty() ?
((xmlNSDescriptor != null)?xmlNSDescriptor.getDefaultNamespace():"") :
context.getNamespaceByPrefix(namespacePrefix);
@@ -355,6 +364,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return attribute;
}
+ @Override
public XmlAttributeDescriptor getAttributeDescriptor(XmlAttribute attribute){
return getAttributeDescriptorImpl(attribute.getName(),attribute.getParent());
}
@@ -377,11 +387,6 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
final ComplexTypeDescriptor.CanContainAttributeType containAttributeType = descriptor.canContainAttribute(namespace, qName);
if (containAttributeType != ComplexTypeDescriptor.CanContainAttributeType.CanNotContain) {
- for (XmlAttributeDescriptor attributeDescriptor : descriptors) {
- if (attributeDescriptor.getName().equals(attributeName)) {
- return attributeDescriptor;
- }
- }
return new AnyXmlAttributeDescriptor(attributeName, containAttributeType);
}
}
@@ -389,6 +394,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return null;
}
+ @Override
public int getContentType() {
TypeDescriptor type = getType();
@@ -403,7 +409,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
public XmlElementDescriptor getElementDescriptor(final String name) {
final String localName = XmlUtil.findLocalNameByQualifiedName(name);
final String namespacePrefix = XmlUtil.findPrefixByQualifiedName(name);
- final String namespace = "".equals(namespacePrefix) ?
+ final String namespace = namespacePrefix.isEmpty() ?
((XmlNSDescriptorImpl)getNSDescriptor()).getDefaultNamespace() :
myDescriptorTag.getNamespaceByPrefix(namespacePrefix);
return getElementDescriptor(localName, namespace, null, name);
@@ -453,6 +459,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return null;
}
+ @Override
public XmlElementDescriptor getElementDescriptor(XmlTag element, XmlTag contextTag){
final XmlElement context = (XmlElement)element.getParent();
@@ -480,6 +487,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return true;
}
+ @Override
public String getQualifiedName() {
String ns = getNS();
if (ns != null && !ns.isEmpty()) {
@@ -494,6 +502,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return XmlUtil.findNamespacePrefixByURI((XmlFile) myDescriptorTag.getContainingFile(), getNamespace());
}
+ @Override
public String getDefaultName() {
final PsiFile psiFile = myDescriptorTag.getContainingFile();
XmlTag rootTag = psiFile instanceof XmlFile ?((XmlFile)psiFile).getRootTag():null;
@@ -513,6 +522,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
return Boolean.valueOf(descriptorTag.getAttributeValue("abstract"));
}
+ @Override
public void setName(String name) throws IncorrectOperationException {
NamedObjectDescriptor.setName(myDescriptorTag, name);
}
@@ -521,6 +531,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
myValidator = validator;
}
+ @Override
public void validate(@NotNull XmlTag context, @NotNull ValidationHost host) {
Validator<XmlTag> validator = myValidator;
if (validator != null) {
@@ -538,6 +549,7 @@ public class XmlElementDescriptorImpl extends XsdEnumerationDescriptor<XmlTag>
};
}
+ @Override
public boolean allowElementsFromNamespace(final String namespace, final XmlTag context) {
final TypeDescriptor type = getType(context);
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlNSDescriptorImpl.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlNSDescriptorImpl.java
index 63633af5ed0a..192c272a5f23 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlNSDescriptorImpl.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XmlNSDescriptorImpl.java
@@ -136,10 +136,12 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
}
}
+ @Override
public XmlFile getDescriptorFile() {
return myFile;
}
+ @Override
public boolean isHierarhyEnabled() {
return true;
}
@@ -156,6 +158,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
private final Map<QNameKey, CachedValue<XmlElementDescriptor>> myDescriptorsMap = Collections.synchronizedMap(new HashMap<QNameKey, CachedValue<XmlElementDescriptor>>());
private final Map<Pair<QNameKey, XmlTag>, CachedValue<TypeDescriptor>> myTypesMap = Collections.synchronizedMap(new HashMap<Pair<QNameKey,XmlTag>, CachedValue<TypeDescriptor>>());
+ @Override
@Nullable
public XmlElementDescriptor getElementDescriptor(String localName, String namespace) {
return getElementDescriptor(localName, namespace, new HashSet<XmlNSDescriptorImpl>(),false);
@@ -185,6 +188,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
if (name != null) {
if (checkElementNameEquivalence(localName, namespace, name, tag)) {
final CachedValue<XmlElementDescriptor> cachedValue = CachedValuesManager.getManager(tag.getProject()).createCachedValue(new CachedValueProvider<XmlElementDescriptor>() {
+ @Override
public Result<XmlElementDescriptor> compute() {
final String name = tag.getAttributeValue("name");
@@ -324,6 +328,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
if(attributeDescriptor != null){
final CachedValue<XmlAttributeDescriptor> value = CachedValuesManager.getManager(includedDocument.getProject()).createCachedValue(
new CachedValueProvider<XmlAttributeDescriptor>(){
+ @Override
public Result<XmlAttributeDescriptor> compute() {
Object[] deps = attributeDescriptor.getDependences();
if (deps.length == 0) {
@@ -350,6 +355,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
return new XmlAttributeDescriptorImpl(tag);
}
+ @Override
public TypeDescriptor getTypeDescriptor(XmlTag descriptorTag) {
String type = descriptorTag.getAttributeValue("type");
@@ -360,6 +366,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
return findTypeDescriptorImpl(descriptorTag, null, null, null);
}
+ @Override
public TypeDescriptor getTypeDescriptor(final String name, XmlTag context) {
if(checkSchemaNamespace(name, context)){
final String localNameByQualifiedName = XmlUtil.findLocalNameByQualifiedName(name);
@@ -526,6 +533,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
if (document != null) {
final CachedValue<TypeDescriptor> value = CachedValuesManager.getManager(tag.getProject()).createCachedValue(new CachedValueProvider<TypeDescriptor>() {
+ @Override
public Result<TypeDescriptor> compute() {
final String currentName = tag.getAttributeValue("name");
@@ -600,6 +608,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
private CachedValue<TypeDescriptor> createAndPutTypesCachedValueSimpleType(final XmlTag tag, final Pair<QNameKey, XmlTag> pair) {
final CachedValue<TypeDescriptor> value = CachedValuesManager.getManager(tag.getProject()).createCachedValue(new CachedValueProvider<TypeDescriptor>() {
+ @Override
public CachedValueProvider.Result<TypeDescriptor> compute() {
final SimpleTypeDescriptor simpleTypeDescriptor = new SimpleTypeDescriptor(tag);
return new Result<TypeDescriptor>(simpleTypeDescriptor, tag);
@@ -611,6 +620,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
private CachedValue<TypeDescriptor> createAndPutTypesCachedValue(final XmlTag tag, final Pair<QNameKey, XmlTag> pair) {
final CachedValue<TypeDescriptor> value = CachedValuesManager.getManager(tag.getProject()).createCachedValue(new CachedValueProvider<TypeDescriptor>() {
+ @Override
public CachedValueProvider.Result<TypeDescriptor> compute() {
final String name = tag.getAttributeValue("name");
@@ -630,6 +640,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
return value;
}
+ @Override
public XmlElementDescriptor getElementDescriptor(@NotNull XmlTag tag) {
PsiElement parent = tag.getParent();
final String namespace = tag.getNamespace();
@@ -676,11 +687,13 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
return elementDescriptor;
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable final XmlDocument doc) {
class CollectElementsProcessor implements PsiElementProcessor<XmlTag> {
final List<XmlElementDescriptor> result = new ArrayList<XmlElementDescriptor>();
+ @Override
public boolean execute(@NotNull final XmlTag element) {
ContainerUtil.addIfNotNull(result, getElementDescriptor(element.getAttributeValue("name"), getDefaultNamespace()));
return true;
@@ -688,6 +701,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
}
CollectElementsProcessor processor = new CollectElementsProcessor() {
+ @Override
public boolean execute(@NotNull final XmlTag element) {
if (!XmlElementDescriptorImpl.isAbstractDeclaration(element)) return super.execute(element);
return true;
@@ -702,6 +716,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
class CollectAttributesProcessor implements PsiElementProcessor<XmlTag> {
final List<XmlAttributeDescriptor> result = new ArrayList<XmlAttributeDescriptor>();
+ @Override
public boolean execute(@NotNull final XmlTag element) {
result.add(createAttributeDescriptor(element));
return true;
@@ -893,18 +908,22 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
return mySubstitutions != null;
}
+ @Override
public PsiElement getDeclaration(){
return myFile.getDocument();
}
+ @Override
public String getName(PsiElement context){
return getName();
}
+ @Override
public String getName(){
return "";
}
+ @Override
public void init(PsiElement element){
myFile = (XmlFile) element.getContainingFile();
@@ -931,6 +950,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
dependencies = ArrayUtil.toObjectArray(dependenciesSet);
}
+ @Override
public Object[] getDependences() {
if (dependencies == null) dependencies = myFile == null ? ArrayUtil.EMPTY_OBJECT_ARRAY : new Object[] {myFile}; // init was not called
return dependencies;
@@ -986,6 +1006,7 @@ public class XmlNSDescriptorImpl implements XmlNSDescriptorEx,Validator<XmlDocum
UNDECLARED_STD_TYPES.add("anySimpleType");
}
+ @Override
public void validate(@NotNull XmlDocument context, @NotNull Validator.ValidationHost host) {
ExternalDocumentValidator.doValidation(context,host);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XsdEnumerationDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XsdEnumerationDescriptor.java
index 26600b7795bd..a436b22e17a7 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XsdEnumerationDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/impl/schema/XsdEnumerationDescriptor.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml.impl.schema;
import com.intellij.openapi.util.Ref;
@@ -27,6 +42,7 @@ public abstract class XsdEnumerationDescriptor<T extends XmlElement> extends Xml
public abstract XmlTag getDeclaration();
+ @Override
public String getDefaultValue() {
if (isFixed()) {
return getDeclaration().getAttributeValue("fixed");
@@ -35,10 +51,12 @@ public abstract class XsdEnumerationDescriptor<T extends XmlElement> extends Xml
return getDeclaration().getAttributeValue("default");
}
+ @Override
public boolean isFixed() {
return getDeclaration().getAttributeValue("fixed") != null;
}
+ @Override
public String[] getEnumeratedValues() {
return getEnumeratedValues(null);
}
@@ -112,6 +130,7 @@ public abstract class XsdEnumerationDescriptor<T extends XmlElement> extends Xml
}
+ @Override
public boolean isEnumerated(@Nullable XmlElement context) {
return processEnumeration(context, PairProcessor.TRUE);
}
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/index/IndexedRelevantResource.java b/xml/xml-psi-impl/src/com/intellij/xml/index/IndexedRelevantResource.java
index 9005a94f76dc..ea1396c9bce8 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/index/IndexedRelevantResource.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/index/IndexedRelevantResource.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -48,6 +48,7 @@ public class IndexedRelevantResource<K, V extends Comparable> implements Compara
final ArrayList<IndexedRelevantResource<K, V>> resources = new ArrayList<IndexedRelevantResource<K, V>>();
final ProjectFileIndex fileIndex = ProjectRootManager.getInstance(project).getFileIndex();
FileBasedIndex.getInstance().processValues(indexId, key, null, new FileBasedIndex.ValueProcessor<V>() {
+ @Override
public boolean process(VirtualFile file, V value) {
ResourceRelevance relevance = ResourceRelevance.getRelevance(file, module, fileIndex, additionalScope);
resources.add(new IndexedRelevantResource<K, V>(file, key, value, relevance));
@@ -104,6 +105,7 @@ public class IndexedRelevantResource<K, V extends Comparable> implements Compara
return myRelevance;
}
+ @Override
public int compareTo(IndexedRelevantResource<K, V> o) {
int i = myRelevance.compareTo(o.getRelevance());
return i == 0 ? myValue.compareTo(o.getValue()) : i;
diff --git a/xml/impl/src/com/intellij/xml/index/SchemaTypeInfo.java b/xml/xml-psi-impl/src/com/intellij/xml/index/SchemaTypeInfo.java
index 9d857a0af9cd..0760587559a7 100644
--- a/xml/impl/src/com/intellij/xml/index/SchemaTypeInfo.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/index/SchemaTypeInfo.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/impl/src/com/intellij/xml/index/SchemaTypeInheritanceIndex.java b/xml/xml-psi-impl/src/com/intellij/xml/index/SchemaTypeInheritanceIndex.java
index fb74cd1ccf11..fb9005d6ffdb 100644
--- a/xml/impl/src/com/intellij/xml/index/SchemaTypeInheritanceIndex.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/index/SchemaTypeInheritanceIndex.java
@@ -18,7 +18,7 @@ package com.intellij.xml.index;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Pair;
-import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.util.PairConvertor;
@@ -87,7 +87,7 @@ public class SchemaTypeInheritanceIndex extends XmlIndex<Set<SchemaTypeInfo>> {
if (myShouldParseCurrent) {
if (myMap == null) {
try {
- myMap = XsdComplexTypeInfoBuilder.parse(CharArrayUtil.readerFromCharSequence(VfsUtil.loadText(myCurrentFile)));
+ myMap = XsdComplexTypeInfoBuilder.parse(CharArrayUtil.readerFromCharSequence(VfsUtilCore.loadText(myCurrentFile)));
type.add(new HashSet<SchemaTypeInfo>(myMap.get(new SchemaTypeInfo(name, true, ns))));
}
catch (IOException e) {
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/index/XmlIndex.java b/xml/xml-psi-impl/src/com/intellij/xml/index/XmlIndex.java
index fb5242cb3e51..28a43ab9bf52 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/index/XmlIndex.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/index/XmlIndex.java
@@ -45,10 +45,12 @@ public abstract class XmlIndex<V> extends FileBasedIndexExtension<String, V> {
protected static GlobalSearchScope createFilter(final Project project) {
final GlobalSearchScope projectScope = GlobalSearchScope.allScope(project);
return new GlobalSearchScope(project) {
+ @Override
public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
return projectScope.compare(file1, file2);
}
+ @Override
public boolean isSearchInModuleContent(@NotNull Module aModule) {
return true;
}
@@ -71,6 +73,7 @@ public abstract class XmlIndex<V> extends FileBasedIndexExtension<String, V> {
final ProjectFileIndex fileIndex = ProjectRootManager.getInstance(module.getProject()).getFileIndex();
return new VirtualFileFilter() {
+ @Override
public boolean accept(final VirtualFile file) {
Module moduleForFile = fileIndex.getModuleForFile(file);
if (moduleForFile != null) { // in module content
@@ -95,14 +98,17 @@ public abstract class XmlIndex<V> extends FileBasedIndexExtension<String, V> {
};
}
+ @Override
@NotNull
public KeyDescriptor<String> getKeyDescriptor() {
return KEY_DESCRIPTOR;
}
+ @Override
@NotNull
public FileBasedIndex.InputFilter getInputFilter() {
return new DefaultFileTypeSpecificInputFilter(XmlFileType.INSTANCE, DTDFileType.INSTANCE) {
+ @Override
public boolean acceptInput(@NotNull final VirtualFile file) {
FileType fileType = file.getFileType();
final String extension = file.getExtension();
@@ -112,10 +118,12 @@ public abstract class XmlIndex<V> extends FileBasedIndexExtension<String, V> {
};
}
+ @Override
public boolean dependsOnFileContent() {
return true;
}
+ @Override
public int getVersion() {
return 0;
}
diff --git a/xml/impl/src/com/intellij/xml/index/XmlTagNamesIndex.java b/xml/xml-psi-impl/src/com/intellij/xml/index/XmlTagNamesIndex.java
index 7d0a0dbd6eda..7d0a0dbd6eda 100644
--- a/xml/impl/src/com/intellij/xml/index/XmlTagNamesIndex.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/index/XmlTagNamesIndex.java
diff --git a/xml/impl/src/com/intellij/xml/index/XsdComplexTypeInfoBuilder.java b/xml/xml-psi-impl/src/com/intellij/xml/index/XsdComplexTypeInfoBuilder.java
index 75b8dd36f507..21bc1c99279c 100644
--- a/xml/impl/src/com/intellij/xml/index/XsdComplexTypeInfoBuilder.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/index/XsdComplexTypeInfoBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/impl/src/com/intellij/xml/index/XsdTagNameBuilder.java b/xml/xml-psi-impl/src/com/intellij/xml/index/XsdTagNameBuilder.java
index 1754fbdffbd1..c8426b05f491 100644
--- a/xml/impl/src/com/intellij/xml/index/XsdTagNameBuilder.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/index/XsdTagNameBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -58,12 +58,14 @@ public class XsdTagNameBuilder extends NanoXmlUtil.IXMLBuilderAdapter {
private final Collection<String> myTagNames = new ArrayList<String>();
private boolean myElementStarted;
+ @Override
public void startElement(@NonNls final String name, @NonNls final String nsPrefix, @NonNls final String nsURI, final String systemID, final int lineNr)
throws Exception {
myElementStarted = nsPrefix != null && nsURI.equals("http://www.w3.org/2001/XMLSchema") && name.equals("element");
}
+ @Override
public void addAttribute(@NonNls final String key, final String nsPrefix, final String nsURI, final String value, final String type)
throws Exception {
if (myElementStarted && key.equals("name")) {
diff --git a/xml/impl/src/com/intellij/xml/util/ColorIconCache.java b/xml/xml-psi-impl/src/com/intellij/xml/util/ColorIconCache.java
index c0f01ad354eb..ae347b0320d1 100644
--- a/xml/impl/src/com/intellij/xml/util/ColorIconCache.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/ColorIconCache.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/HTMLControls.java b/xml/xml-psi-impl/src/com/intellij/xml/util/HTMLControls.java
index 1611b7819155..f8797c6b2273 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/HTMLControls.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/HTMLControls.java
@@ -39,7 +39,7 @@ import java.util.Set;
* @author Dennis.Ushakov
*/
public class HTMLControls {
- private static Logger LOG = Logger.getInstance(HTMLControls.class);
+ private static final Logger LOG = Logger.getInstance(HTMLControls.class);
private static Control[] ourControls;
public static Control[] getControls() {
diff --git a/xml/impl/src/com/intellij/xml/util/HtmlFileNSInfoProvider.java b/xml/xml-psi-impl/src/com/intellij/xml/util/HtmlFileNSInfoProvider.java
index e9da0571db5d..ce6b02ab2032 100644
--- a/xml/impl/src/com/intellij/xml/util/HtmlFileNSInfoProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/HtmlFileNSInfoProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/IncludedXmlText.java b/xml/xml-psi-impl/src/com/intellij/xml/util/IncludedXmlText.java
index b98a360193b0..51120a9baa61 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/IncludedXmlText.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/IncludedXmlText.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -51,34 +51,42 @@ public class IncludedXmlText extends IncludedXmlElement<XmlText> implements XmlT
return getOriginal().getText();
}
+ @Override
public String getValue() {
return getOriginal().getValue();
}
+ @Override
public void setValue(String s) throws IncorrectOperationException {
throw new UnsupportedOperationException("Can't modify included elements");
}
+ @Override
public XmlElement insertAtOffset(XmlElement element, int displayOffset) throws IncorrectOperationException {
throw new UnsupportedOperationException("Can't modify included elements");
}
+ @Override
public void insertText(String text, int displayOffset) throws IncorrectOperationException {
throw new UnsupportedOperationException("Can't modify included elements");
}
+ @Override
public void removeText(int displayStart, int displayEnd) throws IncorrectOperationException {
throw new UnsupportedOperationException("Can't modify included elements");
}
+ @Override
public int physicalToDisplay(int offset) {
return getOriginal().physicalToDisplay(offset);
}
+ @Override
public int displayToPhysical(int offset) {
return getOriginal().displayToPhysical(offset);
}
+ @Override
@Nullable
public XmlText split(int displayIndex) {
throw new UnsupportedOperationException("Can't modify included elements");
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/InclusionProvider.java b/xml/xml-psi-impl/src/com/intellij/xml/util/InclusionProvider.java
index 7c05a0aaf750..d1fdde132e12 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/InclusionProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/InclusionProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -46,6 +46,7 @@ class InclusionProvider implements CachedValueProvider<PsiElement[]> {
return CachedValuesManager.getCachedValue(xincludeTag, new InclusionProvider(xincludeTag));
}
+ @Override
public Result<PsiElement[]> compute() {
PsiElement[] result = RecursionManager.doPreventingRecursion(myXincludeTag, true, new NullableComputable<PsiElement[]>() {
@Override
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlApplicationComponent.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlApplicationComponent.java
index 764db5ac479d..513d280b8eee 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlApplicationComponent.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlApplicationComponent.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@ import com.intellij.xml.impl.schema.XmlElementDescriptorImpl;
* @author Maxim.Mossienko
*/
public class XmlApplicationComponent implements MetaDataContributor {
+ @Override
public void contributeMetaData(final MetaDataRegistrar registrar) {
{
registrar.registerMetaData(
diff --git a/xml/impl/src/com/intellij/xml/util/XmlIconProvider.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlIconProvider.java
index e12801d050f7..686b1540fb97 100644
--- a/xml/impl/src/com/intellij/xml/util/XmlIconProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlIconProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -35,6 +35,7 @@ public class XmlIconProvider extends IconProvider implements DumbAware {
@NonNls private static final String XSD_FILE_EXTENSION = "xsd";
@NonNls private static final String WSDL_FILE_EXTENSION = "wsdl";
+ @Override
@Nullable
public Icon getIcon(@NotNull final PsiElement element, final int _flags) {
if (element instanceof XmlFile) {
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlNSDescriptorSequence.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlNSDescriptorSequence.java
index 06ab056c8eb1..ead67f6cacf9 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlNSDescriptorSequence.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlNSDescriptorSequence.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -26,7 +26,6 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
/**
@@ -43,8 +42,7 @@ public class XmlNSDescriptorSequence implements XmlNSDescriptor{
}
public XmlNSDescriptorSequence(XmlNSDescriptor[] descriptors){
- for(int i = 0; i < descriptors.length; i++){
- final XmlNSDescriptor descriptor = descriptors[i];
+ for (final XmlNSDescriptor descriptor : descriptors) {
add(descriptor);
}
}
@@ -53,34 +51,31 @@ public class XmlNSDescriptorSequence implements XmlNSDescriptor{
sequence.add(descriptor);
}
+ @Override
public XmlElementDescriptor getElementDescriptor(@NotNull XmlTag tag){
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()){
- final XmlNSDescriptor descriptor = (XmlNSDescriptor) iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
final XmlElementDescriptor elementDescriptor = descriptor.getElementDescriptor(tag);
- if(elementDescriptor != null) return elementDescriptor;
+ if (elementDescriptor != null) return elementDescriptor;
}
return null;
}
+ @Override
@NotNull
public XmlElementDescriptor[] getRootElementsDescriptors(@Nullable final XmlDocument document) {
final List<XmlElementDescriptor> descriptors = new ArrayList<XmlElementDescriptor>();
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()) {
- final XmlNSDescriptor descriptor = (XmlNSDescriptor)iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
ContainerUtil.addAll(descriptors, descriptor.getRootElementsDescriptors(document));
}
return descriptors.toArray(new XmlElementDescriptor[descriptors.size()]);
}
+ @Override
public XmlFile getDescriptorFile(){
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()){
- final XmlNSDescriptor descriptor = (XmlNSDescriptor) iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
final XmlFile file = descriptor.getDescriptorFile();
- if(file != null) return file;
+ if (file != null) return file;
}
return null;
}
@@ -89,58 +84,52 @@ public class XmlNSDescriptorSequence implements XmlNSDescriptor{
return sequence;
}
+ @Override
public boolean isHierarhyEnabled() {
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()){
- final XmlNSDescriptor descriptor = (XmlNSDescriptor) iterator.next();
- if(descriptor.isHierarhyEnabled()) return true;
+ for (XmlNSDescriptor descriptor : sequence) {
+ if (descriptor.isHierarhyEnabled()) return true;
}
return false;
}
+ @Override
public PsiElement getDeclaration(){
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()){
- final XmlNSDescriptor descriptor = (XmlNSDescriptor) iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
final PsiElement declaration = descriptor.getDeclaration();
- if(declaration != null) return declaration;
+ if (declaration != null) return declaration;
}
return null;
}
+ @Override
public String getName(PsiElement context){
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()){
- final XmlNSDescriptor descriptor = (XmlNSDescriptor) iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
final String name = descriptor.getName(context);
- if(name != null) return name;
+ if (name != null) return name;
}
return null;
}
+ @Override
public String getName(){
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()){
- final XmlNSDescriptor descriptor = (XmlNSDescriptor) iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
final String name = descriptor.getName();
- if(name != null) return name;
+ if (name != null) return name;
}
return null;
}
+ @Override
public void init(PsiElement element){
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()){
- final XmlNSDescriptor descriptor = (XmlNSDescriptor) iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
descriptor.init(element);
}
}
+ @Override
public Object[] getDependences(){
final List<Object> ret = new ArrayList<Object>();
- final Iterator iterator = sequence.iterator();
- while(iterator.hasNext()) {
- final XmlNSDescriptor descriptor = (XmlNSDescriptor)iterator.next();
+ for (XmlNSDescriptor descriptor : sequence) {
ContainerUtil.addAll(ret, descriptor.getDependences());
}
return ret.toArray();
diff --git a/xml/impl/src/com/intellij/xml/util/XmlPrefixReferenceProvider.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlPrefixReferenceProvider.java
index a740db03aba0..2af1bfecf812 100644
--- a/xml/impl/src/com/intellij/xml/util/XmlPrefixReferenceProvider.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlPrefixReferenceProvider.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml.util;
import com.intellij.openapi.util.TextRange;
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlPsiUtil.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlPsiUtil.java
index 57cff1c08069..9f2453e0b515 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlPsiUtil.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlPsiUtil.java
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.xml.util;
import com.intellij.openapi.util.Key;
@@ -204,6 +219,7 @@ public class XmlPsiUtil {
if (value == null) {
value = CachedValuesManager.getManager(entityDecl.getProject()).createCachedValue(new CachedValueProvider<PsiElement>() {
+ @Override
public Result<PsiElement> compute() {
final PsiElement res = entityDecl.parse(targetFile, type, entityRef);
if (res == null) return new Result<PsiElement>(res, targetFile);
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlResourceResolver.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlResourceResolver.java
index fdd2690ac746..cc3269f38107 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlResourceResolver.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlResourceResolver.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -81,7 +81,7 @@ public class XmlResourceResolver implements XMLEntityResolver {
@Nullable
public PsiFile resolve(@Nullable final String baseSystemId, final String _systemId) {
if (LOG.isDebugEnabled()) {
- LOG.debug("enter: resolveEntity(baseSystemId='" + baseSystemId + "' systemId='" + _systemId + "," + super.toString() + "')");
+ LOG.debug("enter: resolveEntity(baseSystemId='" + baseSystemId + "' systemId='" + _systemId + "," + toString() + "')");
}
if (_systemId == null) return null;
@@ -95,6 +95,7 @@ public class XmlResourceResolver implements XMLEntityResolver {
final PsiFile[] result = new PsiFile[] { null };
final Runnable action = new Runnable() {
+ @Override
public void run() {
PsiFile baseFile = null;
VirtualFile vFile = null;
@@ -213,7 +214,7 @@ public class XmlResourceResolver implements XMLEntityResolver {
if (file != null) {
final String url = file.getUrl();
if (LOG.isDebugEnabled()) {
- LOG.debug("Adding external resource ref:"+systemId+","+url+","+super.toString());
+ LOG.debug("Adding external resource ref:"+systemId+","+url+","+ toString());
}
myExternalResourcesMap.put(systemId,url);
}
@@ -221,6 +222,7 @@ public class XmlResourceResolver implements XMLEntityResolver {
return psiFile;
}
+ @Override
@Nullable
public XMLInputSource resolveEntity(XMLResourceIdentifier xmlResourceIdentifier) throws XNIException, IOException {
String publicId = xmlResourceIdentifier.getLiteralSystemId() != null ?
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java
index b82f69bb7ffb..a513db49b121 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java
@@ -284,6 +284,7 @@ public class XmlUtil {
resources = XmlNamespaceIndex.getResourcesByNamespace(namespace, project, module);
final PsiManager psiManager = PsiManager.getInstance(project);
return ContainerUtil.mapNotNull(resources, new NullableFunction<IndexedRelevantResource<String, XsdNamespaceBuilder>, XmlFile>() {
+ @Override
public XmlFile fun(IndexedRelevantResource<String, XsdNamespaceBuilder> resource) {
PsiFile file = psiManager.findFile(resource.getFile());
return file instanceof XmlFile ? (XmlFile)file : null;
@@ -427,6 +428,7 @@ public class XmlUtil {
final XmlTag[] simpleContent = new XmlTag[1];
processXmlElements(((ComplexTypeDescriptor)type).getDeclaration(), new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlTag) {
final XmlTag tag = (XmlTag)element;
@@ -848,6 +850,7 @@ public class XmlUtil {
final XmlAttribute[] attributes = tag.getAttributes();
ContainerUtil.sort(list);
Arrays.sort(attributes, new Comparator<XmlAttribute>() {
+ @Override
public int compare(XmlAttribute attr1, XmlAttribute attr2) {
return attr1.getName().compareTo(attr2.getName());
}
@@ -890,6 +893,7 @@ public class XmlUtil {
tagsMap.put(tagName, tags);
PsiFile file = tag.isValid() ? tag.getContainingFile() : null;
processXmlElements(tag, new FilterElementProcessor(XmlTagFilter.INSTANCE) {
+ @Override
public void add(PsiElement element) {
XmlTag tag = (XmlTag)element;
if (!tags.contains(tag.getName())) {
@@ -953,6 +957,7 @@ public class XmlUtil {
public static boolean collectEnumerationValues(final XmlTag element, final HashSet<String> variants) {
return processEnumerationValues(element, new Processor<XmlTag>() {
+ @Override
public boolean process(XmlTag xmlTag) {
variants.add(xmlTag.getAttributeValue(VALUE_ATTR_NAME));
return true;
@@ -1146,6 +1151,7 @@ public class XmlUtil {
final PsiNamedElement[] result = new PsiNamedElement[1];
processXmlElements((XmlFile)currentElement, new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof PsiNamedElement) {
final String elementName = ((PsiNamedElement)element).getName();
@@ -1196,6 +1202,7 @@ public class XmlUtil {
myRequired = flag;
}
+ @Override
public int compareTo(Object o) {
if (o instanceof MyAttributeInfo) {
return myName.compareTo(((MyAttributeInfo)o).myName);
diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/documentation/CompositeAttributeTagDescriptor.java b/xml/xml-psi-impl/src/com/intellij/xml/util/documentation/CompositeAttributeTagDescriptor.java
index 53fdca8c4ee0..c23f3539c2e0 100644
--- a/xml/xml-psi-impl/src/com/intellij/xml/util/documentation/CompositeAttributeTagDescriptor.java
+++ b/xml/xml-psi-impl/src/com/intellij/xml/util/documentation/CompositeAttributeTagDescriptor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,7 +24,7 @@ import java.util.List;
* @author maxim
*/
class CompositeAttributeTagDescriptor extends HtmlAttributeDescriptor {
- List<HtmlAttributeDescriptor> attributes = new LinkedList<HtmlAttributeDescriptor>();
+ final List<HtmlAttributeDescriptor> attributes = new LinkedList<HtmlAttributeDescriptor>();
HtmlAttributeDescriptor findHtmlAttributeInContext(XmlTag tag) {
if (tag == null) return null;
diff --git a/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/AbstractXmlTagTreeElement.java b/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/AbstractXmlTagTreeElement.java
index 2383784267ae..55e994d05619 100644
--- a/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/AbstractXmlTagTreeElement.java
+++ b/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/AbstractXmlTagTreeElement.java
@@ -36,6 +36,7 @@ public abstract class AbstractXmlTagTreeElement<T extends XmlElement> extends Ps
(XmlStructureViewElementProvider[])Extensions.getExtensions(XmlStructureViewElementProvider.EXTENSION_POINT_NAME);
return ContainerUtil.map2List(subTags, new Function<XmlTag, StructureViewTreeElement>() {
+ @Override
public StructureViewTreeElement fun(final XmlTag xmlTag) {
for (final XmlStructureViewElementProvider provider : providers) {
final StructureViewTreeElement element = provider.createCustomXmlTagTreeElement(xmlTag);
diff --git a/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/DtdFileTreeElement.java b/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/DtdFileTreeElement.java
index 8ca2b8933572..c1c811b55c53 100644
--- a/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/DtdFileTreeElement.java
+++ b/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/DtdFileTreeElement.java
@@ -36,6 +36,7 @@ public class DtdFileTreeElement extends PsiTreeElementBase<XmlFile> {
super(file);
}
+ @Override
@NotNull
public Collection<StructureViewTreeElement> getChildrenBase() {
return collectElements(getElement().getDocument());
@@ -45,6 +46,7 @@ public class DtdFileTreeElement extends PsiTreeElementBase<XmlFile> {
final List<StructureViewTreeElement> elements = new ArrayList<StructureViewTreeElement>();
XmlUtil.processXmlElements(element, new PsiElementProcessor() {
+ @Override
public boolean execute(@NotNull final PsiElement element) {
if (element instanceof XmlElementDecl ||
element instanceof XmlEntityDecl) {
@@ -56,6 +58,7 @@ public class DtdFileTreeElement extends PsiTreeElementBase<XmlFile> {
return elements;
}
+ @Override
public String getPresentableText() {
return getElement().getName();
}
@@ -72,20 +75,24 @@ public class DtdFileTreeElement extends PsiTreeElementBase<XmlFile> {
super(element);
}
+ @Override
@NotNull
public Collection<StructureViewTreeElement> getChildrenBase() {
return Collections.emptyList();
}
+ @Override
public String getPresentableText() {
final PsiNamedElement namedElement = getElement();
return namedElement != null ? namedElement.getName():"";
}
+ @Override
public Icon getIcon(final boolean open) {
return PlatformIcons.XML_TAG_ICON;
}
+ @Override
public String getLocationString() {
final XmlElement owner = (XmlElement)getElement();
diff --git a/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/XmlFileTreeElement.java b/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/XmlFileTreeElement.java
index f13fe1ccba61..d9447ea774a7 100644
--- a/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/XmlFileTreeElement.java
+++ b/xml/xml-structure-view-impl/src/com/intellij/ide/structureView/impl/xml/XmlFileTreeElement.java
@@ -29,6 +29,7 @@ public class XmlFileTreeElement extends AbstractXmlTagTreeElement<XmlFile> {
super(file);
}
+ @Override
@NotNull
public Collection<StructureViewTreeElement> getChildrenBase() {
final XmlDocument document = getElement().getDocument();
@@ -66,6 +67,7 @@ public class XmlFileTreeElement extends AbstractXmlTagTreeElement<XmlFile> {
return structureViewTreeElements;
}
+ @Override
public String getPresentableText() {
return getElement().getName();
}
diff --git a/xml/xml-structure-view-impl/src/com/intellij/lang/html/structureView/Html5SectionsProcessor.java b/xml/xml-structure-view-impl/src/com/intellij/lang/html/structureView/Html5SectionsProcessor.java
index 2ca1c8b3ca63..fc5361b11f53 100644
--- a/xml/xml-structure-view-impl/src/com/intellij/lang/html/structureView/Html5SectionsProcessor.java
+++ b/xml/xml-structure-view-impl/src/com/intellij/lang/html/structureView/Html5SectionsProcessor.java
@@ -36,7 +36,7 @@ class Html5SectionsProcessor {
private static class SectionHolder {
private final XmlTag myTag;
- private LinkedList<Section> myChildren = new LinkedList<Section>();
+ private final LinkedList<Section> myChildren = new LinkedList<Section>();
private SectionHolder(final XmlTag tag) {
myTag = tag;
@@ -63,6 +63,7 @@ class Html5SectionsProcessor {
super(tag);
}
+ @Override
public void addChildSection(final Section section) {
section.myParent = this;
super.addChildSection(section);
@@ -87,6 +88,7 @@ class Html5SectionsProcessor {
private static final String HGROUP_ELEMENT = "hgroup";
private final Collection<SectionHolder> myRootSectionHolders = new SortedList<SectionHolder>(new Comparator<SectionHolder>() {
+ @Override
public int compare(final SectionHolder first, final SectionHolder second) {
return first.getTag().getTextRange().getStartOffset() - second.getTag().getTextRange().getStartOffset();
}
@@ -216,6 +218,7 @@ class Html5SectionsProcessor {
private static Computable<Collection<StructureViewTreeElement>> createChildrenComputable(final Collection<Section> children) {
return new Computable<Collection<StructureViewTreeElement>>() {
+ @Override
public Collection<StructureViewTreeElement> compute() {
final Collection<StructureViewTreeElement> result = new ArrayList<StructureViewTreeElement>();
for (Section section : children) {