4 Replies Latest reply: May 22, 2013 11:42 AM by rp0428 RSS

    Decompiling acess$0 method

    1010308
      Hello,

      I have decompiled some jars and generated java files. And in one of the java file there are some instance of the access$ method as shown below:

      AddressSet.access$602(addressSet, "!".equals(matcher.group(1)));
      +/* 350 */ if ("assigned".equals(matcher.group(2))) {+
      +/* 351 */ AddressSet.access$302(addressSet, true);+
      +/* */ }+
      +/* */ else {+
      +/* 354 */ AddressSet.access$102(addressSet, matcher.group(2));+
      +/* 355 */ if (null != matcher.group(3)) {+
      +/* */ try {+
      +/* 357 */ AddressSet.access$202(addressSet, Integer.parseInt(matcher.group(3).substring(1)));+
      +/* */ }+
      +/* */ catch (NumberFormatException nfe) {+
      +/* 360 */ fail(rule, matcher.group(3));+
      +/* */ }+
      +/* */ }+


      I think these methods are generated by JVM. While compiling this java file i am getting following error:

      +[javac] ^+
      +[javac] D:\OpenCloud\fsmtool\freephone\src\org\jainslee\resources\diameter\base\types\IPFilterRu+
      le.java:202: error: cannot find symbol
      +[javac] /* 349 */ AddressSet.access$602(addressSet, "!".equals(matcher.group(1)));+
      +[javac] ^+
      +[javac] symbol: method access$602(IPFilterRule.AddressSet,boolean)+
      +[javac] location: class IPFilterRule.AddressSet+
      +[javac] D:\OpenCloud\fsmtool\freephone\src\org\jainslee\resources\diameter\base\types\IPFilterRu+
      le.java:204: error: cannot find symbol
      +[javac] /* 351 */ AddressSet.access$302(addressSet, true);+
      +[javac] ^+
      +[javac] symbol: method access$302(IPFilterRule.AddressSet,boolean)+
      +[javac] location: class IPFilterRule.AddressSet+
      +[javac] D:\OpenCloud\fsmtool\freephone\src\org\jainslee\resources\diameter\base\types\IPFilterRu+
      le.java:207: error: cannot find symbol
      +[javac] /* 354 */ AddressSet.access$102(addressSet, matcher.group(2));+
      +[javac] ^+
      +[javac] symbol: method access$102(IPFilterRule.AddressSet,String)+
      +[javac] location: class IPFilterRule.AddressSet+
      +[javac] D:\OpenCloud\fsmtool\freephone\src\org\jainslee\resources\diameter\base\types\IPFilterRu+
      le.java:210: error: cannot find symbol
      +[javac] /* 357 */ AddressSet.access$202(addressSet, Integer.parseInt(matcher.group(3+
      +).substring(1)));+
      +[javac] ^+
      +[javac] symbol: method access$202(IPFilterRule.AddressSet,int)+
      +[javac] location: class IPFilterRule.AddressSet+
      +[javac] D:\OpenCloud\fsmtool\freephone\src\org\jainslee\resources\diameter\base\types\IPFilterRu+
      le.java:221: error: cannot find symbol
      +[javac] /* 368 */ AddressSet.access$402(addressSet, new int[ports.length][2]);+
      +[javac] ^+
      +[javac] symbol: method access$402(IPFilterRule.AddressSet,int[][])+
      +[javac] location: class IPFilterRule.AddressSet+
      +[javac] D:\OpenCloud\fsmtool\freephone\src\org\jainslee\resources\diameter\base\types\IPFilterRu+
      le.java:228: error: cannot find symbol
      +[javac] /* 375 */ addressSet.ports[1] = AddressSet.access$400(addressSet)[i][0]+
      +;+
      +[javac] ^+
      +[javac] symbol: method access$400(IPFilterRule.AddressSet)+


      Please help me to solve this.

      Regards,
      Sajith.
        • 1. Re: Decompiling acess$0 method
          gimbal2
          Solve what? By going down the path of decompiling something you create your own little problem domain in which you will have to do your own research and solve your own bottlenecks. If you want outside help, don't do questionable things like decompiling classes and then try to recompile them. Work from the original source, if you don't have it get it. If you can't get it you were not supposed to get it in the first place and you're doing something possibly illegal.
          • 2. Re: Decompiling acess$0 method
            Tolls
            Since I can't see a source download for the RI at JAIN SLEE (https://developer.opencloud.com/devportal/display/OCDEV/JAIN+SLEE), I'm going to hazard a guess that you're not supposed to be doing this.
            • 3. Re: Decompiling acess$0 method
              1010308
              My question was simple...
              I just wanted to know about the access$ method and was seeking help to find out how it was generated...
              • 4. Re: Decompiling acess$0 method
                rp0428
                >
                My question was simple...
                I just wanted to know about the access$ method and was seeking help to find out how it was generated...
                >
                And the answer is just as simple.

                It was generated by the decompiler from the class file you provided. After all, that is what a decompiler does. You provide a class file - it generates, or tries to generate, a reconstructed version of a source file.

                Here is a link you can use to get ALL of the detailed information and they have access to the source code.
                https://developer.opencloud.com/devportal/display/OCDEV/Suggestions