Eclipse Plug-in for ZooKeeper

From MasseWiki

Jump to: navigation, search

Overview

The Eclipse Plug-in for ZooKeeper is a full-featured browser and editor for ZooKeeper.

Required Software

  • Java, release 1.6 or greater.
  • Eclipse, release 3.5 or greater.
  • A running ZooKeeper instance that you can connect a client to.

Included Software

The Eclipse Plug-in for ZooKeeper includes the following components:

  • The Masse Dynamic Eclipse Plug-in for ZooKeeper (the main plug-in)
  • The Masse Dynamic Eclipse Plug-in for JMX
  • The Masse Dynamic Eclipse Core library plug-in
  • The ZooKeeper Java library (zookeeper-X.X.X.jar)
  • The log4j library (log4j-X.X.X.jar) required by ZooKeeper

Installation

If you are familiar with the process of installing new features in Eclipse, then this Update Site URL is probably all you need to know:

http://www.massedynamic.org/eclipse/updates/

If you would like more detailed installation instructions, go here.

Releases

See the releases forum for release notes and revision history.

Forums

Discuss this plug-in, report bugs, and request features in the forums.

Features

The Eclipse Plug-in for ZooKeeper provides many features, most of which are summarized below.

ZooKeeper Connections

  • Creation of new ZooKeeper connections via a Wizard. Wizard supports naming the connection, specifying the session timeout, an optional Znode root path (ZooKeeper’s “chroot” feature), and a list of servers.
  • Management of multiple ZooKeeper connections with the connection details stored in the Plug-in user’s local directory.
  • Each ZooKeeper connection is displayed as root tree nodes in the Plug-in’s ZooKeeper Explorer view.
  • Support for establishing a JMX connection with each server specified in the ZooKeeper connection ensemble.

ZooKeeper Explorer View

  • Tree view displaying the ZooKeeper connections as root nodes with sub-nodes for the Servers and the ZooKeeper's root znode (“/”).
  • Lazy loading of data via SWT’s “virtual” tree widget allowing the plug-in to efficiently manage the amount of data requested from the ZooKeeper connection and loaded into the UI. Specifically, znodes (stat, data, and child paths) are loaded on demand when the tree is expanded.
  • Uses a model/view framework (see below) so that znodes will update, appear, or disappear automatically as they are updated, created, or deleted in ZooKeeper.

Editors

In Eclipse, the primary data viewers are called “editors”. The Plug-in currently provides editors for the following data types:

  • Znode Editor. A multi-page editor with pages to display/edit a znode’s: data, children, ACL, and stat. Znode data may be exported and edited in external files. Znode data can be imported (replaced) from the contents of a file.
  • Znode Table Editor that allows for multiple znodes to be edited in a spreadsheet-like way.
  • Various JMX data viewers that currently offer jconsole-like views of the ZooKeeper JMX API.

Model/View Design

Data is loaded and managed via a model/view framework that enables the updating of views whenever the data model is changed. As an example of this, changes to znodes are reflected immediately via ZooKeeper’s Watcher capability being extended into the Plug-in’s model view framework. The bottom line is that user’s rarely need to manually “click the Refresh button” to see the latest version of ZooKeeper data.

Icons

The image below shows the icons that are core to the plug-in.

Core Icons

License

This plug-in is released freely under the Apache License, Version 2.0.

This product includes software developed by The Apache Software Foundation (http://www.apache.org/).

Source

The source code and source documentation are available.

Copyright Notices

ZooKeeper, Copyright © 2008 The Apache Software Foundation

Apache log4j, Copyright © 2007 The Apache Software Foundation

Eclipse, Copyright © 2010 The Eclipse Foundation. All Rights Reserved.

This plug-in and website, Copyright © 2010 Mark Masse

Author

Mark Masse

mark@massedynamic.org

http://www.linkedin.com/in/markmasse

More about me.

Personal tools