HOME > Products > Development Library
Products Development Library

To ease the process of developing advanced Curl applications, a number of open source libraries are available. Using these, developers can create applications more useful and interactive than ever.

The open source libraries provided by Curl are as follows.

Curl development libraries can be downloaded from the Development Library Download page.

For details, see the Curl Developer Center.

Enterprise-Oriented UX Library (Curl External Library)

Curl External Library is a collection of several UX (User eXperience) features.

  • Transitionframe
  • Geographic
  • Treegrid
  • Worksheet
  • Gantt Chart
  • CalculatedRecordGrid
  • Splashscreen
  • Autocomplete Autocomplete
  • Balloon

MVC Framework (Curl Sonntag)

Curl Sonntag is a client-side MVC framework for Curl application development.
An MVC framework divides UI and logic, allowing each part to achieve better quality.
Additionally, by using Sonntag’s time-saving screen transitions and intra-screen messaging, you can achieve higher development productivity.

  • Graphic: Display Layout
  • Screen: Layout and Logic Separation
  • Command: Business Logic

Web Service Development Kit (WSDK)

The Web Service Development Kit (WSDK) lets you easily integrate web services into your Curl applications. Using the WSDK, when your application needs to access a web service, it reads the WSDL and automatically generates Curl source code.

The WDSK is a key component for enterprise-level applications that use SOAP/WSDL or XML document models.
The following features are included.

[Autogeneration of Curl Programs from WSDL]

  • Using the WSDL file from the web service as a basis, Curl classes are automatically generated to communicate with them.
  • Communication class (synchronous and asynchronous) and data class generation
  • Supports both for Xmethods and PocketSOAP

[XML Document Model Package]

  • Simple to handle XML as a document model
  • XMLSchema and RSS (1.0, 2.0)
  • Xpath for easier model search and changes
  • Binding to Curl controls
  • Conversion to Curl objects (RecordSet, etc)

SQLite Integration Kit (CDK)

The CDK library creates an SQLite environment on the client, allowing connection to SQL databases and supporting applications that process large amounts of data. Since the SQLite engine supports writing and local caching, the CSK library can be a key piece in building an application for offline use (OCC: Occasionally Connected Computing).

With a combination of the CDK and Curl’s regular database access features, data generation, display, and more are all possible when integrating with an SQLite database.

AMF Protocol Integration Kit (CDK-DS)

The CDK-DS library aims to allow developers to create corporate systems offering highly reliable data transmission using existing servers. CDK-DS allows Curl RIA clients to communicate with servers using the binary AMF (Action Message Format) protocol create by Adobe.

Normally, the transmission of large amounts of data can become a bottleneck in enterprise RIA systems. Using a compact binary format like AMF is key to unlocking these bottlenecks. For Curl developers creating enterprise RIA, CDK-DS is a new, simple way for them to incorporate these useful techniques.

CDK-DS supports many features of the open source BlaseDS server: publish/subscribe, server push, remote procedure calls (RPC), security, certificates, all remoting and web messaging services. And since all communications are handled asynchronously, time spent waiting for the server remains available for other client operations, maintaining a high level of client application usability.

Unit Testing (CDU)

The CDU offers support for unit testing and project development. The CDU is also used in the WSDK and CDK projects, allowing you to integrate those into your testing process, and contribute to an environment of development best practices.

Java Integration Tool (Curl ORB for Java)

The Curl ORB for Java is a tool that allows rich client Curl to call Java methods generated from POJOs (Plain Old Java Objects), and capture the returned values in the Curl application.

Curl ORB for Java

By using the Curl ORB, developers can automatically generate Curl source code from server-side Java classes, making it easier to integrate Java on the server with Curl on the client. Curl ORB transmits using a binary format to maintain a high performance RIA system.

Server-Side Object Method Execution
From the Curl application, instantiate class instances or call methods, returning the values to Curl.
High Performance
Curl ORB uses a binary transmission format, reducing the network traffic compared to text-based formats like XML or JSON.
Supports Multiple Data Formats
Supports multiple data formats between Curl and Java, not just primitive types.
For example, supports: String, Date, user-defined classes, arrays, List, Map, Exception, etc.
DI Container Integration
Curl ORB can call on Java objects managed by DI containers, like the Spring framework and Seasar2.
Source Code Generator
Developers can generate Curl source code from Java classes.

UI Design Components (Advanced UI)

The Advanced UI library provides rich UI design elements for those cases that the standard GUI components don’t cover, helping developers create a more effective, usable UI design.

Thirty different components are included, some of which are listed below.

  • Carousel Menu: menu that spins around a vertical axis
  • Fish Eye: A Mac Dock-style menu
  • Cube Frame: a 3D, spinning frame
  • Mouse Gestures
  • Events
  • Autocomplete
  • Wizard Frame
  • Animation View
  • Animation Button
  • Rotator
  • Customized TextField / DateField / ComboBox / Button / TabAccordion
  • Etc

[Extensions Library]

The Extensions Library has various utility features extending the regular Curl APIs: collection creation, logging, caching, import/export, and Japan-specific extensions.

    The main components are as follows.
  • Curl Fundamental Data Type Utilities and Collection Classes
  • UI Utility
  • Data Caching
  • Message Management
  • Curl Environment Utilities
  • Encryption/Bundling Utilities
  • Japan-Specific Utilities
  • File Search / Save / Restore
  • Log Export / Rotation
  • Etc