Skip to content
El Jaoujat Youssef edited this page Apr 5, 2016 · 24 revisions

Overview

Hybris Impex Editor adds support to Impex language by providing features like:

Ressources

Installation

From eclipse marketplace

  1. Select Help > Eclipse Marketplace...
  2. In the search box enter the keyword "hybris" and choose hybris Impex editor v1.5.5 and click Install

Using eclipse update site

  1. Select Help > Install New Software...
  2. In the Add Site dialog, enter http://eljoujat.github.io/updates
  3. Place a check mark next to Impex, confirm that the sub-components are all checked, and click Install.

Manual installation

  1. Go to https://github.com/eljoujat/eclipseimpexeditor/releases
  2. Fetch all the latest release jar files
  3. Put the file into dropins (e.g. /yourpath/eclipse/dropins) folder and restart eclipse

Building from Source

Finally, if you want to contribute or analyze the plugin you can build it from source.

This project is built using Eclipse Tycho (https://www.eclipse.org/tycho/) and requires, at least, maven 3.0 (http://maven.apache.org/download.html) to be built via CLI.

  1. fork the code source git clone https://github.com/eljoujat/eclipseimpexeditor.git
  2. cd eclipseimpexeditor
  3. mvn clean package

The first run will take quite a while since maven will download all the required dependencies in order to build everything.

In order to use the generated eclipse plugins in Eclipse, you will need m2e (https://www.eclipse.org/m2e) and the m2eclipse-tycho plugin (https://github.com/tesla/m2eclipse-tycho/). Update sites to install these plugins :

Usage

Configure the plugin

Search for "Impex" in the eclipse settings and you will find the plugin configuration page.

Configure the connection with hybris, to execute and validate the Impex with any running instance of hybris. In the background, the plugin will fetch your hybris models scheme one time. The plugin works by using the HAC functionality and you don't need any additional extensions.

Important: please use no https and no domain mapping for now. If you have your hybris URL configured with https and some custom domain mapping, just use the localhost domain and the right port (e.g. 9001). First, verify you can clearly open the url in the browser and can login with the same credentials you use in the plugin. Customize the colors for the impex syntax as you need them.

Preference Snapshot

Indexing Schema and Validating Impex

After you configured the URL and credentials for your (local) hybris instance, please index the schema data by right clicking on any impex file and going to the Impex Editor > Refresh Impex Data Model. At this point, the impex plugin will cache the schema from your configured hybris instance and you can use the auto-complete. After it it's not necessary to have the hybris instance running unless you have a change in your schema and want to update it.

Syntax highlighting

The Syntax highlighting feature uses the rule-based scanner class. The scanner takes a given number of rules, and consumes the Impex file and evaluates each token. If the token matches a rule, the scanner exits with the corresponding properties.

The ruleset is based on the Hybris Impex syntax documentation

Before : Before

After :

After

Autocompletion

The auto-completion is the most liked what the most user look for in any text editor since I have stored the data definition, this feature was easy to implement as well. The autocomplete even recognizes single attributes of each model type you are working on.

Preference Snapshot

Formatting

The plugin allows formatting the Impex file to a nice and more structured format so it becomes more readable and easy to change .

Formatting Snapshot

What next:

Features I'm working on are:

  • [] Validate the impex with error markers
  • [] Execute the impex
  • [] Hyperlink features to easily locate where an Item is already valued from the same impex
  • [] Find usage Features, find all usage for the selected defined and selected item
  • Formatting

Other existing plugins for Hybris

  1. https://github.com/ShahnazK/hylips (abandoned?)
  2. https://github.com/erikwennerberg/impexPlugin (a little bit better coloring, e.g. semicolon is in different color)
Clone this wiki locally