Warn when certain constructor is used
Pietro Paolini
Pietro.Paolini at alfasystems.com
Fri Jun 1 10:31:01 UTC 2018
Hi,
Thank you very much for the answer, there are probably other ways but, as I am confined in the Java language domain going down to the "javac" path is something that will work and which I don’t dislike as I see it as a long term investment.
Moreover I've spent on it some time and I've gone past the non-come-back point :-)
Cheers,
P.
> -----Original Message-----
> From: Remi Forax [mailto:forax at univ-mlv.fr]
> Sent: 31 May 2018 13:19
> To: Pietro Paolini
> Cc: compiler-dev
> Subject: Re: Warn when certain constructor is used
>
> Hi Pietro,
> detecting usages of certain API entrypoints is usually done on the bytecode
> instead of on the source code in the Java world, it's usually easier because the
> bytecode is more stable than the source code and it has also the advantage
> to work not only with Java the language but also in Scala, Groovy, Kotlin, etc.
>
> You can use ASM [1] for that, here is an example [2] from stackoverflow.
>
> cheers,
> Rémi
>
> [1] http://asm.ow2.io/
> [2] https://stackoverflow.com/questions/930289/how-can-i-find-all-the-
> methods-that-call-a-given-method-in-java#931410
>
>
> ----- Mail original -----
> > De: "Pietro Paolini" <Pietro.Paolini at alfasystems.com>
> > À: "compiler-dev" <compiler-dev at openjdk.java.net>
> > Envoyé: Jeudi 31 Mai 2018 11:05:20
> > Objet: Warn when certain constructor is used
>
> > Hi all,
> >
> > I am not sure the question is appropriate for compiler-dev but I would like
> to
> > give it a try anyway.
> >
> > I would like to detect when a certain class's constructor is used and log its
> > usage along with filename and line number somewhere, such as a log file or
> > standard output, I can't use an IDE to do that as I am working on a fairly
> > large codebase and I need to automate the process, moreover it seems like
> an
> > interesting problem to solve.
> >
> > https://docs.oracle.com/javase/7/docs/api/javax/tools/JavaCompiler.html
> >
> > I was hoping that could help me but I haven't spot anything as yet, even
> though
> > I must admit that my knowledge on the matter is limited.
> >
> > Thanks,
> > Pietro
> >
> >
> > Pietro Paolini
> > Consultant
> >
> > Alfa
> > ________________________________
> > e: pietro.paolini at alfasystems.com | w:
> > alfasystems.com<https://www.alfasystems.com>
> > t: +44 (0) 20 7920-2643 | Moor Place, 1 Fore Street Avenue, London, EC2Y
> 9DT, GB
> > ________________________________
> >
> > The contents of this communication are not intended to be binding or
> constitute
> > any form of offer or acceptance or give rise to any legal obligations on
> behalf
> > of the sender or Alfa. The views or opinions expressed represent those of
> the
> > author and not necessarily those of Alfa. This email and any attachments
> are
> > strictly confidential and are intended solely for use by the individual or
> > entity to whom it is addressed. If you are not the addressee (or responsible
> > for delivery of the message to the addressee) you may not copy, forward,
> > disclose or use any part of the message or its attachments. At present the
> > integrity of email across the internet cannot be guaranteed and messages
> sent
> > via this medium are potentially at risk. All liability is excluded to the
> > extent permitted by law for any claims arising as a result of the use of this
> > medium to transmit information by or to Alfa or its affiliates.
> >
> > Alfa Financial Software Ltd
> > Reg. in England No: 0248 2325
More information about the compiler-dev
mailing list