Exploring annotation based programming through the apt and mirror apis
This presentation is the property of its rightful owner.
Sponsored Links
1 / 9

Exploring Annotation-Based Programming through the APT and Mirror APIs PowerPoint PPT Presentation


  • 80 Views
  • Uploaded on
  • Presentation posted in: General

Exploring Annotation-Based Programming through the APT and Mirror APIs. Tim Wagner, Senior Manager Gary Horen, Program Manager BEA Systems, Inc. http://www.bea.com. BOF-9161. Agenda. Why apt/mirror in Eclipse? Feature overview Technical details Future plans Q&A.

Download Presentation

Exploring Annotation-Based Programming through the APT and Mirror APIs

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Exploring annotation based programming through the apt and mirror apis

Exploring Annotation-Based Programming through the APT and Mirror APIs

Tim Wagner, Senior Manager

Gary Horen, Program Manager

BEA Systems, Inc.http://www.bea.com

BOF-9161


Agenda

Agenda

Why apt/mirror in Eclipse?

Feature overview

Technical details

Future plans

Q&A


Why apt mirror in eclipse

Why apt/mirror in Eclipse?

  • Want high-fidelity IDE support for annotations…

  • …but don’t want to reinvent the wheel

Wouldn’t it be great if existing

apt processors could run inside Eclipse?


Feature overview

Feature Overview

  • Eclipse 3.1 plugin that…

  • Runs apt processors interactively inside Eclipse

    • Diagnostic integration  “red squiggles”

    • Build integration (including problem view)

    • Generated types behave as you’d expect

  • APT factories can be loaded as plugins or jars

  • UI to configure APT options


Technical details

Technical Details

  • Implementation of 1.5 JDK mirror APIs over the Eclipse type system (via wrappers)

  • Processors executed during compilation

    • Separate passes: reconcile (interactive) and build

    • Replicates apt semantics (fixed point iteration, “claim” model)

  • Factory discovery

    • Jars containing factories or Eclipse plugins

    • Preference UI supports enabling, ordering of jars


Future plans

Future Plans

  • Support for enhanced IDE functionality

    • Content assist (code completion) in annotation values

    • Quick fix

    • Integration with property view

      • Type-specific editors

      • Propose new annotations/annotation values

  • Search and refactoring over annotation values

  • Wizards for creating annotation processor factories and plugins

  • Adopt JSR 269


  • Release dates

    Release Dates

    • Preview

      • Summer ’05 (i.e., soon!)

      • Branch of JDT 3.1, based on GA version (new component + minor JDT API enhancements)

      • Based on open source (yay!) apt/mirror interfaces in the 1.5 JDK

    • Eclipse Platform 3.2

      • Summer ’06

      • Standard part of JDT – will reach all Eclipse users

      • Ideally JSR 269-compliant APIs


    Bof 9161

    DEMO

    • Sample apt processor running inside Eclipse


    Bof 9161

    Q&A


  • Login