How to organize deprecated node sources?

Hi forum,

I have a question regarding holding sources for deprecated nodes.

I have followed the rules in the noding guidelines: since the new node version is incompatible, I marked the node as "deprecated" in the factory xml, and removed it from the visible node tree.

But I didn't understand how to move the old source to src-deprecated.  If I get it right, the node implementation is identified in the settings.xml via the "factory" entry, e.g.

<entry key="factory" type="xstring" value="org.knime.chem.base.node.io.mol2.Mol2ReaderFactory"/>

Is this correct?  So I have to use a different factory-class in the plugin.xml, right?  Otherwise the new node version would silently replace the old one, when loading the workflow.

So now I rename my package for the new node version, but I would rather like to rename the old one, and having the current one always in my standard package.  E.g. now I have

- com.my_company.plugin.my_node
- com.my_company.plugin.my_node.v0201

where v0201 is my new, current version, but I would rather like to have

- com.my_company.plugin.my_node.old0200
- com.my_company.plugin.my_node

I hope you understand what I'm looking for.  Thanks for any help!

 

Frank

As you said, the old node must stay in its package and the new node must get a new package (or class) name. There is no other way.

Hi Thor,

thank you very much for clarifying!

Best, Frank