Abstract
The Java Software Extensibility Library provides tools that help Java software developers produce flexible and extensible Java applications. The major components include a Plugin Library and a Polymorphic Map data structure. The Plugin Library provides developers with a Plugin Registry and a standard pattern for designing, versioning, registering, retrieving, and annotating plugins. It also enables advanced capabilities such as loading plugins at runtime, and creating/loading encrypted plugin packages. The Polymorphic Map data structure facilitates the storage and retrieval of objects of varying types within a single data structure; while maintaining type safety. The library also provides a standard design pattern for producing application-specific "Domain Maps" and "Closed Domain Maps".SAND2020-3816 M
Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.
- Developers:
-
Fleschute, Christopher [1] ; Smith, Phillip [1] ; HIcks, Talia [1] ; Bertrand, Tyler [1] ; Figueroa, Benjamin [1]
- Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
- Release Date:
- 2020-02-24
- Project Type:
- Open Source, Publicly Available Repository
- Software Type:
- Scientific
- Programming Languages:
-
Java
- Version:
- 0.9.0
- Licenses:
-
Apache License 2.0
- Sponsoring Org.:
-
USDOEPrimary Award/Contract Number:NA0003525
- Code ID:
- 46950
- Site Accession Number:
- SCR#2463.0
- Research Org.:
- Sandia National Laboratories (SNL-NM), Albuquerque, NM (United States)
- Country of Origin:
- United States
Citation Formats
Fleschute, Christopher, Smith, Phillip, HIcks, Talia, Bertrand, Tyler, and Figueroa, Benjamin.
Java Software Extensibility Library.
Computer Software.
https://github.com/sandialabs/jsel.
USDOE.
24 Feb. 2020.
Web.
doi:10.11578/dc.20201030.11.
Fleschute, Christopher, Smith, Phillip, HIcks, Talia, Bertrand, Tyler, & Figueroa, Benjamin.
(2020, February 24).
Java Software Extensibility Library.
[Computer software].
https://github.com/sandialabs/jsel.
https://doi.org/10.11578/dc.20201030.11.
Fleschute, Christopher, Smith, Phillip, HIcks, Talia, Bertrand, Tyler, and Figueroa, Benjamin.
"Java Software Extensibility Library." Computer software.
February 24, 2020.
https://github.com/sandialabs/jsel.
https://doi.org/10.11578/dc.20201030.11.
@misc{
doecode_46950,
title = {Java Software Extensibility Library},
author = {Fleschute, Christopher and Smith, Phillip and HIcks, Talia and Bertrand, Tyler and Figueroa, Benjamin},
abstractNote = {The Java Software Extensibility Library provides tools that help Java software developers produce flexible and extensible Java applications. The major components include a Plugin Library and a Polymorphic Map data structure. The Plugin Library provides developers with a Plugin Registry and a standard pattern for designing, versioning, registering, retrieving, and annotating plugins. It also enables advanced capabilities such as loading plugins at runtime, and creating/loading encrypted plugin packages. The Polymorphic Map data structure facilitates the storage and retrieval of objects of varying types within a single data structure; while maintaining type safety. The library also provides a standard design pattern for producing application-specific "Domain Maps" and "Closed Domain Maps".SAND2020-3816 M
Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.},
doi = {10.11578/dc.20201030.11},
url = {https://doi.org/10.11578/dc.20201030.11},
howpublished = {[Computer Software] \url{https://doi.org/10.11578/dc.20201030.11}},
year = {2020},
month = {feb}
}