├── .gitignore ├── .idea ├── codeStyleSettings.xml ├── codeStyles │ ├── Project.xml │ └── codeStyleConfig.xml ├── copyright │ ├── LGPL.xml │ └── profiles_settings.xml ├── encodings.xml ├── gradle.xml ├── inspectionProfiles │ └── Project_Default.xml ├── misc.xml ├── qaplug_profiles.xml └── vcs.xml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTION-AGREEMENT ├── COPYING ├── COPYING.LESSER ├── NOTICE ├── README-pre-fork.md ├── README.md ├── bitbucket-pipelines.yml ├── build.gradle ├── common ├── build.gradle └── src │ └── com │ └── intellij │ └── idea │ └── plugin │ └── hybris │ ├── common │ ├── HybrisConstants.java │ └── HybrisUtil.java │ └── project │ └── descriptors │ └── HybrisModuleDescriptorType.java ├── community.gradle ├── gen ├── JFlex.jar └── com │ └── intellij │ └── idea │ └── plugin │ └── hybris │ ├── business │ └── process │ │ └── jaxb │ │ ├── Action.java │ │ ├── Case.java │ │ ├── Choice.java │ │ ├── ContextParameter.java │ │ ├── End.java │ │ ├── EndState.java │ │ ├── Join.java │ │ ├── Localizedmessage.java │ │ ├── Notify.java │ │ ├── ObjectFactory.java │ │ ├── ParameterUse.java │ │ ├── Process.java │ │ ├── Script.java │ │ ├── ScriptAction.java │ │ ├── Split.java │ │ ├── TargetNode.java │ │ ├── Timeout.java │ │ ├── Transition.java │ │ ├── UserGroupType.java │ │ └── Wait.java │ ├── impex │ ├── ImpexParser.java │ └── psi │ │ ├── ImpexAnyAttributeName.java │ │ ├── ImpexAnyAttributeValue.java │ │ ├── ImpexAnyHeaderMode.java │ │ ├── ImpexAnyHeaderParameterName.java │ │ ├── ImpexAttribute.java │ │ ├── ImpexBeanShell.java │ │ ├── ImpexComment.java │ │ ├── ImpexFullHeaderParameter.java │ │ ├── ImpexFullHeaderType.java │ │ ├── ImpexHeaderLine.java │ │ ├── ImpexHeaderTypeName.java │ │ ├── ImpexMacroDeclaration.java │ │ ├── ImpexMacroNameDec.java │ │ ├── ImpexMacroUsageDec.java │ │ ├── ImpexMacroValue.java │ │ ├── ImpexMacroValueDec.java │ │ ├── ImpexModifiers.java │ │ ├── ImpexParameter.java │ │ ├── ImpexParameters.java │ │ ├── ImpexRootMacroUsage.java │ │ ├── ImpexString.java │ │ ├── ImpexSubParameters.java │ │ ├── ImpexTypes.java │ │ ├── ImpexValue.java │ │ ├── ImpexValueGroup.java │ │ ├── ImpexValueLine.java │ │ ├── ImpexVisitor.java │ │ └── impl │ │ ├── ImpexAnyAttributeNameImpl.java │ │ ├── ImpexAnyAttributeValueImpl.java │ │ ├── ImpexAnyHeaderModeImpl.java │ │ ├── ImpexAnyHeaderParameterNameImpl.java │ │ ├── ImpexAttributeImpl.java │ │ ├── ImpexBeanShellImpl.java │ │ ├── ImpexCommentImpl.java │ │ ├── ImpexFullHeaderParameterImpl.java │ │ ├── ImpexFullHeaderTypeImpl.java │ │ ├── ImpexHeaderLineImpl.java │ │ ├── ImpexHeaderTypeNameImpl.java │ │ ├── ImpexMacroDeclarationImpl.java │ │ ├── ImpexMacroNameDecImpl.java │ │ ├── ImpexMacroUsageDecImpl.java │ │ ├── ImpexMacroValueDecImpl.java │ │ ├── ImpexMacroValueImpl.java │ │ ├── ImpexModifiersImpl.java │ │ ├── ImpexParameterImpl.java │ │ ├── ImpexParametersImpl.java │ │ ├── ImpexRootMacroUsageImpl.java │ │ ├── ImpexStringImpl.java │ │ ├── ImpexSubParametersImpl.java │ │ ├── ImpexValueGroupImpl.java │ │ ├── ImpexValueImpl.java │ │ └── ImpexValueLineImpl.java │ └── project │ └── settings │ └── jaxb │ ├── extensioninfo │ ├── CoreModuleType.java │ ├── ExtensionInfo.java │ ├── ExtensionType.java │ ├── HmcModuleType.java │ ├── MetaType.java │ ├── ObjectFactory.java │ ├── RequiresExtensionType.java │ └── WebModuleType.java │ └── localextensions │ ├── ExtensionType.java │ ├── ExtensionsType.java │ ├── Hybrisconfig.java │ ├── ObjectFactory.java │ ├── ScanType.java │ └── WebappType.java ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── idea-flex.skeleton ├── jflex-1.7.0.jar ├── resources ├── META-INF │ ├── ant-support-optional-dependencies.xml │ ├── diagram-optional-dependencies.xml │ ├── eclipse-support-optional-dependencies.xml │ ├── gradle-support-optional-dependencies.xml │ ├── groovy-optional-dependencies.xml │ ├── java-optional-dependencies.xml │ ├── javaee-optional-dependencies.xml │ ├── junit-optional-dependencies.xml │ ├── lang-optional-dependencies.xml │ ├── maven-support-optional-dependencies.xml │ ├── plugin-community.xml │ ├── plugin-extensions.xml │ ├── plugin-internal.xml │ ├── plugin-release-info.xml │ ├── plugin.xml │ ├── properties-optional-dependencies.xml │ └── spring-optional-dependencies.xml ├── colorSchemes │ ├── ImpexDarcula.xml │ └── ImpexDefault.xml ├── fileTemplates │ └── internal │ │ ├── FlexibleSearch File.fxs.ft │ │ ├── FlexibleSearch File.fxs.html │ │ ├── Impex File.impex.ft │ │ └── Impex File.impex.html ├── i18n │ └── HybrisBundle.properties ├── icons │ ├── actionIcon.svg │ ├── beanFile.svg │ ├── beanFile_dark.svg │ ├── beanIcon.svg │ ├── console │ │ └── solr.svg │ ├── endIcon.svg │ ├── fileTypes │ │ └── impexFile.svg │ ├── flexibleSearchFile_dark.svg │ ├── grayHybrisIcon.png │ ├── grayHybrisIcon.svg │ ├── grayHybrisIcon_dark.png │ ├── grayHybrisIcon_dark.svg │ ├── gutter │ │ └── populator.svg │ ├── hybrisIcon.png │ ├── hybrisIcon.svg │ ├── hybrisIcon_13x13.svg │ ├── hybrisRemoteIcon.svg │ ├── hybris_remote.png │ ├── jar-gray.png │ ├── joinIcon.svg │ ├── localized.svg │ ├── macros.png │ ├── macros.svg │ ├── notifyIcon.svg │ ├── scriptIcon.svg │ ├── splitIcon.svg │ ├── typeSystem.png │ ├── typeSystem.svg │ ├── typeSystem_dark.png │ ├── typeSystem_dark.svg │ └── waitIcon.svg ├── inspectionDescriptions │ ├── ConfigProcessorInspection.html │ ├── DuplicateBeanDefinitionInspection.html │ ├── NoUniqueValueInspection.html │ ├── TSVBased.html │ ├── UniqueAttributeWithoutIndex.html │ ├── UniqueDocumentId.html │ ├── UnknownConfigPropertyInspection.html │ ├── UnknownMacrosInspection.html │ └── UnknownTypeAttributeInspection.html ├── liveTemplates │ └── Impex.xml ├── ruleset.xml └── ruleset.xsd ├── rt-ant ├── build.gradle └── src │ └── com │ └── intellij │ ├── idea │ └── plugin │ │ └── hybris │ │ └── ant │ │ └── AntGenResult.java │ └── rt │ └── ant │ └── execution │ ├── AntMain2.java │ ├── HybrisAnsiAntLogger.java │ ├── HybrisIdeaAntLogger.java │ └── HybrisParsingAntLogger.java ├── runConfigurations ├── Clean.xml ├── Clean_And_Build.xml └── Run IDE.xml ├── settings.gradle └── src ├── Impex.bnf ├── Impex.flex └── com └── intellij └── idea └── plugin └── hybris ├── actions ├── ActionUtils.java └── HybrisToolsActionGroup.java ├── ant ├── AntTreeUpdatingHack.java └── HybrisAntBuildListener.java ├── beans ├── BeansDomFileDescription.java ├── BeansPropertyNameConverter.java ├── BeansUtils.java └── model │ ├── AbstractPojo.java │ ├── AbstractPojos.java │ ├── Annotations.java │ ├── Bean.java │ ├── Enum.java │ ├── Import.java │ ├── Property.java │ └── Scope.java ├── business └── process │ ├── common │ ├── BpGraphNode.java │ ├── BpGraphService.java │ └── impl │ │ ├── DefaultBpGraphNode.java │ │ └── DefaultBpGraphService.java │ ├── diagram │ ├── BpDiagramColorManager.java │ ├── BpDiagramElementManager.java │ ├── BpDiagramProvider.java │ ├── BpDiagramVfsResolver.java │ └── impl │ │ ├── BpDiagramColorManagerIml.java │ │ ├── BpDiagramDataModel.java │ │ ├── BpDiagramElementManagerIml.java │ │ ├── BpDiagramFileEdge.java │ │ ├── BpDiagramFileNode.java │ │ ├── DefaultBpDiagramProvider.java │ │ └── DefaultBpDiagramVfsResolver.java │ └── jaxb │ ├── model │ └── BpGenericAction.java │ └── services │ ├── BpJaxbService.java │ └── impl │ └── DefaultBpJaxbService.java ├── common ├── JavaConstants.java ├── Version.java ├── services │ ├── CommonIdeaService.java │ ├── NotificationService.java │ ├── VirtualFileSystemService.java │ └── impl │ │ ├── DefaultCommonIdeaService.java │ │ ├── DefaultNotificationService.java │ │ └── DefaultVirtualFileSystemService.java └── utils │ ├── CollectionUtils.java │ ├── HybrisI18NBundleUtils.java │ ├── HybrisIcons.java │ ├── HybrisXmlFileType.java │ ├── PsiItemXmlUtil.java │ └── PsiXmlUtils.java ├── completion ├── ExtensionsNameContributor.java └── provider │ └── ItemTypeCodeCompletionProvider.java ├── gotoClass ├── CustomGotoClassContributor.java └── OotbClassesSearchScope.java ├── gradle └── GradleSupport.java ├── impex ├── ImpexLanguage.java ├── ImpexLexer.java ├── ImpexLexerAdapter.java ├── ImpexParserDefinition.java ├── assistance │ ├── AbstractImpexHighlighterService.java │ ├── DefaultImpexColumnHighlighterService.java │ ├── DefaultImpexHeaderNameHighlighterService.java │ ├── ImpexColumnBreadcrumbsProvider.java │ ├── ImpexColumnHighlighterService.java │ ├── ImpexHeaderHighlighterComponent.java │ ├── ImpexHeaderNameHighlighterService.java │ └── ImpexHighlighterService.java ├── commenter │ └── ImpexCommenter.java ├── completion │ ├── ImpexCompletionContributor.java │ └── provider │ │ ├── ImpexHeaderAttributeModifierNameCompletionProvider.java │ │ ├── ImpexHeaderAttributeModifierValueCompletionProvider.java │ │ ├── ImpexHeaderItemTypeAttributeNameCompletionProvider.java │ │ ├── ImpexHeaderItemTypeParameterNameCompletionProvider.kt │ │ ├── ImpexHeaderTypeModifierNameCompletionProvider.java │ │ ├── ImpexHeaderTypeModifierValueCompletionProvider.java │ │ ├── ImpexKeywordCompletionProvider.java │ │ ├── ImpexMacrosCompletionProvider.java │ │ └── ImpexMacrosConfigCompletionProvider.kt ├── constants │ ├── ImpexConstants.java │ ├── ImpexKeywords.java │ └── modifier │ │ ├── AttributeModifier.java │ │ ├── BooleanModifierValue.java │ │ ├── ImpexModifier.java │ │ ├── ImpexModifierValue.java │ │ ├── ImpexModifierValueToStringConversionFunction.java │ │ ├── ImpexProcessorModifier.java │ │ ├── ModeModifierValue.java │ │ └── TypeModifier.java ├── file │ ├── ImpexFileType.java │ ├── ImpexFileTypeFactory.java │ └── actions │ │ └── ImpexFileCreateAction.java ├── find │ └── findUsages │ │ ├── ImpexFindUsagesProvider.java │ │ └── MacrosFindUsagesHandlerFactory.java ├── folding │ ├── ImpexFoldingBuilder.java │ ├── ImpexFoldingDescriptor.java │ ├── ImpexFoldingLinesBuilder.java │ ├── ImpexFoldingPlaceholderBuilder.java │ ├── ImpexFoldingPlaceholderBuilderFactory.java │ ├── ImpexMacroDescriptor.java │ ├── ImpexMacroFoldingBuilder.java │ ├── ImpexMacroUtils.java │ ├── PsiElementFilterFactory.java │ ├── simple │ │ ├── DefaultFoldingBlocksFilter.java │ │ └── DefaultImpexFoldingPlaceholderBuilder.java │ └── smart │ │ ├── ImpexFoldingLinesFilter.java │ │ ├── SmartFoldingBlocksFilter.java │ │ └── SmartImpexFoldingPlaceholderBuilder.java ├── formatting │ ├── AlignmentStrategy.java │ ├── ColumnsAlignmentStrategy.java │ ├── ImpexBlock.java │ ├── ImpexCodeStyleSettings.java │ ├── ImpexCodeStyleSettingsProvider.java │ ├── ImpexFormattingModelBuilder.java │ ├── ImpexLanguageCodeStyleSettingsProvider.java │ └── TableAlignmentStrategy.java ├── highlighting │ ├── DefaultImpexSyntaxHighlighter.java │ ├── ImpexColorSettingsPage.java │ ├── ImpexHighlighterColors.java │ ├── ImpexSyntaxHighlighter.java │ ├── ImpexSyntaxHighlighterFactory.java │ └── findUsages │ │ ├── HighlightMacrosHandler.java │ │ └── HighlightMacrosHandlerFactory.java ├── injection │ ├── ImpexGroovyLanguageInjector.kt │ └── ImpexXmlLanguageInjector.kt ├── inspection │ ├── ConfigProcessorInspection.kt │ ├── NoUniqueValueInspection.kt │ ├── UniqueAttributeWithoutIndexInspection.java │ ├── UniqueDocumentIdInspection.kt │ ├── UnknownConfigPropertyInspection.kt │ ├── UnknownMacrosInspection.kt │ ├── UnknownTypeAttributeInspection.kt │ └── analyzer │ │ └── ImpexModificationValueAnalyzer.kt ├── liveTemplates │ ├── ImpexContextType.java │ └── ImpexTemplateProvider.java ├── psi │ ├── ImpexElementType.java │ ├── ImpexFile.java │ ├── ImpexPsiNamedElement.kt │ ├── ImpexTokenType.java │ ├── gotoHandler │ │ └── ImpexMacrosGoToDeclarationHandler.java │ ├── impl │ │ └── ImpexStringMixin.java │ ├── references │ │ ├── FunctionTypeSystemAttributeReference.kt │ │ ├── ImpexAnyHeaderParameterNameMixin.java │ │ ├── ImpexAttributeValueMixin.kt │ │ ├── ImpexDocumentIdReference.kt │ │ ├── ImpexHeaderTypeNameMixin.java │ │ ├── ImpexJavaClassBaseReference.kt │ │ ├── ImpexMacrosReferenceBase.java │ │ ├── ImpexMacrosValueMixin.kt │ │ ├── ImpexParameterMixin.kt │ │ ├── ImpexPropertiesBaseReference.kt │ │ ├── TypeSystemAttributeReference.java │ │ ├── TypeSystemItemReference.java │ │ └── result │ │ │ └── EnumResolveResult.kt │ └── util │ │ └── ImpexPsiNamedElementUtils.kt ├── rename │ ├── ImpexMacrosRenameHandler.kt │ ├── manipulator │ │ └── ImpexMacrosManipulator.kt │ └── processor │ │ └── ImpexMacrosRenameProcessor.kt ├── search │ └── ImpexReferenceSearcher.java ├── tableFormatting │ ├── ImpexTableEditor.java │ └── actions │ │ ├── AbstractImpexTableFormatAction.java │ │ ├── ImpexTableSelectAction.java │ │ ├── handler │ │ └── ImpexTableActionHandler.java │ │ └── operation │ │ ├── AbstractOperation.java │ │ └── SelectImpexTableOperation.java ├── utils │ ├── CommonAstUtils.java │ ├── CommonPsiUtils.java │ ├── ImpexParserUtils.java │ ├── ImpexPsiUtils.java │ └── ProjectPropertiesUtils.kt └── view │ ├── ImpexHeaderParameterElement.java │ ├── ImpexHeaderTreeElement.java │ ├── ImpexRootTreeElement.java │ ├── ImpexStructureViewBuilder.java │ ├── ImpexStructureViewBuilderProvider.java │ ├── ImpexStructureViewComponent.java │ └── ImpexStructureViewModel.java ├── inspections ├── DuplicateBeanDefinitionInspection.kt └── util │ ├── BeanDefinitionCountHolder.kt │ └── workaround-KT-25125.kt ├── jsp └── JspPropertyFoldingBuilder.java ├── linemaker ├── HybrisBeanLineMakerProvider.kt ├── HybrisItemLineMakerProvider.java └── HybrisPopulatorLineMakerProvider.kt ├── moduleDiagram ├── ModuleDepDiagramColorManager.java ├── ModuleDepDiagramDataModel.java ├── ModuleDepDiagramEdge.java ├── ModuleDepDiagramElementManager.java ├── ModuleDepDiagramItem.java ├── ModuleDepDiagramNode.java ├── ModuleDepDiagramNodeContentManager.java ├── ModuleDepDiagramProvider.java ├── ModuleDepDiagramVfsResolver.java ├── ModuleDepDiagramVisibilityManager.java ├── ShowModuleDependencyDiagramAction.java └── TarjanCircularDetection.java ├── notifications └── NotificationUtil.java ├── project ├── AbstractHybrisProjectImportBuilder.java ├── DefaultHybrisProjectImportBuilder.java ├── HybrisProjectImportProvider.java ├── HybrisProjectOpenProcessor.java ├── actions │ └── ProjectRefreshAction.java ├── components │ ├── HybrisProjectApplicationComponent.java │ └── HybrisProjectManagerListener.java ├── configurators │ ├── AntConfigurator.java │ ├── CompilerOutputPathsConfigurator.java │ ├── ConfiguratorFactory.java │ ├── ContentRootConfigurator.java │ ├── DataSourcesConfigurator.java │ ├── EclipseConfigurator.java │ ├── FacetConfigurator.java │ ├── GradleConfigurator.java │ ├── GroupModuleConfigurator.java │ ├── HybrisConfiguratorCache.java │ ├── JavaCompilerConfigurator.java │ ├── JavadocModuleConfigurator.java │ ├── LibRootsConfigurator.java │ ├── LoadedConfigurator.java │ ├── MavenConfigurator.java │ ├── ModuleSettingsConfigurator.java │ ├── ModulesDependenciesConfigurator.java │ ├── RunConfigurationConfigurator.java │ ├── SearchScopeConfigurator.java │ ├── SpringConfigurator.java │ ├── TestRunConfigurationConfigurator.java │ ├── VersionControlSystemConfigurator.java │ └── impl │ │ ├── DebugRunConfigurationConfigurator.java │ │ ├── DefaultAntConfigurator.java │ │ ├── DefaultCompilerOutputPathsConfigurator.java │ │ ├── DefaultConfiguratorFactory.java │ │ ├── DefaultEclipseConfigurator.java │ │ ├── DefaultGradleConfigurator.java │ │ ├── DefaultGroupModuleConfigurator.java │ │ ├── DefaultJavaCompilerConfigurator.java │ │ ├── DefaultJavadocModuleConfigurator.java │ │ ├── DefaultLibRootsConfigurator.java │ │ ├── DefaultLoadedConfigurator.java │ │ ├── DefaultMavenConfigurator.java │ │ ├── DefaultModuleSettingsConfigurator.java │ │ ├── DefaultModulesDependenciesConfigurator.java │ │ ├── DefaultSearchScopeConfigurator.java │ │ ├── DefaultSpringConfigurator.java │ │ ├── DefaultVersionControlSystemConfigurator.java │ │ ├── ReadOnlyContentRootConfigurator.java │ │ ├── RegularContentRootConfigurator.java │ │ ├── SpringFacetConfigurator.java │ │ └── WebFacetConfigurator.java ├── descriptors │ ├── AbstractHybrisModuleDescriptor.java │ ├── ConfigHybrisModuleDescriptor.java │ ├── CoreHybrisModuleDescriptor.java │ ├── CustomHybrisModuleDescriptor.java │ ├── DefaultHybrisModuleDescriptorFactory.java │ ├── DefaultHybrisProjectDescriptor.java │ ├── DefaultJavaLibraryDescriptor.java │ ├── EclipseModuleDescriptor.java │ ├── ExtHybrisModuleDescriptor.java │ ├── GradleModuleDescriptor.java │ ├── HybrisModuleDescriptor.java │ ├── HybrisModuleDescriptorFactory.java │ ├── HybrisProjectDescriptor.java │ ├── JavaLibraryDescriptor.java │ ├── MavenModuleDescriptor.java │ ├── OotbHybrisModuleDescriptor.java │ ├── PlatformHybrisModuleDescriptor.java │ ├── RegularHybrisModuleDescriptor.java │ └── RootModuleDescriptor.java ├── exceptions │ └── HybrisConfigurationException.java ├── providers │ └── HybrisWritingAccessProvider.java ├── services │ ├── HybrisProjectService.java │ └── impl │ │ └── DefaultHybrisProjectService.java ├── tasks │ ├── DirectoriesScannerErrorsProcessor.java │ ├── DirectoriesScannerProgressIndicatorUpdaterProcessor.java │ ├── ImportProjectProgressModalWindow.java │ ├── SearchHybrisDistributionDirectoryTaskModalWindow.java │ ├── SearchModulesRootsTaskModalWindow.java │ └── TaskProgressProcessor.java ├── utils │ ├── FileUtils.java │ ├── FindHybrisModuleDescriptorByName.java │ ├── HybrisRootUtil.java │ ├── ModuleGroupUtils.java │ ├── PluginCommon.java │ └── Processor.java └── wizard │ ├── AbstractSelectModulesToImportStep.java │ ├── CheckRequiredPluginsStep.form │ ├── CheckRequiredPluginsStep.java │ ├── DiscountImportstep.form │ ├── DiscountImportstep.java │ ├── HybrisWorkspaceRootStep.form │ ├── HybrisWorkspaceRootStep.java │ ├── InformationStep.form │ ├── InformationStep.java │ ├── NonGuiSupport.java │ ├── SelectHybrisModulesToImportStep.java │ └── SelectOtherModulesToImportStep.java ├── psi └── references │ └── TypeSystemReferenceBase.java ├── reference ├── HybrisEnumItemReference.kt ├── HybrisEnumLiteralItemReference.java ├── HybrisModelItemReference.java ├── contributor │ ├── HybrisItemXmlReferenceContributor.java │ ├── HybrisProcessReferenceContributor.java │ └── HybrisSpringProcessReferenceContributor.java └── provider │ ├── HybrisEnumItemReferenceProvider.java │ ├── HybrisEnumLiteralItemReferenceProvider.java │ ├── HybrisModelItemReferenceProvider.java │ ├── HybrisSpringProcessReferenceProvider.kt │ └── HybrisTransitionProcessReferenceProvider.kt ├── runConfigurations └── HybrisJUnitExtension.java ├── settings ├── HybrisApplicationSettings.java ├── HybrisApplicationSettingsComponent.java ├── HybrisApplicationSettingsForm.form ├── HybrisApplicationSettingsForm.java ├── HybrisDeveloperSpecificProjectSettings.java ├── HybrisDeveloperSpecificProjectSettingsComponent.java ├── HybrisDeveloperSpecificProjectSettingsListener.java ├── HybrisProjectSettings.java ├── HybrisProjectSettingsComponent.java ├── HybrisRemoteConnectionSettings.java └── HybrisSettingsConfigurable.java ├── tools └── remote │ ├── action │ ├── AbstractExecuteAction.java │ ├── ExecuteGroovyAction.java │ ├── ImportImpexAction.java │ └── ValidateImpexAction.java │ ├── console │ ├── HybrisConsole.kt │ ├── HybrisConsoleProvider.kt │ ├── HybrisConsoleToolWindowFactory.java │ ├── SolrConsole.kt │ ├── actions │ │ ├── ExecuteAction.kt │ │ ├── HybrisChooseInstanceAction.kt │ │ ├── HybrisClearAllAction.kt │ │ ├── HybrisImpexValidateAction.kt │ │ └── handler │ │ │ ├── HybrisConsoleExecuteActionHandler.kt │ │ │ └── HybrisConsoleExecuteValidateActionHandler.kt │ ├── preprocess │ │ └── HybrisConsolePreProcessor.kt │ └── view │ │ ├── HybrisConsolePanel.kt │ │ └── HybrisConsolePanelView.kt │ └── http │ ├── AbstractHybrisHacHttpClient.java │ ├── CookieParser.java │ ├── HybrisHacHttpClient.java │ ├── MonitorClient.kt │ ├── SolrHttpClient.kt │ ├── flexibleSearch │ └── TableBuilder.java │ ├── impex │ └── HybrisHttpResult.java │ └── solr │ └── SolrQueryObject.kt ├── toolwindow ├── HybrisToolWindow.form ├── HybrisToolWindow.java ├── HybrisToolWindowCondition.java ├── RemoteConnectionDialog.form ├── RemoteConnectionDialog.java ├── SolrConnectionDialog.form ├── SolrConnectionDialog.java └── document │ ├── filter │ ├── AbstractDocumentFilter.java │ └── UnsignedIntegerDocumentFilter.java │ └── listener │ └── SimpleDocumentListener.java ├── type └── system │ ├── converter │ ├── AttributeHandlerReferenceConverter.kt │ └── AttributeReferenceConverter.kt │ ├── editor │ └── TypeSystemGutterAnnotator.java │ ├── file │ ├── AtomicTypeConverter.java │ ├── CollectionTypeConverter.java │ ├── CompositeConverter.java │ ├── EnumTypeConverter.java │ ├── ItemTypeConverter.java │ ├── TypeSystemConverterBase.java │ └── TypeSystemDomFileDescription.java │ ├── inspections │ ├── DefaultXPathService.java │ ├── TypeSystemValidationUtils.java │ ├── ValidateContext.java │ ├── ValidateContextImpl.java │ ├── XPathService.java │ ├── XmlRule.java │ ├── XmlRuleInspection.java │ └── XmlRuleParser.java │ ├── meta │ ├── TSMetaAtomic.java │ ├── TSMetaClass.java │ ├── TSMetaClassifier.java │ ├── TSMetaCollection.java │ ├── TSMetaEnum.java │ ├── TSMetaEnumValue.java │ ├── TSMetaModel.java │ ├── TSMetaModelAccess.java │ ├── TSMetaProperty.java │ ├── TSMetaReference.java │ └── impl │ │ ├── CaseInsensitive.java │ │ ├── TSMetaAtomicImpl.java │ │ ├── TSMetaClassImpl.java │ │ ├── TSMetaCollectionImpl.java │ │ ├── TSMetaEntityImpl.java │ │ ├── TSMetaEnumImpl.java │ │ ├── TSMetaEnumValueImpl.java │ │ ├── TSMetaModelAccessImpl.java │ │ ├── TSMetaModelBuilder.java │ │ ├── TSMetaModelImpl.java │ │ ├── TSMetaPropertyImpl.java │ │ └── TSMetaReferenceImpl.java │ ├── model │ ├── AtomicType.java │ ├── AtomicTypes.java │ ├── Attribute.java │ ├── AttributeModel.java │ ├── Attributes.java │ ├── Cardinality.java │ ├── CollectionType.java │ ├── CollectionTypes.java │ ├── ColumnType.java │ ├── CreationMode.java │ ├── CustomProperties.java │ ├── CustomProperty.java │ ├── Deployment.java │ ├── Description.java │ ├── EnumModel.java │ ├── EnumType.java │ ├── EnumTypes.java │ ├── EnumValue.java │ ├── Index.java │ ├── IndexKey.java │ ├── Indexes.java │ ├── ItemModel.java │ ├── ItemType.java │ ├── ItemTypes.java │ ├── Items.java │ ├── MapType.java │ ├── MapTypes.java │ ├── ModelConstructor.java │ ├── ModelMethod.java │ ├── Modifiers.java │ ├── Persistence.java │ ├── Relation.java │ ├── RelationElement.java │ ├── Relations.java │ ├── Type.java │ ├── TypeGroup.java │ ├── Value.java │ └── generator │ │ ├── DTDModelLoader.java │ │ ├── DomGenDialog.java │ │ ├── DomGenPanel.form │ │ ├── DomGenPanel.java │ │ ├── Emitter.java │ │ ├── FieldDesc.java │ │ ├── FileManager.java │ │ ├── GenerateDomModelAction.java │ │ ├── JetBrainsEmitter.java │ │ ├── Main.java │ │ ├── MergingFileManager.java │ │ ├── ModelDesc.java │ │ ├── ModelGen.java │ │ ├── ModelLoader.java │ │ ├── NamespaceDesc.java │ │ ├── TypeDesc.java │ │ ├── Util.java │ │ └── XSDModelLoader.java │ ├── structure │ └── view │ │ ├── TSStructureTreeElement.java │ │ ├── TSStructureViewBuilder.java │ │ ├── TSStructureViewTreeModel.java │ │ └── TSXmlStructureViewBuilderProvider.java │ ├── utils │ └── TypeSystemUtils.java │ └── validation │ ├── AbstractTSClassesValidation.java │ ├── ItemsFileValidation.java │ ├── TSRelationsValidation.java │ ├── TypeSystemValidationComponent.java │ └── impl │ ├── DefaultItemsFileValidation.java │ ├── DefaultTSRelationValidation.java │ ├── EnumTypeClassValidation.java │ ├── ItemTypeClassValidation.java │ └── ProjectOpenAndItemsXmlFileOpenListener.java └── view ├── HybrisProjectView.java └── JunkProjectViewNode.java /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/workspace.xml 2 | .idea/shelf 3 | .idea/libraries 4 | .idea/.name 5 | .idea/uiDesigner.xml 6 | .idea/scopes 7 | .idea/sonarlint 8 | .idea/checkstyle-idea.xml 9 | .idea/modules 10 | .idea/modules.xml 11 | .idea/encodings.xml 12 | 13 | /out/ 14 | /build/ 15 | /common/build/ 16 | /rt-ant/build/ 17 | /.gradle/ 18 | 19 | Integration-SAP-Commerce.zip 20 | 21 | **/.directory 22 | -------------------------------------------------------------------------------- /.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /.idea/copyright/LGPL.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/gradle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 20 | 21 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 9 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /CONTRIBUTION-AGREEMENT: -------------------------------------------------------------------------------- 1 | Developer Certificate of Origin 2 | Version 1.1 3 | 4 | Copyright (C) 2004, 2006 The Linux Foundation and its contributors. 5 | 660 York Street, Suite 102, 6 | San Francisco, CA 94110 USA 7 | 8 | Everyone is permitted to copy and distribute verbatim copies of this 9 | license document, but changing it is not allowed. 10 | 11 | 12 | Developer's Certificate of Origin 1.1 13 | 14 | By making a contribution to this project, I certify that: 15 | 16 | (a) The contribution was created in whole or in part by me and I 17 | have the right to submit it under the open source license 18 | indicated in the file; or 19 | 20 | (b) The contribution is based upon previous work that, to the best 21 | of my knowledge, is covered under an appropriate open source 22 | license and I have the right under that license to submit that 23 | work with modifications, whether created in whole or in part 24 | by me, under the same open source license (unless I am 25 | permitted to submit under a different license), as indicated 26 | in the file; or 27 | 28 | (c) The contribution was provided directly to me by some other 29 | person who certified (a), (b) or (c) and I have not modified 30 | it. 31 | 32 | (d) I understand and agree that this project and the contribution 33 | are public and that a record of the contribution (including all 34 | personal information I submit with it, including my sign-off) is 35 | maintained indefinitely and may be redistributed consistent with 36 | this project or the open source license(s) involved. 37 | -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | This software includes code from IntelliJ IDEA Community Edition 2 | Copyright (C) JetBrains s.r.o. 3 | https://www.jetbrains.com/idea/ 4 | 5 | --------------------------------------------------------------------------------------------- 6 | 7 | Apache Commons Collections 8 | Copyright 2001-2008 The Apache Software Foundation 9 | 10 | This product includes software developed by 11 | The Apache Software Foundation (http://www.apache.org/). 12 | 13 | --------------------------------------------------------------------------------------------- 14 | 15 | Apache Commons IO 16 | Copyright 2002-2012 The Apache Software Foundation 17 | 18 | This product includes software developed by 19 | The Apache Software Foundation (http://www.apache.org/). 20 | 21 | --------------------------------------------------------------------------------------------- 22 | 23 | Apache Commons Lang 24 | Copyright 2001-2015 The Apache Software Foundation 25 | 26 | This product includes software developed at 27 | The Apache Software Foundation (http://www.apache.org/). 28 | 29 | This product includes software from the Spring Framework, 30 | under the Apache License 2.0 (see: StringUtils.containsWhitespace()) 31 | -------------------------------------------------------------------------------- /bitbucket-pipelines.yml: -------------------------------------------------------------------------------- 1 | # This is a sample build configuration for Java (Gradle). 2 | # Check our guides at https://confluence.atlassian.com/x/zd-5Mw for more examples. 3 | # Only use spaces to indent your .yml configuration. 4 | # ----- 5 | # You can specify a custom docker image from Docker Hub as your build environment. 6 | image: java:8 7 | 8 | pipelines: 9 | default: 10 | - step: 11 | caches: 12 | - gradle 13 | script: # Modify the commands below to build your repository. 14 | # You must commit the Gradle wrapper to your repository 15 | # https://docs.gradle.org/current/userguide/gradle_wrapper.html 16 | - bash ./gradlew buildPlugin -------------------------------------------------------------------------------- /common/build.gradle: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | jar.archiveName = "common.jar" -------------------------------------------------------------------------------- /common/src/com/intellij/idea/plugin/hybris/project/descriptors/HybrisModuleDescriptorType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.descriptors; 20 | 21 | /** 22 | * @author Eugene.Kudelevsky 23 | */ 24 | public enum HybrisModuleDescriptorType { 25 | CONFIG, CUSTOM, EXT, NONE, OOTB, PLATFORM, ECLIPSE, MAVEN, GRADLE 26 | } 27 | -------------------------------------------------------------------------------- /gen/JFlex.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/gen/JFlex.jar -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexAnyAttributeName.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexAnyAttributeName extends PsiElement { 9 | 10 | @NotNull 11 | List getStringList(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexAnyAttributeValue.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexAnyAttributeValue extends PsiElement { 9 | 10 | @NotNull 11 | List getMacroUsageDecList(); 12 | 13 | @NotNull 14 | List getStringList(); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexAnyHeaderMode.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexAnyHeaderMode extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexAnyHeaderParameterName.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexAnyHeaderParameterName extends PsiElement { 9 | 10 | @Nullable 11 | ImpexMacroUsageDec getMacroUsageDec(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexAttribute.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexAttribute extends PsiElement { 9 | 10 | @NotNull 11 | ImpexAnyAttributeName getAnyAttributeName(); 12 | 13 | @Nullable 14 | ImpexAnyAttributeValue getAnyAttributeValue(); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexBeanShell.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexBeanShell extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexComment.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexComment extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexFullHeaderParameter.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexFullHeaderParameter extends PsiElement { 9 | 10 | @NotNull 11 | ImpexAnyHeaderParameterName getAnyHeaderParameterName(); 12 | 13 | @NotNull 14 | List getModifiersList(); 15 | 16 | @NotNull 17 | List getParametersList(); 18 | 19 | } 20 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexFullHeaderType.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexFullHeaderType extends PsiElement { 9 | 10 | @NotNull 11 | ImpexHeaderTypeName getHeaderTypeName(); 12 | 13 | @Nullable 14 | ImpexModifiers getModifiers(); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexHeaderLine.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexHeaderLine extends PsiElement { 9 | 10 | @NotNull 11 | ImpexAnyHeaderMode getAnyHeaderMode(); 12 | 13 | @NotNull 14 | List getFullHeaderParameterList(); 15 | 16 | @Nullable 17 | ImpexFullHeaderType getFullHeaderType(); 18 | 19 | } 20 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexHeaderTypeName.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexHeaderTypeName extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexMacroDeclaration.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexMacroDeclaration extends PsiElement { 9 | 10 | @NotNull 11 | ImpexMacroNameDec getMacroNameDec(); 12 | 13 | @NotNull 14 | List getMacroUsageDecList(); 15 | 16 | @NotNull 17 | List getMacroValueDecList(); 18 | 19 | } 20 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexMacroNameDec.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexMacroNameDec extends ImpexPsiNamedElement { 9 | 10 | @Nullable 11 | String getName(); 12 | 13 | @NotNull 14 | PsiElement setName(@NotNull String newName); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexMacroUsageDec.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexMacroUsageDec extends ImpexPsiNamedElement { 9 | 10 | @Nullable 11 | String getName(); 12 | 13 | @NotNull 14 | PsiElement setName(@NotNull String newName); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexMacroValue.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexMacroValue extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexMacroValueDec.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexMacroValueDec extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexModifiers.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexModifiers extends PsiElement { 9 | 10 | @NotNull 11 | List getAttributeList(); 12 | 13 | @NotNull 14 | List getMacroUsageDecList(); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexParameter.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexParameter extends PsiElement { 9 | 10 | @NotNull 11 | List getMacroUsageDecList(); 12 | 13 | @NotNull 14 | List getModifiersList(); 15 | 16 | @Nullable 17 | ImpexSubParameters getSubParameters(); 18 | 19 | } 20 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexParameters.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexParameters extends PsiElement { 9 | 10 | @NotNull 11 | List getParameterList(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexRootMacroUsage.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexRootMacroUsage extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexString.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexString extends PsiElement { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexSubParameters.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexSubParameters extends ImpexParameters { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexValue.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexValue extends PsiElement { 9 | 10 | @NotNull 11 | List getMacroUsageDecList(); 12 | 13 | @NotNull 14 | List getStringList(); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexValueGroup.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexValueGroup extends PsiElement { 9 | 10 | @Nullable 11 | ImpexValue getValue(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/ImpexValueLine.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.psi.PsiElement; 7 | 8 | public interface ImpexValueLine extends PsiElement { 9 | 10 | @NotNull 11 | List getValueGroupList(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexAnyAttributeNameImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexAnyAttributeNameImpl extends ASTWrapperPsiElement implements ImpexAnyAttributeName { 15 | 16 | public ImpexAnyAttributeNameImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitAnyAttributeName(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public List getStringList() { 32 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexString.class); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexAnyAttributeValueImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.references.ImpexAttributeValueMixin; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexAnyAttributeValueImpl extends ImpexAttributeValueMixin implements ImpexAnyAttributeValue { 15 | 16 | public ImpexAnyAttributeValueImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitAnyAttributeValue(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public List getMacroUsageDecList() { 32 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexMacroUsageDec.class); 33 | } 34 | 35 | @Override 36 | @NotNull 37 | public List getStringList() { 38 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexString.class); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexAnyHeaderModeImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexAnyHeaderModeImpl extends ASTWrapperPsiElement implements ImpexAnyHeaderMode { 15 | 16 | public ImpexAnyHeaderModeImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitAnyHeaderMode(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexAnyHeaderParameterNameImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.references.ImpexAnyHeaderParameterNameMixin; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexAnyHeaderParameterNameImpl extends ImpexAnyHeaderParameterNameMixin implements ImpexAnyHeaderParameterName { 15 | 16 | public ImpexAnyHeaderParameterNameImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitAnyHeaderParameterName(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @Nullable 31 | public ImpexMacroUsageDec getMacroUsageDec() { 32 | return findChildByClass(ImpexMacroUsageDec.class); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexAttributeImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexAttributeImpl extends ASTWrapperPsiElement implements ImpexAttribute { 15 | 16 | public ImpexAttributeImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitAttribute(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public ImpexAnyAttributeName getAnyAttributeName() { 32 | return findNotNullChildByClass(ImpexAnyAttributeName.class); 33 | } 34 | 35 | @Override 36 | @Nullable 37 | public ImpexAnyAttributeValue getAnyAttributeValue() { 38 | return findChildByClass(ImpexAnyAttributeValue.class); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexBeanShellImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexBeanShellImpl extends ASTWrapperPsiElement implements ImpexBeanShell { 15 | 16 | public ImpexBeanShellImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitBeanShell(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexCommentImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexCommentImpl extends ASTWrapperPsiElement implements ImpexComment { 15 | 16 | public ImpexCommentImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitComment(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexFullHeaderTypeImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexFullHeaderTypeImpl extends ASTWrapperPsiElement implements ImpexFullHeaderType { 15 | 16 | public ImpexFullHeaderTypeImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitFullHeaderType(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public ImpexHeaderTypeName getHeaderTypeName() { 32 | return findNotNullChildByClass(ImpexHeaderTypeName.class); 33 | } 34 | 35 | @Override 36 | @Nullable 37 | public ImpexModifiers getModifiers() { 38 | return findChildByClass(ImpexModifiers.class); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexHeaderLineImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexHeaderLineImpl extends ASTWrapperPsiElement implements ImpexHeaderLine { 15 | 16 | public ImpexHeaderLineImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitHeaderLine(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public ImpexAnyHeaderMode getAnyHeaderMode() { 32 | return findNotNullChildByClass(ImpexAnyHeaderMode.class); 33 | } 34 | 35 | @Override 36 | @NotNull 37 | public List getFullHeaderParameterList() { 38 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexFullHeaderParameter.class); 39 | } 40 | 41 | @Override 42 | @Nullable 43 | public ImpexFullHeaderType getFullHeaderType() { 44 | return findChildByClass(ImpexFullHeaderType.class); 45 | } 46 | 47 | } 48 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexHeaderTypeNameImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.references.ImpexHeaderTypeNameMixin; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexHeaderTypeNameImpl extends ImpexHeaderTypeNameMixin implements ImpexHeaderTypeName { 15 | 16 | public ImpexHeaderTypeNameImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitHeaderTypeName(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexMacroNameDecImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.ImpexPsiNamedElementImpl; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexMacroNameDecImpl extends ImpexPsiNamedElementImpl implements ImpexMacroNameDec { 15 | 16 | public ImpexMacroNameDecImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitMacroNameDec(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexMacroUsageDecImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.ImpexPsiNamedElementImpl; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexMacroUsageDecImpl extends ImpexPsiNamedElementImpl implements ImpexMacroUsageDec { 15 | 16 | public ImpexMacroUsageDecImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitMacroUsageDec(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexMacroValueDecImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.references.ImpexMacrosValueMixin; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexMacroValueDecImpl extends ImpexMacrosValueMixin implements ImpexMacroValueDec { 15 | 16 | public ImpexMacroValueDecImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitMacroValueDec(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexMacroValueImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.references.ImpexMacrosValueMixin; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexMacroValueImpl extends ImpexMacrosValueMixin implements ImpexMacroValue { 15 | 16 | public ImpexMacroValueImpl(ASTNode node) { 17 | super(node); 18 | } 19 | 20 | 21 | public void accept(@NotNull PsiElementVisitor visitor) { 22 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 23 | else super.accept(visitor); 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexModifiersImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexModifiersImpl extends ASTWrapperPsiElement implements ImpexModifiers { 15 | 16 | public ImpexModifiersImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitModifiers(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public List getAttributeList() { 32 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexAttribute.class); 33 | } 34 | 35 | @Override 36 | @NotNull 37 | public List getMacroUsageDecList() { 38 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexMacroUsageDec.class); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexParametersImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexParametersImpl extends ASTWrapperPsiElement implements ImpexParameters { 15 | 16 | public ImpexParametersImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitParameters(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public List getParameterList() { 32 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexParameter.class); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexRootMacroUsageImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexRootMacroUsageImpl extends ASTWrapperPsiElement implements ImpexRootMacroUsage { 15 | 16 | public ImpexRootMacroUsageImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitRootMacroUsage(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexStringImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.*; 12 | 13 | public class ImpexStringImpl extends ImpexStringMixin implements ImpexString { 14 | 15 | public ImpexStringImpl(@NotNull ASTNode node) { 16 | super(node); 17 | } 18 | 19 | public void accept(@NotNull ImpexVisitor visitor) { 20 | visitor.visitString(this); 21 | } 22 | 23 | public void accept(@NotNull PsiElementVisitor visitor) { 24 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 25 | else super.accept(visitor); 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexSubParametersImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.idea.plugin.hybris.impex.psi.*; 12 | 13 | public class ImpexSubParametersImpl extends ImpexParametersImpl implements ImpexSubParameters { 14 | 15 | public ImpexSubParametersImpl(@NotNull ASTNode node) { 16 | super(node); 17 | } 18 | 19 | public void accept(@NotNull ImpexVisitor visitor) { 20 | visitor.visitSubParameters(this); 21 | } 22 | 23 | public void accept(@NotNull PsiElementVisitor visitor) { 24 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 25 | else super.accept(visitor); 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexValueGroupImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexValueGroupImpl extends ASTWrapperPsiElement implements ImpexValueGroup { 15 | 16 | public ImpexValueGroupImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitValueGroup(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @Nullable 31 | public ImpexValue getValue() { 32 | return findChildByClass(ImpexValue.class); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexValueImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexValueImpl extends ASTWrapperPsiElement implements ImpexValue { 15 | 16 | public ImpexValueImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitValue(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public List getMacroUsageDecList() { 32 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexMacroUsageDec.class); 33 | } 34 | 35 | @Override 36 | @NotNull 37 | public List getStringList() { 38 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexString.class); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /gen/com/intellij/idea/plugin/hybris/impex/psi/impl/ImpexValueLineImpl.java: -------------------------------------------------------------------------------- 1 | // This is a generated file. Not intended for manual editing. 2 | package com.intellij.idea.plugin.hybris.impex.psi.impl; 3 | 4 | import java.util.List; 5 | import org.jetbrains.annotations.*; 6 | import com.intellij.lang.ASTNode; 7 | import com.intellij.psi.PsiElement; 8 | import com.intellij.psi.PsiElementVisitor; 9 | import com.intellij.psi.util.PsiTreeUtil; 10 | import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*; 11 | import com.intellij.extapi.psi.ASTWrapperPsiElement; 12 | import com.intellij.idea.plugin.hybris.impex.psi.*; 13 | 14 | public class ImpexValueLineImpl extends ASTWrapperPsiElement implements ImpexValueLine { 15 | 16 | public ImpexValueLineImpl(@NotNull ASTNode node) { 17 | super(node); 18 | } 19 | 20 | public void accept(@NotNull ImpexVisitor visitor) { 21 | visitor.visitValueLine(this); 22 | } 23 | 24 | public void accept(@NotNull PsiElementVisitor visitor) { 25 | if (visitor instanceof ImpexVisitor) accept((ImpexVisitor)visitor); 26 | else super.accept(visitor); 27 | } 28 | 29 | @Override 30 | @NotNull 31 | public List getValueGroupList() { 32 | return PsiTreeUtil.getChildrenOfTypeAsList(this, ImpexValueGroup.class); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | gradleIntellijPluginVersion=0.4.8 2 | 3 | kotlin_version=1.3.31 4 | kotlin.incremental.usePreciseJavaTracking=true 5 | 6 | sourceVersion=1.8 7 | 8 | # See for possible values: 9 | # https://www.jetbrains.com/intellij-repository/releases 10 | # https://www.jetbrains.com/intellij-repository/snapshots 11 | intelijType=IU 12 | # Leave empty to always build with the latest version 13 | intelijVersion=2019.1.3 14 | intelijPlugins=ant, Spring, uml, junit, JavaEE, maven, eclipse, gradle, properties, Groovy, java-i18n, PersistenceSupport, CSS 15 | intellijJvmArgs=-Xmx2G 16 | intellijSinceBuild=191 17 | intellijUpdateSinceUntilBuild=false 18 | 19 | # https://plugins.jetbrains.com/plugin/227-psiviewer 20 | psiViewerVersions.182=182.2371.2 21 | psiViewerVersions.183=183.2153 22 | psiViewerVersions.191=191.4212 23 | 24 | # This is required because after upgrading to Gradle 5.1.1 the daemon runs out of memory during compilation with the 25 | # default value of 512m 26 | org.gradle.jvmargs=-Xmx1024m 27 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | # 2 | # This file is part of "hybris integration" plugin for Intellij IDEA. 3 | # Copyright (C) 2014-2016 Alexander Bartash 4 | # 5 | # This program is free software: you can redistribute it and/or modify 6 | # it under the terms of the GNU Lesser General Public License as 7 | # published by the Free Software Foundation, either version 3 of the 8 | # License, or (at your option) any later version. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | # See the GNU Lesser General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public License 16 | # along with this program. If not, see . 17 | # 18 | distributionBase=GRADLE_USER_HOME 19 | distributionPath=wrapper/dists 20 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-bin.zip 21 | zipStoreBase=GRADLE_USER_HOME 22 | zipStorePath=wrapper/dists 23 | -------------------------------------------------------------------------------- /jflex-1.7.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/jflex-1.7.0.jar -------------------------------------------------------------------------------- /resources/META-INF/eclipse-support-optional-dependencies.xml: -------------------------------------------------------------------------------- 1 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /resources/META-INF/gradle-support-optional-dependencies.xml: -------------------------------------------------------------------------------- 1 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /resources/META-INF/groovy-optional-dependencies.xml: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /resources/META-INF/javaee-optional-dependencies.xml: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | 22 | 23 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /resources/META-INF/junit-optional-dependencies.xml: -------------------------------------------------------------------------------- 1 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /resources/META-INF/maven-support-optional-dependencies.xml: -------------------------------------------------------------------------------- 1 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /resources/META-INF/plugin-community.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 13 | 14 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /resources/META-INF/plugin-extensions.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /resources/META-INF/properties-optional-dependencies.xml: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | 22 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /resources/fileTemplates/internal/FlexibleSearch File.fxs.ft: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/fileTemplates/internal/FlexibleSearch File.fxs.ft -------------------------------------------------------------------------------- /resources/fileTemplates/internal/FlexibleSearch File.fxs.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | This is FlexibleSearch file template. 22 | 23 | -------------------------------------------------------------------------------- /resources/fileTemplates/internal/Impex File.impex.ft: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/fileTemplates/internal/Impex File.impex.ft -------------------------------------------------------------------------------- /resources/fileTemplates/internal/Impex File.impex.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | This is Impex file template. 22 | 23 | -------------------------------------------------------------------------------- /resources/icons/actionIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | Layer 1 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /resources/icons/beanIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | Layer 1 7 | 8 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /resources/icons/endIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 9 | Layer 1 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /resources/icons/grayHybrisIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/grayHybrisIcon.png -------------------------------------------------------------------------------- /resources/icons/grayHybrisIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /resources/icons/grayHybrisIcon_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/grayHybrisIcon_dark.png -------------------------------------------------------------------------------- /resources/icons/grayHybrisIcon_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /resources/icons/gutter/populator.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /resources/icons/hybrisIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/hybrisIcon.png -------------------------------------------------------------------------------- /resources/icons/hybrisIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /resources/icons/hybrisIcon_13x13.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /resources/icons/hybrisRemoteIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 9 | 10 | 11 | 12 | 13 | 15 | 16 | 17 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /resources/icons/hybris_remote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/hybris_remote.png -------------------------------------------------------------------------------- /resources/icons/jar-gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/jar-gray.png -------------------------------------------------------------------------------- /resources/icons/joinIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | Layer 1 9 | 10 | 12 | 13 | 15 | 16 | -------------------------------------------------------------------------------- /resources/icons/localized.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 17 | 18 | -------------------------------------------------------------------------------- /resources/icons/macros.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/macros.png -------------------------------------------------------------------------------- /resources/icons/scriptIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /resources/icons/splitIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /resources/icons/typeSystem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/typeSystem.png -------------------------------------------------------------------------------- /resources/icons/typeSystem.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /resources/icons/typeSystem_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Janhouse/sap-commerce-integration-intellij-idea-plugin/af516ab5ed9af52c46686b3efba57341a7e2ebca/resources/icons/typeSystem_dark.png -------------------------------------------------------------------------------- /resources/icons/typeSystem_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /resources/icons/waitIcon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | Layer 1 9 | 11 | 12 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/ConfigProcessorInspection.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | To use $config macros should be defined GenericItem[processor = de....ConfigPropertyImportProcessor] in impex 22 |
23 | Powered by Hybris plugin 24 | 25 | 26 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/DuplicateBeanDefinitionInspection.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | Duplicate bean definition in -beans.xml file. More than one instance of the same type was found in this file. Merge the definition into one. 22 | 23 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/NoUniqueValueInspection.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | No unique value in column 22 | 23 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/TSVBased.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | One of the TSV rules specified in a standard ruleset.xml had been violated. See problem description for details. 22 | 23 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/UniqueAttributeWithoutIndex.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | [unique=true] should normally only be added to the unique attributes in the data model 21 | 22 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/UniqueDocumentId.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | The document Id in a column needs to be unique 22 | 23 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/UnknownConfigPropertyInspection.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | The property doesn't exist in local.properties 22 | 23 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/UnknownMacrosInspection.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | This macro has not been defined yet and it can't be used. 22 | 23 | -------------------------------------------------------------------------------- /resources/inspectionDescriptions/UnknownTypeAttributeInspection.html: -------------------------------------------------------------------------------- 1 | 18 | 19 | 20 | 21 | This attribute does not exist in type system (items.xml). 22 | 23 | -------------------------------------------------------------------------------- /rt-ant/build.gradle: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | jar.archiveName = "rt-ant.jar" 19 | 20 | // Should be 1.7 otherwise it will not work in Hybris 5.X which require java 1.7. 21 | compileJava { 22 | sourceCompatibility = JavaVersion.VERSION_1_7 23 | targetCompatibility = JavaVersion.VERSION_1_7 24 | } 25 | 26 | repositories { 27 | mavenCentral() 28 | } 29 | 30 | dependencies { 31 | //this should be pulled from /lib/ant/lib 32 | compileOnly "org.apache.ant:ant:1.10.6" 33 | } 34 | -------------------------------------------------------------------------------- /runConfigurations/Clean.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 16 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /runConfigurations/Clean_And_Build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 17 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /runConfigurations/Run IDE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 16 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | rootProject.name = "Integration-SAP-Commerce" 20 | 21 | include ":common" 22 | include ":rt-ant" 23 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/actions/HybrisToolsActionGroup.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.actions; 20 | 21 | import com.intellij.openapi.actionSystem.AnActionEvent; 22 | import com.intellij.openapi.actionSystem.DefaultActionGroup; 23 | import com.intellij.openapi.project.DumbAware; 24 | 25 | /** 26 | * @author Eugene.Kudelevsky 27 | */ 28 | public class HybrisToolsActionGroup extends DefaultActionGroup implements DumbAware { 29 | 30 | @Override 31 | public void update(final AnActionEvent e) { 32 | e.getPresentation().setEnabledAndVisible(ActionUtils.isHybrisContext(e)); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/beans/BeansPropertyNameConverter.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.beans; 2 | 3 | import com.intellij.idea.plugin.hybris.beans.model.Property; 4 | import com.intellij.psi.PsiField; 5 | import com.intellij.util.xml.ConvertContext; 6 | import com.intellij.util.xml.DomElement; 7 | import com.intellij.util.xml.GenericAttributeValue; 8 | import com.intellij.util.xml.ResolvingConverter; 9 | import org.jetbrains.annotations.NotNull; 10 | import org.jetbrains.annotations.Nullable; 11 | 12 | import java.util.Collection; 13 | import java.util.Collections; 14 | 15 | public class BeansPropertyNameConverter extends ResolvingConverter { 16 | 17 | @Nullable 18 | @Override 19 | public PsiField fromString(@Nullable final String text, final ConvertContext context) { 20 | DomElement host = context.getInvocationElement(); 21 | if (host instanceof GenericAttributeValue) { 22 | DomElement domProperty = host.getParent(); 23 | return domProperty instanceof Property ? BeansUtils.resolveToPsiField((Property) domProperty, text) : null; 24 | } 25 | return null; 26 | } 27 | 28 | @NotNull 29 | @Override 30 | public Collection getVariants(final ConvertContext context) { 31 | return Collections.emptyList(); 32 | } 33 | 34 | @Nullable 35 | @Override 36 | public String toString(@Nullable final PsiField psiField, final ConvertContext context) { 37 | return psiField == null ? "" : psiField.getName(); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/beans/model/AbstractPojo.java: -------------------------------------------------------------------------------- 1 | // Generated on Fri Nov 17 20:45:54 CET 2017 2 | // DTD/Schema : null 3 | 4 | package com.intellij.idea.plugin.hybris.beans.model; 5 | 6 | import com.intellij.util.xml.Attribute; 7 | import com.intellij.util.xml.DomElement; 8 | import com.intellij.util.xml.GenericAttributeValue; 9 | import com.intellij.util.xml.Required; 10 | import org.jetbrains.annotations.NotNull; 11 | 12 | /** 13 | * null:abstractPojo interface. 14 | */ 15 | public interface AbstractPojo extends DomElement { 16 | 17 | /** 18 | * Returns the value of the class child. 19 | * 20 | * @return the value of the class child. 21 | */ 22 | @NotNull 23 | @Attribute("class") 24 | @Required 25 | GenericAttributeValue getClazz(); 26 | 27 | 28 | /** 29 | * Returns the value of the template child. 30 | * 31 | * @return the value of the template child. 32 | */ 33 | @NotNull 34 | GenericAttributeValue getTemplate(); 35 | 36 | 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/beans/model/AbstractPojos.java: -------------------------------------------------------------------------------- 1 | // Generated on Fri Nov 17 20:45:54 CET 2017 2 | // DTD/Schema : null 3 | 4 | package com.intellij.idea.plugin.hybris.beans.model; 5 | 6 | import com.intellij.util.xml.DomElement; 7 | import org.jetbrains.annotations.NotNull; 8 | 9 | /** 10 | * null:abstractPojos interface. 11 | */ 12 | public interface AbstractPojos extends DomElement { 13 | 14 | /** 15 | * Returns the list of bean children. 16 | * 17 | * @return the list of bean children. 18 | */ 19 | @NotNull 20 | java.util.List getBeans(); 21 | 22 | /** 23 | * Adds new child to the list of bean children. 24 | * 25 | * @return created child 26 | */ 27 | Bean addBean(); 28 | 29 | 30 | /** 31 | * Returns the list of enum children. 32 | * 33 | * @return the list of enum children. 34 | */ 35 | @NotNull 36 | java.util.List getEnums(); 37 | 38 | /** 39 | * Adds new child to the list of enum children. 40 | * 41 | * @return created child 42 | */ 43 | Enum addEnum(); 44 | 45 | 46 | } 47 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/beans/model/Annotations.java: -------------------------------------------------------------------------------- 1 | // Generated on Fri Nov 17 20:45:54 CET 2017 2 | // DTD/Schema : null 3 | 4 | package com.intellij.idea.plugin.hybris.beans.model; 5 | 6 | import com.intellij.util.xml.DomElement; 7 | import com.intellij.util.xml.GenericAttributeValue; 8 | import com.intellij.util.xml.Required; 9 | import org.jetbrains.annotations.NotNull; 10 | 11 | /** 12 | * null:annotations interface. 13 | */ 14 | public interface Annotations extends DomElement { 15 | 16 | /** 17 | * Returns the value of the simple content. 18 | * 19 | * @return the value of the simple content. 20 | */ 21 | @NotNull 22 | @Required 23 | String getValue(); 24 | 25 | /** 26 | * Sets the value of the simple content. 27 | * 28 | * @param value the new value to set 29 | */ 30 | void setValue(@NotNull String value); 31 | 32 | 33 | /** 34 | * Returns the value of the scope child. 35 | * 36 | * @return the value of the scope child. 37 | */ 38 | @NotNull 39 | GenericAttributeValue getScope(); 40 | 41 | 42 | } 43 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/beans/model/Import.java: -------------------------------------------------------------------------------- 1 | // Generated on Fri Nov 17 20:45:54 CET 2017 2 | // DTD/Schema : null 3 | 4 | package com.intellij.idea.plugin.hybris.beans.model; 5 | 6 | import com.intellij.util.xml.DomElement; 7 | import com.intellij.util.xml.GenericAttributeValue; 8 | import com.intellij.util.xml.Required; 9 | import org.jetbrains.annotations.NotNull; 10 | 11 | /** 12 | * null:import interface. 13 | */ 14 | public interface Import extends DomElement { 15 | 16 | /** 17 | * Returns the value of the type child. 18 | * 19 | * @return the value of the type child. 20 | */ 21 | @NotNull 22 | @Required 23 | GenericAttributeValue getType(); 24 | 25 | 26 | /** 27 | * Returns the value of the static child. 28 | * 29 | * @return the value of the static child. 30 | */ 31 | @NotNull 32 | GenericAttributeValue getStatic(); 33 | 34 | 35 | } 36 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/beans/model/Scope.java: -------------------------------------------------------------------------------- 1 | // Generated on Fri Nov 17 20:45:54 CET 2017 2 | // DTD/Schema : null 3 | 4 | package com.intellij.idea.plugin.hybris.beans.model; 5 | 6 | /** 7 | * null:scopeAttrType enumeration. 8 | */ 9 | public enum Scope implements com.intellij.util.xml.NamedEnum { 10 | ALL("all"), 11 | GETTER("getter"), 12 | MEMBER("member"), 13 | SETTER("setter"); 14 | 15 | private final String value; 16 | 17 | private Scope(String value) { 18 | this.value = value; 19 | } 20 | 21 | public String getValue() { 22 | return value; 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/business/process/common/BpGraphService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.business.process.common; 20 | 21 | import com.intellij.openapi.vfs.VirtualFile; 22 | import org.jetbrains.annotations.NotNull; 23 | import org.jetbrains.annotations.Nullable; 24 | 25 | import javax.xml.bind.UnmarshalException; 26 | 27 | /** 28 | * Created 9:33 PM 02 February 2016. 29 | * 30 | * @author Alexander Bartash 31 | */ 32 | public interface BpGraphService { 33 | 34 | @Nullable 35 | BpGraphNode buildGraphFromXmlFile(@NotNull VirtualFile virtualFile) throws UnmarshalException; 36 | 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/business/process/diagram/BpDiagramColorManager.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.business.process.diagram; 20 | 21 | import com.intellij.diagram.DiagramColorManagerBase; 22 | 23 | /** 24 | * Created 10:33 PM 02 February 2016. 25 | * 26 | * @author Alexander Bartash 27 | */ 28 | public abstract class BpDiagramColorManager extends DiagramColorManagerBase { 29 | 30 | } 31 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/business/process/diagram/BpDiagramElementManager.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.business.process.diagram; 20 | 21 | import com.intellij.diagram.DiagramElementManager; 22 | import com.intellij.idea.plugin.hybris.business.process.common.BpGraphNode; 23 | 24 | /** 25 | * Created 10:22 PM 02 February 2016. 26 | * 27 | * @author Alexander Bartash 28 | */ 29 | public interface BpDiagramElementManager extends DiagramElementManager { 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/business/process/diagram/BpDiagramProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.business.process.diagram; 20 | 21 | import com.intellij.diagram.BaseDiagramProvider; 22 | import com.intellij.idea.plugin.hybris.business.process.common.BpGraphNode; 23 | 24 | /** 25 | * Created 10:38 PM 02 February 2016. 26 | * 27 | * @author Alexander Bartash 28 | */ 29 | public abstract class BpDiagramProvider extends BaseDiagramProvider { 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/business/process/diagram/BpDiagramVfsResolver.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.business.process.diagram; 20 | 21 | import com.intellij.diagram.DiagramVfsResolver; 22 | import com.intellij.idea.plugin.hybris.business.process.common.BpGraphNode; 23 | 24 | /** 25 | * Created 10:29 PM 02 February 2016. 26 | * 27 | * @author Alexander Bartash 28 | */ 29 | public interface BpDiagramVfsResolver extends DiagramVfsResolver { 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/business/process/jaxb/model/BpGenericAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.business.process.jaxb.model; 20 | 21 | 22 | public interface BpGenericAction { 23 | 24 | /** 25 | * Gets the value of the id property. 26 | * 27 | * @return possible object is 28 | * {@link String } 29 | */ 30 | String getId(); 31 | 32 | /** 33 | * Sets the value of the id property. 34 | * 35 | * @param value allowed object is 36 | * {@link String } 37 | */ 38 | void setId(String value); 39 | 40 | } 41 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/business/process/jaxb/services/BpJaxbService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.business.process.jaxb.services; 20 | 21 | import com.intellij.idea.plugin.hybris.business.process.jaxb.Process; 22 | import org.jetbrains.annotations.NotNull; 23 | 24 | import javax.annotation.Nonnull; 25 | import javax.xml.bind.UnmarshalException; 26 | import java.io.File; 27 | 28 | /** 29 | * Created 9:12 PM 02 February 2016. 30 | * 31 | * @author Alexander Bartash 32 | */ 33 | public interface BpJaxbService { 34 | 35 | @Nonnull 36 | Process unmarshallBusinessProcessXml(@NotNull File file) throws UnmarshalException; 37 | 38 | } 39 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/common/JavaConstants.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.common; 20 | 21 | /** 22 | * Created 17:48 15 May 2016 23 | * 24 | * @author Alexander Bartash 25 | */ 26 | public interface JavaConstants { 27 | 28 | String SETTER_PREFIX = "set"; 29 | } 30 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/gradle/GradleSupport.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.gradle; 2 | 3 | import com.intellij.idea.plugin.hybris.project.configurators.GradleConfigurator; 4 | import com.intellij.openapi.components.ServiceManager; 5 | import com.intellij.openapi.project.Project; 6 | import org.jetbrains.annotations.NotNull; 7 | import org.jetbrains.annotations.Nullable; 8 | import org.jetbrains.plugins.gradle.settings.GradleSettings; 9 | 10 | import java.util.Collections; 11 | 12 | /** 13 | * @author Eugene.Kudelevsky 14 | */ 15 | public class GradleSupport { 16 | 17 | @Nullable 18 | public static GradleSupport getInstance() { 19 | return ServiceManager.getService(GradleSupport.class); 20 | } 21 | 22 | public void clearLinkedProjectSettings(@NotNull Project project) { 23 | GradleSettings.getInstance(project).setLinkedProjectsSettings(Collections.emptyList()); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/ImpexLanguage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex; 20 | 21 | import com.intellij.lang.Language; 22 | 23 | public class ImpexLanguage extends Language { 24 | 25 | private static final ImpexLanguage INSTANCE = new ImpexLanguage(); 26 | 27 | public static ImpexLanguage getInstance() { 28 | return INSTANCE; 29 | } 30 | 31 | protected ImpexLanguage() { 32 | super("Impex"); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/ImpexLexerAdapter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex; 20 | 21 | import com.intellij.lexer.FlexAdapter; 22 | 23 | import java.io.Reader; 24 | 25 | public class ImpexLexerAdapter extends FlexAdapter { 26 | 27 | public ImpexLexerAdapter() { 28 | super(new ImpexLexer((Reader) null)); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/assistance/ImpexColumnHighlighterService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.assistance; 20 | 21 | /** 22 | * @author Aleksandr Nosov 23 | */ 24 | public interface ImpexColumnHighlighterService extends ImpexHighlighterService { 25 | 26 | } 27 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/assistance/ImpexHeaderNameHighlighterService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.assistance; 20 | 21 | /** 22 | * Created 19:46 11 January 2015 23 | * 24 | * @author Alexander Bartash 25 | */ 26 | public interface ImpexHeaderNameHighlighterService extends ImpexHighlighterService { 27 | 28 | } 29 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/assistance/ImpexHighlighterService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.assistance; 20 | 21 | import com.intellij.openapi.editor.Editor; 22 | import org.jetbrains.annotations.Contract; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created 19:46 11 January 2015 27 | * 28 | * @author Alexander Bartash 29 | */ 30 | public interface ImpexHighlighterService { 31 | 32 | @Contract(pure = false) 33 | void highlight(@NotNull Editor editor); 34 | 35 | @Contract(pure = false) 36 | void releaseEditorData(@NotNull Editor editor); 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/constants/ImpexConstants.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.constants; 20 | 21 | import com.intellij.idea.plugin.hybris.impex.constants.modifier.BooleanModifierValue; 22 | import com.intellij.idea.plugin.hybris.impex.constants.modifier.ImpexModifierValue; 23 | 24 | /** 25 | * Created 20:39 29 March 2015 26 | * 27 | * @author Alexander Bartash 28 | */ 29 | public interface ImpexConstants { 30 | 31 | interface ModifierCommonValues { 32 | 33 | BooleanModifierValue[] BOOLEAN = BooleanModifierValue.values(); 34 | ImpexModifierValue[] NONE = new ImpexModifierValue[0]; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/constants/modifier/ImpexModifier.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.constants.modifier; 20 | 21 | import org.jetbrains.annotations.NotNull; 22 | 23 | import java.util.List; 24 | 25 | /** 26 | * Created 18:53 14 May 2016 27 | * 28 | * @author Alexander Bartash 29 | */ 30 | public interface ImpexModifier { 31 | 32 | @NotNull 33 | String getModifierName(); 34 | 35 | @NotNull 36 | List getModifierValues(); 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/constants/modifier/ImpexModifierValue.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.constants.modifier; 20 | 21 | import org.jetbrains.annotations.NotNull; 22 | 23 | /** 24 | * Created 18:53 14 May 2016 25 | * 26 | * @author Alexander Bartash 27 | */ 28 | public interface ImpexModifierValue { 29 | 30 | @NotNull 31 | String getModifierValue(); 32 | } 33 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/file/ImpexFileTypeFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.file; 20 | 21 | import com.intellij.openapi.fileTypes.FileTypeConsumer; 22 | import com.intellij.openapi.fileTypes.FileTypeFactory; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | public class ImpexFileTypeFactory extends FileTypeFactory { 26 | 27 | @Override 28 | public void createFileTypes(@NotNull final FileTypeConsumer consumer) { 29 | consumer.consume(ImpexFileType.getInstance(), ImpexFileType.getInstance().getDefaultExtension()); 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/folding/ImpexFoldingPlaceholderBuilder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.folding; 20 | 21 | import com.intellij.psi.PsiElement; 22 | import org.jetbrains.annotations.NotNull; 23 | 24 | /** 25 | * Created 23:16 01 January 2015 26 | * 27 | * @author Alexander Bartash 28 | */ 29 | public interface ImpexFoldingPlaceholderBuilder { 30 | 31 | @NotNull 32 | String getPlaceholder(@NotNull final PsiElement psiElement); 33 | } 34 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/folding/ImpexMacroDescriptor.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.impex.folding; 2 | 3 | import com.intellij.psi.PsiElement; 4 | 5 | public class ImpexMacroDescriptor { 6 | private String macroName; 7 | private String resolvedValue; 8 | private PsiElement psiElement; 9 | 10 | public ImpexMacroDescriptor(final String macroName, final String resolvedValue, final PsiElement psiElement) { 11 | this.psiElement = psiElement; 12 | this.macroName = macroName; 13 | this.resolvedValue = resolvedValue; 14 | replaceBlank(); 15 | } 16 | 17 | private void replaceBlank() { 18 | if (resolvedValue == null || resolvedValue.isEmpty()) { 19 | resolvedValue = ""; 20 | } 21 | } 22 | 23 | public String getMacroName() { 24 | return macroName; 25 | } 26 | 27 | public String getResolvedValue() { 28 | return resolvedValue; 29 | } 30 | 31 | public PsiElement getPsiElement() { 32 | return psiElement; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/folding/ImpexMacroUtils.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.impex.folding; 2 | 3 | import com.intellij.openapi.application.ApplicationManager; 4 | import com.intellij.openapi.util.Computable; 5 | import com.intellij.openapi.util.Key; 6 | import com.intellij.psi.PsiFile; 7 | import com.intellij.psi.util.CachedValue; 8 | import com.intellij.psi.util.CachedValueProvider; 9 | import com.intellij.psi.util.CachedValuesManager; 10 | 11 | import java.util.HashMap; 12 | import java.util.Map; 13 | 14 | public class ImpexMacroUtils { 15 | 16 | private static final Key>> FILE_IMPEX_FOLDING_CACHE_KEY = Key.create("FILE_IMPEX_FOLDING_CACHE"); 17 | 18 | public static CachedValue> getFileCache(PsiFile impexFile) { 19 | CachedValue> fileModelCache = impexFile.getUserData(FILE_IMPEX_FOLDING_CACHE_KEY); 20 | 21 | if (fileModelCache == null) { 22 | fileModelCache = CachedValuesManager.getManager(impexFile.getProject()).createCachedValue( 23 | () -> ApplicationManager.getApplication().runReadAction( 24 | (Computable>>) () -> 25 | CachedValueProvider.Result.create(new HashMap<>(), impexFile) 26 | ), false); 27 | impexFile.putUserData(FILE_IMPEX_FOLDING_CACHE_KEY, fileModelCache); 28 | } 29 | 30 | return fileModelCache; 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/formatting/AlignmentStrategy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.formatting; 20 | 21 | import com.intellij.formatting.Alignment; 22 | import com.intellij.lang.ASTNode; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created 12:57 01 January 2015 27 | * 28 | * @author Alexander Bartash 29 | */ 30 | public interface AlignmentStrategy { 31 | 32 | Alignment getAlignment(@NotNull ASTNode currentNode); 33 | 34 | void processNode(@NotNull ASTNode currentNode); 35 | } 36 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/highlighting/ImpexSyntaxHighlighter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.highlighting; 20 | 21 | import com.intellij.openapi.fileTypes.SyntaxHighlighterBase; 22 | 23 | /** 24 | * Created 1:33 AM 11 February 2016. 25 | * 26 | * @author Alexander Bartash 27 | */ 28 | public abstract class ImpexSyntaxHighlighter extends SyntaxHighlighterBase { 29 | 30 | } 31 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/liveTemplates/ImpexTemplateProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.liveTemplates; 20 | 21 | import com.intellij.codeInsight.template.impl.DefaultLiveTemplatesProvider; 22 | import org.jetbrains.annotations.Nullable; 23 | 24 | /** 25 | * @author Aleksandr Nosov 26 | */ 27 | public class ImpexTemplateProvider implements DefaultLiveTemplatesProvider { 28 | 29 | @Override 30 | public String[] getDefaultLiveTemplateFiles() { 31 | return new String[]{"liveTemplates/Impex"}; 32 | } 33 | 34 | @Nullable 35 | @Override 36 | public String[] getHiddenLiveTemplateFiles() { 37 | return new String[0]; 38 | } 39 | } -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/psi/ImpexElementType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.psi; 20 | 21 | import com.intellij.idea.plugin.hybris.impex.ImpexLanguage; 22 | import com.intellij.psi.tree.IElementType; 23 | import org.jetbrains.annotations.NonNls; 24 | import org.jetbrains.annotations.NotNull; 25 | 26 | public class ImpexElementType extends IElementType { 27 | 28 | public ImpexElementType(@NotNull @NonNls final String debugName) { 29 | super(debugName, ImpexLanguage.getInstance()); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/psi/references/result/EnumResolveResult.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.psi.references.result 20 | 21 | import com.intellij.idea.plugin.hybris.psi.references.TypeSystemReferenceBase 22 | import com.intellij.idea.plugin.hybris.type.system.model.EnumType 23 | import com.intellij.util.xml.DomElement 24 | 25 | /** 26 | * @author Nosov Aleksandr 27 | */ 28 | class EnumResolveResult(private val enumType: EnumType) : TypeSystemReferenceBase.TypeSystemResolveResult { 29 | override fun getSemanticDomElement(): DomElement = enumType 30 | override fun getElement() = enumType.xmlTag 31 | override fun isValidResult() = element != null 32 | } 33 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/rename/manipulator/ImpexMacrosManipulator.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.rename.manipulator 20 | 21 | import com.intellij.idea.plugin.hybris.impex.psi.util.setName 22 | import com.intellij.openapi.util.TextRange 23 | import com.intellij.psi.AbstractElementManipulator 24 | import com.intellij.psi.PsiElement 25 | 26 | /** 27 | * @author Nosov Aleksandr 28 | */ 29 | class ImpexMacrosManipulator : AbstractElementManipulator() { 30 | 31 | override fun handleContentChange(element: PsiElement, range: TextRange, newName: String): PsiElement = setName(element, newName) 32 | 33 | } -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/impex/utils/ImpexParserUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.impex.utils; 20 | 21 | import com.intellij.lang.parser.GeneratedParserUtilBase; 22 | 23 | /** 24 | * Created 1:01 PM 31 May 2015 25 | * 26 | * @author Alexander Bartash 27 | */ 28 | public class ImpexParserUtils extends GeneratedParserUtilBase { 29 | 30 | } 31 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/notifications/NotificationUtil.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.notifications; 2 | 3 | import com.intellij.idea.plugin.hybris.common.utils.HybrisI18NBundleUtils; 4 | import com.intellij.notification.NotificationGroup; 5 | import com.intellij.openapi.project.Project; 6 | import com.intellij.openapi.wm.WindowManager; 7 | import com.intellij.ui.SystemNotifications; 8 | import org.jetbrains.annotations.NotNull; 9 | 10 | import javax.swing.*; 11 | 12 | /** 13 | * @author Eugene.Kudelevsky 14 | */ 15 | public class NotificationUtil { 16 | 17 | private NotificationUtil() { 18 | } 19 | 20 | public static final NotificationGroup NOTIFICATION_GROUP = NotificationGroup.balloonGroup( 21 | HybrisI18NBundleUtils.message("hybris.notification.group")); 22 | 23 | public static void showSystemNotificationIfNotActive( 24 | @NotNull Project project, 25 | @NotNull String notificationName, 26 | @NotNull String notificationTitle, 27 | @NotNull String notificationText 28 | ) { 29 | final JFrame frame = WindowManager.getInstance().getFrame(project); 30 | 31 | if (frame != null && !frame.hasFocus()) { 32 | SystemNotifications.getInstance().notify(notificationName, notificationTitle, notificationText); 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/CompilerOutputPathsConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisModuleDescriptor; 22 | import com.intellij.openapi.roots.ModifiableRootModel; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created 12:19 AM 25 June 2015. 27 | * 28 | * @author Alexander Bartash 29 | */ 30 | public interface CompilerOutputPathsConfigurator { 31 | 32 | void configure( 33 | @NotNull ModifiableRootModel modifiableRootModel, 34 | @NotNull HybrisModuleDescriptor moduleDescriptor 35 | ); 36 | } 37 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/ContentRootConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisModuleDescriptor; 22 | import com.intellij.openapi.roots.ModifiableRootModel; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created 2:05 AM 15 June 2015. 27 | * 28 | * @author Alexander Bartash 29 | */ 30 | public interface ContentRootConfigurator { 31 | 32 | void configure( 33 | @NotNull ModifiableRootModel modifiableRootModel, 34 | @NotNull HybrisModuleDescriptor moduleDescriptor 35 | ); 36 | 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/DataSourcesConfigurator.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.project.configurators; 2 | 3 | import com.intellij.openapi.project.Project; 4 | import org.jetbrains.annotations.NotNull; 5 | 6 | /** 7 | * @author Eugene.Kudelevsky 8 | */ 9 | public interface DataSourcesConfigurator { 10 | 11 | void configure(@NotNull Project project); 12 | } 13 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/JavaCompilerConfigurator.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.project.configurators; 2 | 3 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisProjectDescriptor; 4 | import com.intellij.openapi.project.Project; 5 | import org.jetbrains.annotations.NotNull; 6 | 7 | public interface JavaCompilerConfigurator { 8 | 9 | void configure( 10 | @NotNull final HybrisProjectDescriptor descriptor, 11 | @NotNull final Project project, 12 | @NotNull final HybrisConfiguratorCache cache 13 | ); 14 | } 15 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/JavadocModuleConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisModuleDescriptor; 22 | import com.intellij.openapi.roots.ModifiableRootModel; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created by Sergey Aksenenko on 4/6/2016. 27 | */ 28 | public interface JavadocModuleConfigurator { 29 | 30 | void configure( 31 | @NotNull ModifiableRootModel modifiableRootModel, 32 | @NotNull HybrisModuleDescriptor moduleDescriptor 33 | ); 34 | } 35 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/LoadedConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisModuleDescriptor; 22 | import com.intellij.openapi.project.Project; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | import java.util.List; 26 | 27 | public interface LoadedConfigurator { 28 | 29 | void configure( 30 | @NotNull final Project project, 31 | @NotNull final List allModules 32 | ); 33 | } 34 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/ModuleSettingsConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisModuleDescriptor; 22 | import com.intellij.openapi.module.Module; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created by Martin Zdarsky-Jones on 29/09/2016. 27 | */ 28 | public interface ModuleSettingsConfigurator { 29 | 30 | void configure(@NotNull final HybrisModuleDescriptor moduleDescriptor, @NotNull final Module javaModule); 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/ModulesDependenciesConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisProjectDescriptor; 22 | import com.intellij.openapi.externalSystem.service.project.IdeModifiableModelsProvider; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created 12:24 AM 25 June 2015. 27 | * 28 | * @author Alexander Bartash 29 | */ 30 | public interface ModulesDependenciesConfigurator { 31 | 32 | void configure( 33 | @NotNull HybrisProjectDescriptor hybrisProjectDescriptor, 34 | @NotNull IdeModifiableModelsProvider modifiableModelsProvider 35 | ); 36 | } 37 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/RunConfigurationConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisProjectDescriptor; 22 | import com.intellij.openapi.project.Project; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created by Martin Zdarsky-Jones (martin.zdarsky@hybris.com) on 17/10/2016. 27 | */ 28 | public interface RunConfigurationConfigurator { 29 | 30 | void configure( 31 | final HybrisProjectDescriptor hybrisProjectDescriptor, 32 | @NotNull final Project project, 33 | final HybrisConfiguratorCache cache 34 | ); 35 | } 36 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/SearchScopeConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.openapi.module.ModifiableModuleModel; 22 | import com.intellij.openapi.project.Project; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created by Martin Zdarsky-Jones on 04/07/2017. 27 | */ 28 | public interface SearchScopeConfigurator { 29 | 30 | void configure( 31 | @NotNull final Project project, 32 | @NotNull final ModifiableModuleModel model 33 | ); 34 | 35 | } 36 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/TestRunConfigurationConfigurator.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.project.configurators; 2 | 3 | /** 4 | * @author Eugene.Kudelevsky 5 | */ 6 | public interface TestRunConfigurationConfigurator extends RunConfigurationConfigurator { 7 | } 8 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/configurators/VersionControlSystemConfigurator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.configurators; 20 | 21 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisProjectDescriptor; 22 | import com.intellij.openapi.project.Project; 23 | import org.jetbrains.annotations.NotNull; 24 | 25 | /** 26 | * Created by Martin Zdarsky-Jones (martin.zdarsky@hybris.com) on 17/10/2016. 27 | */ 28 | public interface VersionControlSystemConfigurator { 29 | 30 | void 31 | configure( 32 | @NotNull final HybrisProjectDescriptor hybrisProjectDescriptor, 33 | @NotNull final Project project 34 | ); 35 | } 36 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/descriptors/HybrisModuleDescriptorFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.descriptors; 20 | 21 | import com.intellij.idea.plugin.hybris.project.exceptions.HybrisConfigurationException; 22 | import org.jetbrains.annotations.NotNull; 23 | 24 | import java.io.File; 25 | 26 | /** 27 | * Created 1:58 PM 20 June 2015. 28 | * 29 | * @author Alexander Bartash 30 | */ 31 | public interface HybrisModuleDescriptorFactory { 32 | 33 | @NotNull 34 | HybrisModuleDescriptor createDescriptor( 35 | @NotNull File file, 36 | @NotNull HybrisProjectDescriptor rootProjectDescriptor 37 | ) throws HybrisConfigurationException; 38 | 39 | } 40 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/exceptions/HybrisConfigurationException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.exceptions; 20 | 21 | /** 22 | * Created 11:22 PM 13 June 2015. 23 | * 24 | * @author Alexander Bartash 25 | */ 26 | public class HybrisConfigurationException extends Exception { 27 | 28 | public HybrisConfigurationException(final String message) { 29 | super(message); 30 | } 31 | 32 | public HybrisConfigurationException(final String message, final Throwable cause) { 33 | super(message, cause); 34 | } 35 | 36 | public HybrisConfigurationException(final Throwable cause) { 37 | super(cause); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/tasks/TaskProgressProcessor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.tasks; 20 | 21 | /** 22 | * Created 7:09 PM 20 June 2015. 23 | * 24 | * @author Alexander Bartash 25 | */ 26 | public interface TaskProgressProcessor { 27 | 28 | boolean shouldContinue(T t); 29 | 30 | } 31 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/utils/HybrisRootUtil.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.project.utils; 2 | 3 | import com.intellij.idea.plugin.hybris.common.HybrisConstants; 4 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisModuleDescriptor; 5 | import com.intellij.idea.plugin.hybris.project.descriptors.HybrisModuleDescriptorType; 6 | import com.intellij.openapi.module.Module; 7 | import com.intellij.openapi.module.ModuleManager; 8 | import com.intellij.openapi.project.Project; 9 | import com.intellij.openapi.roots.ModuleRootManager; 10 | import com.intellij.openapi.vfs.VirtualFile; 11 | import org.jetbrains.annotations.NotNull; 12 | import org.jetbrains.annotations.Nullable; 13 | 14 | import java.util.Arrays; 15 | 16 | /** 17 | * @author Eugene.Kudelevsky 18 | */ 19 | public class HybrisRootUtil { 20 | 21 | private HybrisRootUtil() { 22 | } 23 | 24 | @Nullable 25 | public static VirtualFile findPlatformRootDirectory(@NotNull final Project project) { 26 | final Module platformModule = 27 | Arrays.stream(ModuleManager.getInstance(project).getModules()) 28 | .filter(module -> HybrisModuleDescriptor.getDescriptorType(module) == HybrisModuleDescriptorType.PLATFORM) 29 | .findAny() 30 | .orElse(null); 31 | 32 | return platformModule == null ? null 33 | : Arrays.stream(ModuleRootManager.getInstance(platformModule).getContentRoots()) 34 | .filter(vFile -> vFile.findChild(HybrisConstants.EXTENSIONS_XML) != null) 35 | .findAny() 36 | .orElse(null); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/utils/ModuleGroupUtils.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.project.utils; 2 | 3 | import com.intellij.idea.plugin.hybris.project.configurators.GroupModuleConfigurator; 4 | import com.intellij.idea.plugin.hybris.project.descriptors.RootModuleDescriptor; 5 | import org.jetbrains.annotations.NotNull; 6 | 7 | import java.util.HashMap; 8 | import java.util.List; 9 | import java.util.Map; 10 | 11 | public class ModuleGroupUtils { 12 | 13 | private ModuleGroupUtils(){} 14 | 15 | @NotNull 16 | public static Map fetchGroupMapping(final GroupModuleConfigurator groupModuleConfigurator, final List modules) { 17 | Map groupMapping = new HashMap<>(); 18 | modules.forEach(module ->{ 19 | final String[] path = groupModuleConfigurator.getGroupName(module); 20 | if (path != null) { 21 | groupMapping.put(module.getName(), path); 22 | } 23 | }); 24 | return groupMapping; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/utils/Processor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.utils; 20 | 21 | /** 22 | * Created 3:54 PM 08 January 2016. 23 | * 24 | * @author Alexander Bartash 25 | */ 26 | public interface Processor { 27 | 28 | void process(T parameter); 29 | 30 | } 31 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/project/wizard/NonGuiSupport.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.project.wizard; 20 | 21 | import com.intellij.idea.plugin.hybris.settings.HybrisProjectSettings; 22 | import com.intellij.openapi.options.ConfigurationException; 23 | 24 | /** 25 | * Created by Martin Zdarsky-Jones (martin.zdarsky@hybris.com) on 14/2/17. 26 | */ 27 | public interface NonGuiSupport { 28 | 29 | void nonGuiModeImport(final HybrisProjectSettings settings) throws ConfigurationException; 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/settings/HybrisDeveloperSpecificProjectSettingsListener.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.settings; 2 | 3 | import com.intellij.util.messages.Topic; 4 | 5 | public interface HybrisDeveloperSpecificProjectSettingsListener { 6 | Topic TOPIC = Topic.create("HybrisDeveloperSpecificProjectSettingsListener", HybrisDeveloperSpecificProjectSettingsListener.class); 7 | 8 | default void hacConnectionSettingsChanged() {}; 9 | 10 | default void solrConnectionSettingsChanged() {}; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/tools/remote/action/ExecuteGroovyAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.tools.remote.action; 20 | 21 | import org.jetbrains.plugins.groovy.GroovyFileType; 22 | 23 | import static com.intellij.idea.plugin.hybris.common.HybrisConstants.GROOVY_CONSOLE_TITLE; 24 | 25 | public class ExecuteGroovyAction extends AbstractExecuteAction { 26 | 27 | @Override 28 | protected String getExtension() { 29 | return GroovyFileType.GROOVY_FILE_TYPE.getDefaultExtension(); 30 | } 31 | 32 | @Override 33 | protected String getConsoleName() { 34 | return GROOVY_CONSOLE_TITLE; 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/tools/remote/action/ImportImpexAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.tools.remote.action; 20 | 21 | import com.intellij.idea.plugin.hybris.impex.file.ImpexFileType; 22 | 23 | import static com.intellij.idea.plugin.hybris.common.HybrisConstants.IMPEX_CONSOLE_TITLE; 24 | 25 | /** 26 | * @author Nosov Aleksandr 27 | */ 28 | public class ImportImpexAction extends AbstractExecuteAction { 29 | 30 | 31 | @Override 32 | protected String getExtension() { 33 | return ImpexFileType.getInstance().getDefaultExtension(); 34 | } 35 | 36 | @Override 37 | protected String getConsoleName() { 38 | return IMPEX_CONSOLE_TITLE; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/tools/remote/console/HybrisConsoleProvider.kt: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.tools.remote.console 2 | 3 | import com.intellij.openapi.extensions.ExtensionPointName 4 | import com.intellij.openapi.project.Project 5 | import javax.swing.Icon 6 | 7 | interface HybrisConsoleProvider { 8 | 9 | val tabTitle: String 10 | get() = "" 11 | 12 | val tip: String 13 | get() = "" 14 | 15 | val icon: Icon? 16 | get() = null 17 | 18 | fun createConsole(project: Project): HybrisConsole? 19 | 20 | companion object { 21 | val EP_NAME = ExtensionPointName.create("com.intellij.idea.plugin.hybris.consoleProvider") 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/tools/remote/console/SolrConsole.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.tools.remote.console 20 | 21 | import com.intellij.openapi.ui.ComboBox 22 | 23 | /** 24 | * @author Nosov Aleksandr 25 | */ 26 | interface SolrConsole { 27 | 28 | val coresComboBox: ComboBox 29 | } -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/tools/remote/http/SolrHttpClient.kt: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.tools.remote.http 2 | 3 | import com.intellij.idea.plugin.hybris.settings.HybrisRemoteConnectionSettings 4 | import com.intellij.idea.plugin.hybris.tools.remote.http.impex.HybrisHttpResult 5 | import com.intellij.idea.plugin.hybris.tools.remote.http.solr.SolrQueryObject 6 | import com.intellij.openapi.project.Project 7 | 8 | /** 9 | * @author Nosov Aleksandr 10 | */ 11 | interface SolrHttpClient { 12 | @Throws(Exception::class) 13 | fun listOfCores(project: Project, solrConnectionSettings: HybrisRemoteConnectionSettings): Array 14 | fun listOfCores(project: Project): Array 15 | fun executeSolrQuery(project: Project, queryObject: SolrQueryObject): HybrisHttpResult 16 | 17 | companion object { 18 | @JvmStatic 19 | fun getInstance(project: Project): SolrHttpClient { 20 | return project.getComponent(SolrHttpClient::class.java) 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/tools/remote/http/solr/SolrQueryObject.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.tools.remote.http.solr 20 | 21 | /** 22 | * @author Nosov Aleksandr 23 | */ 24 | data class SolrQueryObject(val query: String, val core: String, val rows: Int) -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/toolwindow/HybrisToolWindowCondition.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.toolwindow; 2 | 3 | import com.intellij.idea.plugin.hybris.settings.HybrisProjectSettingsComponent; 4 | import com.intellij.openapi.project.Project; 5 | import com.intellij.openapi.util.Condition; 6 | 7 | public class HybrisToolWindowCondition implements Condition { 8 | 9 | @Override 10 | public boolean value(final Project project) { 11 | return HybrisProjectSettingsComponent.getInstance(project).getState().isHybrisProject(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/toolwindow/document/filter/UnsignedIntegerDocumentFilter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.toolwindow.document.filter; 20 | 21 | public class UnsignedIntegerDocumentFilter extends AbstractDocumentFilter { 22 | 23 | @Override 24 | public boolean test(final String text) { 25 | try { 26 | Integer.parseUnsignedInt(text); 27 | } catch (NumberFormatException e) { 28 | return false; 29 | } 30 | return true; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/toolwindow/document/listener/SimpleDocumentListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.toolwindow.document.listener; 20 | 21 | import javax.swing.event.DocumentEvent; 22 | import javax.swing.event.DocumentListener; 23 | 24 | public abstract class SimpleDocumentListener implements DocumentListener { 25 | 26 | public abstract void update(DocumentEvent e); 27 | 28 | @Override 29 | public void insertUpdate(DocumentEvent e) { 30 | update(e); 31 | } 32 | 33 | @Override 34 | public void removeUpdate(DocumentEvent e) { 35 | update(e); 36 | } 37 | 38 | @Override 39 | public void changedUpdate(DocumentEvent e) { 40 | update(e); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/inspections/ValidateContext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.inspections; 20 | 21 | import com.intellij.codeInspection.InspectionManager; 22 | import com.intellij.psi.PsiElement; 23 | import org.jetbrains.annotations.NotNull; 24 | import org.w3c.dom.Document; 25 | import org.w3c.dom.Node; 26 | 27 | interface ValidateContext { 28 | 29 | boolean isOnTheFly(); 30 | 31 | @NotNull 32 | Document getDocument(); 33 | 34 | @NotNull 35 | InspectionManager getManager(); 36 | 37 | @NotNull 38 | PsiElement mapNodeToPsi(@NotNull Node xmlNode); 39 | } 40 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/inspections/XPathService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.inspections; 20 | 21 | import org.jetbrains.annotations.NotNull; 22 | import org.jetbrains.annotations.Nullable; 23 | import org.w3c.dom.NodeList; 24 | 25 | import javax.xml.xpath.XPathExpressionException; 26 | 27 | /** 28 | * Created 5:14 PM 18 September 2016. 29 | * 30 | * @author Alexander Bartash 31 | */ 32 | public interface XPathService { 33 | 34 | @NotNull 35 | NodeList computeNodeSet(@Nullable String xpath, @NotNull Object start) throws XPathExpressionException; 36 | 37 | boolean computeBoolean(@Nullable String xpath, @NotNull Object start) throws XPathExpressionException; 38 | } 39 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/TSMetaAtomic.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.meta; 20 | 21 | import com.intellij.idea.plugin.hybris.type.system.model.AtomicType; 22 | 23 | public interface TSMetaAtomic extends TSMetaClassifier { 24 | 25 | } 26 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/TSMetaClassifier.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.meta; 20 | 21 | import com.intellij.util.xml.DomElement; 22 | 23 | public interface TSMetaClassifier { 24 | 25 | String getName(); 26 | 27 | DOM retrieveDom(); 28 | 29 | } 30 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/TSMetaCollection.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.meta; 20 | 21 | import com.intellij.idea.plugin.hybris.type.system.model.CollectionType; 22 | import com.intellij.idea.plugin.hybris.type.system.model.Type; 23 | import com.intellij.util.xml.DomElement; 24 | import org.jetbrains.annotations.Nullable; 25 | 26 | public interface TSMetaCollection extends TSMetaClassifier { 27 | 28 | @Nullable 29 | Type getType(); 30 | 31 | @Nullable 32 | String getElementTypeName(); 33 | 34 | @Nullable 35 | TSMetaClassifier getElementType(); 36 | 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/TSMetaEnum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.meta; 20 | 21 | import com.intellij.idea.plugin.hybris.type.system.model.EnumType; 22 | import org.jetbrains.annotations.NotNull; 23 | 24 | import java.util.Collection; 25 | import java.util.stream.Stream; 26 | 27 | public interface TSMetaEnum extends TSMetaClassifier { 28 | 29 | @NotNull 30 | Stream getValuesStream(); 31 | 32 | @NotNull 33 | Collection findValueByName(@NotNull String name); 34 | } 35 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/TSMetaEnumValue.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.type.system.meta; 2 | 3 | import com.intellij.idea.plugin.hybris.type.system.model.EnumValue; 4 | import org.jetbrains.annotations.Nullable; 5 | 6 | /** 7 | * @author Eugene.Kudelevsky 8 | */ 9 | public interface TSMetaEnumValue { 10 | @Nullable 11 | String getName(); 12 | 13 | @Nullable 14 | EnumValue retrieveDom(); 15 | } 16 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/TSMetaProperty.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.meta; 20 | 21 | import com.intellij.idea.plugin.hybris.type.system.model.Attribute; 22 | import org.jetbrains.annotations.NotNull; 23 | import org.jetbrains.annotations.Nullable; 24 | 25 | /** 26 | * Created by Martin Zdarsky-Jones (martin.zdarsky@hybris.com) on 15/06/2016. 27 | */ 28 | public interface TSMetaProperty { 29 | 30 | @Nullable 31 | String getName(); 32 | 33 | @Nullable 34 | Attribute retrieveDom(); 35 | 36 | boolean isDeprecated(); 37 | 38 | @Nullable 39 | String getType(); 40 | 41 | @NotNull 42 | TSMetaClass getMetaClass(); 43 | } 44 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/impl/TSMetaAtomicImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.meta.impl; 20 | 21 | 22 | import com.intellij.idea.plugin.hybris.type.system.meta.TSMetaAtomic; 23 | import com.intellij.idea.plugin.hybris.type.system.model.AtomicType; 24 | 25 | /** 26 | * @author Nosov Aleksandr 27 | */ 28 | class TSMetaAtomicImpl extends TSMetaEntityImpl implements TSMetaAtomic { 29 | 30 | public TSMetaAtomicImpl(final String name, final AtomicType dom) { 31 | super(name, dom); 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/meta/impl/TSMetaEnumValueImpl.java: -------------------------------------------------------------------------------- 1 | package com.intellij.idea.plugin.hybris.type.system.meta.impl; 2 | 3 | import com.intellij.idea.plugin.hybris.type.system.meta.TSMetaEnumValue; 4 | import com.intellij.idea.plugin.hybris.type.system.model.EnumValue; 5 | import org.jetbrains.annotations.NotNull; 6 | import org.jetbrains.annotations.Nullable; 7 | 8 | /** 9 | * @author Eugene.Kudelevsky 10 | */ 11 | public class TSMetaEnumValueImpl extends TSMetaEntityImpl implements TSMetaEnumValue { 12 | 13 | public TSMetaEnumValueImpl(final @NotNull TSMetaEnumImpl owner, final @NotNull EnumValue dom) { 14 | super(extractEnumValueName(dom), dom); 15 | } 16 | 17 | @Nullable 18 | private static String extractEnumValueName(@NotNull final EnumValue dom) { 19 | return dom.getCode().getValue(); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/model/Cardinality.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | // Generated on Sun Jun 05 01:21:13 EEST 2016 20 | // DTD/Schema : null 21 | 22 | package com.intellij.idea.plugin.hybris.type.system.model; 23 | 24 | /** 25 | * null:cardinalityAttrType enumeration. 26 | */ 27 | public enum Cardinality implements com.intellij.util.xml.NamedEnum { 28 | MANY("many"), 29 | ONE("one"); 30 | 31 | private final String value; 32 | 33 | Cardinality(String value) { 34 | this.value = value; 35 | } 36 | 37 | public String getValue() { 38 | return value; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/model/CreationMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | // Generated on Sun Jun 05 01:21:13 EEST 2016 20 | // DTD/Schema : null 21 | 22 | package com.intellij.idea.plugin.hybris.type.system.model; 23 | 24 | /** 25 | * null:creationmodeAttrType enumeration. 26 | */ 27 | public enum CreationMode implements com.intellij.util.xml.NamedEnum { 28 | ALL("all"), 29 | FORCE("force"), 30 | HSQLDB("hsqldb"), 31 | MYSQL("mysql"), 32 | ORACLE("oracle"), 33 | SAP("sap"), 34 | SQLSERVER("sqlserver"); 35 | 36 | private final String value; 37 | 38 | CreationMode(String value) { 39 | this.value = value; 40 | } 41 | 42 | public String getValue() { 43 | return value; 44 | } 45 | 46 | } 47 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/model/Description.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.model; 20 | 21 | import com.intellij.util.xml.DomElement; 22 | import com.intellij.util.xml.Stubbed; 23 | import com.intellij.util.xml.StubbedOccurrence; 24 | 25 | @Stubbed 26 | @StubbedOccurrence 27 | public interface Description extends DomElement { 28 | 29 | } 30 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/model/Type.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | // Generated on Sun Jun 05 01:21:13 EEST 2016 20 | // DTD/Schema : null 21 | 22 | package com.intellij.idea.plugin.hybris.type.system.model; 23 | 24 | /** 25 | * null:typeAttrType enumeration. 26 | */ 27 | public enum Type implements com.intellij.util.xml.NamedEnum { 28 | COLLECTION("collection"), 29 | LIST("list"), 30 | SET("set"); 31 | 32 | private final String value; 33 | 34 | Type(String value) { 35 | this.value = value; 36 | } 37 | 38 | public String getValue() { 39 | return value; 40 | } 41 | 42 | } 43 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/model/generator/Emitter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /* 20 | * XSD/DTD Model generator tool 21 | * 22 | * By Gregory Shrago 23 | * 2002 - 2006 24 | */ 25 | package com.intellij.idea.plugin.hybris.type.system.model.generator; 26 | 27 | import java.io.File; 28 | 29 | /** 30 | * @author Konstantin Bulenkov 31 | */ 32 | public interface Emitter { 33 | 34 | String JDOC_OPEN = "/**"; 35 | String JDOC_CONT = " * "; 36 | String JDOC_CLOSE = " */"; 37 | 38 | void emit(FileManager fileManager, ModelDesc model, File outputRoot); 39 | } 40 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/model/generator/FileManager.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /* 20 | * XSD/DTD Model generator tool 21 | * 22 | * By Gregory Shrago 23 | * 2002 - 2006 24 | */ 25 | package com.intellij.idea.plugin.hybris.type.system.model.generator; 26 | 27 | import java.io.File; 28 | 29 | /** 30 | * @author Konstantin Bulenkov 31 | */ 32 | public interface FileManager { 33 | 34 | public File releaseOutputFile(File outFile); 35 | 36 | public File getOutputFile(File target); 37 | } 38 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/model/generator/ModelLoader.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | package com.intellij.idea.plugin.hybris.type.system.model.generator; 19 | 20 | import org.apache.xerces.xni.parser.XMLEntityResolver; 21 | 22 | import java.io.File; 23 | import java.util.Collection; 24 | 25 | /** 26 | * @author Konstantin Bulenkov 27 | */ 28 | public interface ModelLoader { 29 | 30 | void loadModel(ModelDesc model, Collection files, XMLEntityResolver resolver) throws Exception; 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/validation/ItemsFileValidation.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.validation; 20 | 21 | import com.intellij.openapi.vfs.VirtualFile; 22 | import org.jetbrains.annotations.NotNull; 23 | 24 | /** 25 | * @author Vlad Bozhenok 26 | */ 27 | public interface ItemsFileValidation { 28 | 29 | boolean isFileOutOfDate(@NotNull VirtualFile file); 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/com/intellij/idea/plugin/hybris/type/system/validation/TSRelationsValidation.java: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of "hybris integration" plugin for Intellij IDEA. 3 | * Copyright (C) 2014-2016 Alexander Bartash 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU Lesser General Public License as 7 | * published by the Free Software Foundation, either version 3 of the 8 | * License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 | * See the GNU Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | package com.intellij.idea.plugin.hybris.type.system.validation; 20 | 21 | import com.intellij.idea.plugin.hybris.type.system.model.Relation; 22 | import com.intellij.psi.PsiClass; 23 | import org.jetbrains.annotations.NotNull; 24 | import org.jetbrains.annotations.Nullable; 25 | 26 | import java.util.List; 27 | import java.util.Map; 28 | 29 | /** 30 | * @author Vlad Bozhenok 31 | */ 32 | public interface TSRelationsValidation { 33 | 34 | boolean validateRelations(@Nullable List relationsList, @NotNull Map generatedClasses); 35 | 36 | } 37 | --------------------------------------------------------------------------------