VCMX File manipulator

A long time ago, I released a java application as open source that allows to manipulate and extract data from VCM/VCMX component files. This has been used by the FlexLink Design Tool team to automate extraction of VCID’s, property names and values from component files automatically. It is also used to automatically create ecatalogues, which then can be used from within the Ecat sources dialog.

The application is a console application and can be used without any manual interaction. It is best used as an automation tool to verify and manipulate components before they are shared in a public ecat. At FlexLink it has been used together with Jenkins to automate the deployment of new components to their public ecat.

The project is available here: https://github.com/vc-thirdparty/vcmtool-java, and can be used through maven using this artifact: https://mvnrepository.com/artifact/com.github.redsolo.vcmtool/

Features:

  • Create ecatalogue automatically from VCMX files
  • List or modify keywords, tags, revisions, vcid, property name and property values
  • Updates property values without changing it in Modelling, can be used to force certain properties that are easy to reset when doing component modelling
  • Grep's data from component to get a component's VCID, properties and their values, this can be used to automatically build json, csv files from component files.
  • Verification of components (which is nice to do before making components public)
    • That component is saved in 0,0,0
    • That properties in component exists and has a certain value
    • That component name matches a regular expression
    • That component properties doesnt start or end with a space
    • That all features have OnDemandLoad enabled
    • That python scripts conforms to standard, space instead of tab
  • Extract, insert or replace files in VCMX file, which can be used to replace the ecat thumbnails, etc
  • Replace text within the component.rsc
  • List features in a component