A Spotfire extension is the smallest functional unit added to the platform. It is developed in Visual Studio® and is included in a Spotfire AddIn, enabling versioning, licensing, deployment and loading.
Overview
Required software:
Spotfire SDK
The SDK provides required Spotfire developer resources: the Spotfire Extension Project Template, development assemblies, example projects, and the Package Builder application wrapping the extensions for deployment.
To create Spotfire extensions, use the Spotfire Extension
Template and reuse code from the SDK examples.
The Spotfire extension concepts and the recommended procedure
to create an extension are described below.
Concepts
A Spotfire extension is typically implemented as a C# project
in Visual Studio® using the Spotfire Extension Project Template.
An extension project contains at least the following:
- One or more extensions
Each extension is implemented in a set of classes, typically
overriding a base class defining an specific extension type.
Additional extensions can easily be added to the project.
The extensions in a project are bundled for loading into Spotfire
by an AddIn unit.
- One class derived from the
AddIn
class
The AddIn is defined using information you provide when creating
the project from the SDK template. Spotfire, deploys, version
handles and loads functionality as AddIns.
The Spotfire Extension Project Template assumes that
only one Add-In implementation is available in your project.
This is in accordance with design guidelines for Spotfire Extensions.
- One
The Module Definition File
A module is defined as qualified for loading in Spotfire if it has a valid modules.xml file. It declares the Add-In to the application.
This file defines the fully qualified type name for the AddIn class
and the assembly name. It also declares a unique project GUID
and a strong name for the assembly. Combinations of these uniquely
identifies the project and the AddIn.
- Strong name key file (
.snk)
Extension assemblies must be signed with a strong name key.
The extension project template contains a default key. You may
replace this key file with your own, but if you do, make sure
to alter the module definition file.