The WebNMS CLI API is a developer environment to build CLI-based device management applications. CLI API leverages the power of JavaTM -based technologies such as Java Beans and Java RMI and the other technologies like XML to address the needs of rapidly growing Internet and related network management applications.
Java and associated technologies are emerging as the preferred way to build network management solutions, both for server-side and client-side applications. Chief among the reasons for this growing trend is the ease of use of this new technology, shortening development cycles. The growth of this industry is also making more and more tools available to network management developers.
Java, being a new and fast evolving technology, has undergone many changes since it was first introduced. One of the significant changes in Version 2.0 was the adoption of a new event model, which also became a cornerstone of the JavaBeans component model.
The introduction of the JavaBeans component model is a major change, which enables powerful component- based development that promises to increase development productivity. JavaBeans puts a large library of software building blocks at a developers disposal. So sophisticated applications can be assembled easily.
WebNMS CLI API package is designed in such a way that it supports the new Java capabilities, including the new event model and JavaBeans.
Java Bean Components
JavaBeans component-based approaches to build software are now recognized as the best way to deal with the increasing complexity of software systems. While not a revolutionary idea in software design, the JavaBeans component approach to build Java applications promises to allow building powerful applications with reduced effort from software developers using standard off-the-shelf components. Developers can take components from a number of sources and assemble them to create new and more powerful applications.
JavaBeans technology is designed to be used in visual builders as well as in traditional user programs. The key to allowing use of diverse components in visual builders is standardization of design patterns, i.e. patterns for how standard capabilities of components are implemented. This standardization is key to automating the use of these components and minimizing code.
Beans are "capsules" of code, each designed for a specific purpose. The advantage of JavaBeans over standard programming controls is that Beans are independent. They are not specific to operating systems or development environments. A Bean created in one development environment can be easily copied and modified by another. This allows JavaBeans greater flexibility in enterprise computing, as components are easily shared between developers.
Beans support introspection. That is, they allow the development environment to analyze the Bean,determine its properties and methods, and manipulate the Bean at design time instead of at run time.
Any Java class can be considered as a Java Bean. What compels a Java class to be called a JavaBeans is when it follows the design patterns prescribed by JavaBeans technology, and allows builder tools and humans to understand and use the bean in development. There are two primary aspects to JavaBeans technology:
Bean Properties: This determines the state of a JavaBeans. Users need easy and understandable ways of setting properties of Beans, and the Beans design patterns for getting and setting properties makes this possible.
Bean Connections using Events: These are the interconnections among JavaBeans that are best implemented as events among Beans. Beans can define and implement events using standard JavaBeans design patterns, enabling easy interpretation and use of these events in connecting Beans.