License State

#1

Hi Support Team

is there any valid way to read the correct lincense state from the program?

Background:

We have an OEM License of objectdb. I'm building our application automaticly via gradle. The enhancement is done in a gradle task. Unfortunatly this has to be done on a macos due to XCode and notarisation issues. The macos changes its mac-id every time I connect to our office via VPN (due to home-office) . And the licensemanagement of objectdb relies on the mac-id.

So in the end, if I forgot to disconnect the VPN connection there is no valid enhancement for the whole build for all different platforms. This will be recognized in the UAT after enhancing, building, notarisation, uploading and testing the all installers.

If I could read the (valid) licensestate programmaticly, I would extend my gradle task and let it fail fast in case I forgot to disconnect the VPN connection.

best regards

Arne

#2

You can check if activation is working using a query:

    System.out.println(emf.createEntityManager().createQuery(
        "objectdb activation", boolean.class).getSingleResult());

It will not tell you the mode (i.e. OEM). We can implement it if you need it.

However, all the OEM enhanced entity classes implement a special interface, com.objectdb.spi.SignedType, so you can test that the relevant classes were enhanced in OEM mode using instanceof.

In addition, if you capture the output of the Enhancer you should find the word OEM in the output.

ObjectDB Support
#3

thanks

that's what I was looking for and it helped very much

best regards

Arne

Reply