1 Reply Latest reply on Sep 15, 2018 6:32 AM by Ifor Darby-Hoskin

    Can't call Inventory.perform(RFIDReader, PostFilter, ...) in API3 2.0.0.2

    Dwight Fowler

      Hi,

       

      I just updated my app from API3 1.0.3.14 the new API3 2.0.0.2 library. I have an existing call to start inventorying:

       

      reader.Actions.Inventory.perform(myPostFilter, someTriggerInfo, myAntennaInfo);

       

      Now my application can't compile. It's complaining about 'myPostFilter'. Apparently, the PostFilterInfo class doesn't exist anymore. I took a look at the com.zebra.rfid.api3.Inventory class and I found this:

       

      public void perform(bh postFilterInfo, TriggerInfo triggerInfo, AntennaInfo antennaInfo)

       

      Looking at the com.zebra.rfid.api3.bh class, it appears to be a default-internal class

      // 
      // Source code recreated from a .class file by IntelliJ IDEA
      // (powered by Fernflower decompiler)
      //
      package com.zebra.rfid.api3;
      class bh {
           public TagPatternBase a;
           public TagPatternBase b;
           public bz c;
           private FILTER_MATCH_PATTERN d;
           private boolean e;

           public FILTER_MATCH_PATTERN a() {
               return this.d;
           }

           public boolean b() {
               return this.e;
           }
      }

      Is there some new way to call Inventory.perform?