exploring annotation based programming through the apt and mirror apis
Download
Skip this Video
Download Presentation
Exploring Annotation-Based Programming through the APT and Mirror APIs

Loading in 2 Seconds...

play fullscreen
1 / 9

BOF-9161 - PowerPoint PPT Presentation


  • 111 Views
  • Uploaded on

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.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'BOF-9161' - elon


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
slide8
DEMO
  • Sample apt processor running inside Eclipse
ad