This is part 7of Coffee on Couchbase series where we are building a NetBeans plugin for Couchbase. This multi-part webinar series is a discussion with Geertjan Wielenga (@GeertjanW) and Eben Haber (@ebenhaber). As part of this series, you’ll also learn how to build a NetBeans plugin from scratch and learn the awesomeness behind NetBeans platform.

During this episode, two useful links about NetBeans platform were shared:

Here is what we’ve covered so far:

  • Part 1
    • GitHub repository for the plugin
    • Started a new NetBeans plugin – discussed Ant vs Maven approach for starting a plugin
    • Couchbase node configured in NetBeans
  • Part 2
    • Show NetBeans users how to install Couchbase and configure it with a sample bucket
    • Run a simple Java EE application that queries the documents stored in Couchbase sample bucket
    • Migrating the NetBeans plugin from Ant to Maven
    • Show a message in popup help menu
    • Double clicking on the Couchbase node connects to Couchbase server and displays a message in status window
  • Part 3
    • Login to Couchbase server
    • See Bucket list
    • See Documents in Bucket
    • Query data from buckets (basic queries, N1QL queries coming later)
    • Compare Documents (NetBeans Diff Viewer)
    • Open Documents (in JSON editor, not savable back to Couchbase)
    • Multiple Couchbase hosts can be configured
  • Part 4
    • Entry point of a NetBeans plugin
    • Learn about NetBeans platform node hierarchy
    • Property sheet for each node
    • Keeping code organized for the plugin
    • Creating menus for different nodes
  • Part 5
    • Showcase features that have been created in the plugin so far
    • Show different icons for indexed and non-indexed buckets in Couchbase
  • Part 6
    • Add a new menu “Create Primary Index” for non-indexed buckets
    • Started work on refreshing the name and description of a bucket after indexing
    • Started work on optimizing the number of documents retrieved for a bucket

The recording from part 7 is now available:

This episode covers:

  • Discussion around modal window vs status bar when creating bucket
  • Icons for newly created buckets are shown correctly as non-indexed
  • Change the menu name from “Set Primary Index” to “Create Primary Index”
  • Discussion around properties panel vs menu items design pattern
  • “Explore from here” for nodes and buckets
  • Default error handling (by NetBeans platform) while editing JSON document
  • Rename buckets (only in NetBeans view, not in database)
  • Discussion around REST endpoint code generator using a bucket
  • Displayed a dialog when JSON document is edited/saved

All the code is evolving at:

Let us know by filing bugs on features that you’d like to see in this plugin.

We’d love to see your tweets containing snapshots of your document in NetBeans. Use  #NetBeans #Couchbase to let us know :)



Posted by Arun Gupta, VP, Developer Advocacy, Couchbase

Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team. Gupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta.

Leave a reply