# Migration to Ignition 8.1 - removed interfaces

**URL:** <https://forum.inductiveautomation.com/t/migration-to-ignition-8-1-removed-interfaces/55854>\
**Category:** Module Development\
**Tags:** ignition79, ignition81\
**Created:** [February 8, 2022, 9:55am UTC](https://forum.inductiveautomation.com/t/migration-to-ignition-8-1-removed-interfaces/55854 "2022-02-08T09:55:16Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![moongoal](https://avatars.discourse-cdn.com/v4/letter/m/d2c977/32.png) [@moongoal](https://forum.inductiveautomation.com/u/moongoal)\
**Post date:** [February 8, 2022, 9:55am UTC](https://forum.inductiveautomation.com/t/migration-to-ignition-8-1-removed-interfaces/55854/1 "2022-02-08T09:55:17Z")

</div>

Hi,

Across our company we’re upgrading our ignition from 7.9 to 8.1 and with that some of our custom-built modules. We noticed there are a few interfaces that were removed and couldn’t find an alternative as of yet. The missing classes are the following:

com.inductiveautomation.ignition.gateway.opc.SROPCServer  
SubscriptionChangeEventcom.inductiveautomation.ignition.gateway.opc.SubscriptionChangeEvent  
com.inductiveautomation.ignition.gateway.sqltags.SQLTagsManager (missing shutdown method)  
om.inductiveautomation.ignition.gateway.sqltags.SQLTagsManager  
com.inductiveautomation.ignition.gateway.sqltags.TagProvider  
com.inductiveautomation.ignition.gateway.sqltags.simple.SimpleProviderInterface  
com.inductiveautomation.ignition.gateway.sqltags.simple.WriteHandler  
com.inductiveautomation.ignition.gateway.SRContext  
com.inductiveautomation.ignition.gateway.sqltags.simple.SimpleTagProvider  
com.inductiveautomation.ignition.common.tags.config.TagConfigSet  
com.inductiveautomation.ignition.common.sqltags.model.TagInfo  
com.inductiveautomation.ignition.gateway.ContextStartup  
com.inductiveautomation.ignition.gateway.SRContext  
com.inductiveautomation.ignition.common.browsing.BrowseResults  
com.inductiveautomation.ignition.gateway.modules.ModuleManagerImpl

Can we please have some guidance on the best way to replace these? We’ve looked at the documentation but couldn’t find anything specific enough and customer support has directed us to this forum.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [February 8, 2022, 1:09pm UTC](https://forum.inductiveautomation.com/t/migration-to-ignition-8-1-removed-interfaces/55854/2 "2022-02-08T13:09:29Z")

</div>

Some of the `.sqltags.` items have analogs in `.tags.`, and `SRContext` is now `IgnitionGateway`. Beyond that, you’re pretty much on your own. IA has always disclaimed any API stability, which is why support won’t help you. Also, some items are not API classes, like `ModuleManagerImpl`. You’re not supposed to use non-API classes. (You can use them anyways, but the dependencies are not available through IA’s Maven repository.)

You are using parts of Ignition that I don’t have in any of my modules (tag providers), so I don’t have more specific suggestions. I recommend you browse the diffs on Github for the example projects closest to your functionality.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [February 8, 2022, 2:00pm UTC](https://forum.inductiveautomation.com/t/migration-to-ignition-8-1-removed-interfaces/55854/3 "2022-02-08T14:00:51Z")

</div>

The “SimpleTagProvider” stuff became “ManagedProviders” as your colleague was told in the other thread. This one has an example in the GitHub examples repo.

The tag stuff is mostly in the `.tags` package now and probably everything you need spirals off the new `TagManager` interface: [TagManager](https://files.inductiveautomation.com/sdk/javadoc/ignition81/8.1.13/com/inductiveautomation/ignition/common/tags/model/TagManager.html)

`SRContext` is `IgnitionGateway` but both of those are private, you should only be using the `GatewayContext` interface in your modules. `ModuleManagerImpl` is private too, you should only use the `ModuleManager` interface you get from `GatewayContext`.

There isn’t necessarily a 1:1 drop in replacement import for much of what you’re asking about. It might be better to break apart the different functionality your module(s) had and ask about it that way.

---

<div class="post-metadata">

**Author:** ![moongoal](https://avatars.discourse-cdn.com/v4/letter/m/d2c977/32.png) [@moongoal](https://forum.inductiveautomation.com/u/moongoal)\
**Post date:** [February 8, 2022, 5:17pm UTC](https://forum.inductiveautomation.com/t/migration-to-ignition-8-1-removed-interfaces/55854/4 "2022-02-08T17:17:45Z")

</div>

Thank you!
