JavaMOP1.0

Jump to: navigation, search

This version of JavaMOP is old and not supported anymore! Go to the JavaMOP webpage for the latest version.


Links:
MOP
All Versions


This is JavaMOP1.0, which is now deprecated. Go to JavaMOP for the current version.

  

MOP

ERE

CFG

PTLTL

FTLTL

PTCaRet

...

JavaMOP

JavaERE

JavaCFG

JavaPTLTL

JavaFTLTL

JavaPTCaRet

...

BusMOP

BusERE

...

BusPTLTL

... ... ...
... ... ... ... ... ... ...
MOP Matrix: a clickable map of MOP pages.


JavaMOP is an instance of MOP for Java.

  • HERE is the syntax of JavaMOP specifications
  • HERE are news and change logs

Download JavaMOP

Before downloading it, you can try JavaMOP online using the form below. Most users will find the online version good enough for their needs, so will never need to download and install JavaMOP on their machines.


Run JavaMOP Online

We provide a web-based interface to try JavaMOP online. Enter your specification in the form below, or chose (and possibly modify) one of the existing specifications. Run JavaMOP by clicking the Run button. The generated code will be displayed underneath the form. The generated code can be compiled using any AspectJ compiler.

  • Note: Most of the examples below can also be reached from the individual JavaMOP plugin pages (reachable through the MOP matrix above).
  • Note: The name of the generated Aspect will be the name of the first specification in the text box + MonitorAspect. The name of the .aj file you intend to compile needs to be the same. For example, for LeakingSyncCFG, the generated aspect is LeakingSyncCFGMonitorAspect, and should be placed in a file named LeakingSncCFGMonitorAspect.aj.
  • Note: One may append within or !within clauses to the event definitions in JavaMOP to control the scope of instrumentation. For example, if it is certain that some class C will not trigger any event of interest, one may use !within(C) in the event definitions to ignore C during the instrumentation, improving the instrumentation efficiency. The syntax of the within clause can be found in the AspectJ documentation.
Choose an example:
  • CFG
    • ClosedReader_CFG
    • HasNext_CFG
    • HashMap_CFG
    • HashSet_CFG
    • Hashtable_CFG
    • ImprovedLeakingSync_CFG
    • PartialHasNext_CFG
    • PartialHashMap_CFG
    • PartialImprovedLeakingSync_CFG
    • PartialSafeFileInputStream_CFG
    • PartialSafeFileWriter_CFG
    • PartialSafeIterator_CFG
    • SafeFileInputStream_CFG
    • SafeFileOutputStream_CFG
    • SafeIterator_CFG
    • SafeLock_CFG
    • p_CFG
  • ERE
    • ClosedReader
    • ClosedWriter
    • HasNext
    • HashMap
    • HashSet
    • Hashtable
    • LeakingSync
    • NullChecker
    • SafeEnum
    • SafeIterator
    • SafeReweave
    • ToDispose
    • p
  • FTLTL
    • CarController
    • CarController2
  • JML
    • Controller
    • Point
  • PTCaRet
    • PTLTL
      • Resource
      • ptHasNext
      • ptSafeIterator
    • RAW
      • ReSort
      • Sort
      • SqlInjection
     

    Please press the Run button once and wait; it may take a few seconds to run JavaMOP1.0; the execution of JavaMOP1.0 using this web interface is limited to 2 minutes of CPU time and 500 MB of RAM.

    Personal tools
    Namespaces

    Variants
    Views
    Actions
    Navigation