Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
    • Search

  1. Home
  2. Projects
  3. Eclipse Technology
  4. Eclipse Passage™
  5. Eclipse Passage
×

Informative message

This proposal has been approved and the Eclipse Passage™ project has been created.
Visit the project page for the latest information and development.

Go to Project

Eclipse Passage

Basics
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project: 
Eclipse Technology
Background: 

Some time ago we were asked to recommend a licence checking solution for an Eclipse RCP. There are vendors who is providing that, but honestly we were never happy with any of them. It always requires a lot of resources to adopt the license checking engine to Eclipse runtime or even to Java runtime. Then you need to find a way to modify the existing product, as it needs to check the license at the right moment and react accordingly. And finally the vendor licensing model may not fit your product distribution needs.

So, we decided to create vendor-neutral OSGi-based Eclipse-friendy licensing engine with related libraries and infrastructure tools under Apache-2.0 or EPL-2.0.

Scope: 

 Eclipse Passage provides a complete solution to control the usage of licensed functionality and to manage licensing-related data for OSGi-based and Eclipse-based products.

  • Lightweight runtime interfaces to define actors and interactions for the licensing domain
  • Licensing domain model to manage licensing-related data
  • Equinox-based implementation that controls the usage of licensed functionality
  • Licensing condition evaluators to support time-based, node-locked and other types of conditions
  • Library of functionality restrictors to support different strategies from friendly reminding to brutal blocking.
  • Licensing Operator client and backend to manage licensing data
  • Licensing server to support floating licenses

 

Description: 

The Eclipse Passage project aims to provide rich and easily adoptable capabilities to define and control licensing constraints.

The usage story starts in Licensing Operator client:

  • Define a product you would like to ship
  • Generate a pair of keys for defined product
  • Send the public key and product description to your development team
  • Discuss the features with your marketing and map the features to the product
  • Send the descriptions of the features to your development team

Then development team needs to do the following:

  • Embed the public key to your product
  • Bind functionality to feature identifiers
  • Include Licensing Runtime bundles to the product

Well, you are ready for the product shipment, at least from Passage point of view. After some time you hopefully will have fantastic download rate and a lot of requests to obtain a license, you need to use Licensing Operator client again:

  • Register licensee: either user or company
  • Formulate the license conditions: allow a set of features for particular node or for some period or whatever you would like
  • Encrypt the license file and send it to the user: you will need a product private key for it - but we hope you still have it in some safe place

Finally, the Licensing Runtime is starting its work inside your product deployed to the customer environment using the simple algo:

  • Collect the configuration requirements (feature identifiers to be controlled)
  • Mine the license conditions using different approach, the default may be to inspect a subfolder @user.home
  • Evaluate the mined conditions against current environment state (time now, running node id) to obtain feature permissions tickets
  • Put both configuration requirements and feature permission tickets to the examiner to receive verdict (restrictions)
  • Call restriction executors to have desired effect: show status bar reminder or block everything

That's it!

 

Why Here?: 

The Eclipse Foundation is the natural choice for Eclipse-oriented projects.

Licenses: 
Apache License, Version 2.0
Eclipse Public License 2.0
Legal Issues: 

We are using a number of OSS components with compatible licenses: MIT, Apache-2.0, EPL-1.0, please see the NOTICE for more details.

The plan is to switch to Eclipse Orbit bundles.

Project Scheduling: 

The initial contribution is expected in the early December, 2018

The first release version 0.x.0 is expected in the late December, 2018

Then the plan is to sync the release schedule with Eclipse SimRel

Future Work: 

The future work is to provide the following:

  • server backend to manage licensing data
  • network condition miners to support floating licenses
  • UI restriction executors for E4 Application Model Elements
People
Project Leads: 
Alexander Fedorov
Committers: 
Alexander Fedorov
Sergei Kovalchuk
Mentors: 
Lars Vogel
Interested Parties: 

ArSysOp

Validas AG

Renesas Electronics Corporation

Source Code
Initial Contribution: 

Currently there is work in progress to transfer the sources to the GitHub

The initial contribution consist of the following:

  • Passage Binary Resources and Components: the 3rd party we need
  • Passage Licensing Integration Components: the base licensing services to be integrated to the target product
  • Passage Licensing Operator Components: the simplistic E4 RCP to manage licensing data

 

Source Repository Type: 
Git
Source Repositories: 
https://github.com/arsysop/passage-brc
https://github.com/arsysop/passage-lic
https://github.com/arsysop/passage-loc
https://github.com/arsysop/passage-lbc
  • Sign in to post comments.
Eclipse Passage™

Related Projects

Project Hierarchy:

  • Eclipse Technology
  • Eclipse Passage™

Tags

Technology Types
  • Runtime
  • Tools
Build Technologies
  • Jenkins
  • Maven
  • Tycho
Other Tags
  • license-management
  • licensing

Eclipse Foundation

  • About Us
  • Contact Us
  • Sponsor
  • Members
  • Governance
  • Code of Conduct
  • Logo and Artwork
  • Board of Directors
  • Careers

Legal

  • Privacy Policy
  • Terms of Use
  • Copyright Agent
  • Eclipse Public License
  • Legal Resources

Useful Links

  • Report a Bug
  • Documentation
  • How to Contribute
  • Mailing Lists
  • Forums
  • Marketplace

Other

  • IDE and Tools
  • Projects
  • Working Groups
  • Research@Eclipse
  • Report a Vulnerability
  • Service Status

Copyright © Eclipse Foundation. All Rights Reserved.

Back to the top