S t r e a mE D S : Us e r s Gu id etargetstream.com/products/streameds/StreamEDS_Users_Guide.pdf · 7.2.1 Workflow Example 1 30 ... A.16 JGit 89 Acknowledgement 89 License 89

Embed Size (px)

Citation preview

  • StreamEDS:UsersGuide

    TargetStream Technologies: Electronic Document Services

    Version:1.7.1

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Table of Contents Table of Contents 2

    Chapter 1 Product Overview 6

    1.1 Application Architecture 6

    1.2 Product Features 7

    1.2.1 Real-time Document Conversions 7

    1.2.2 Batch AFP to PDF Conversion 7

    1.2.3 Easy to Understand Java API 7

    1.2.4 100% Pure Java 7

    1.2.5 Platform Independent 7

    1.2.6 High Performance 7

    1.2.7 Integrates With Other Vendor's Components 8

    1.2.8 Secure PDF 8

    1.2.9 Flexible Font Mappings 8

    1.2.10 Dynamic Type 3 Font Creation 8

    1.2.11 Dynamic Page Modifications 8

    Chapter 2 Hardware / Software Requirements 9

    Chapter 3 StreamEDS Installation Instructions 15

    3.1 Installation Instructions 15

    3.4.1 Verify the Installation 18

    3.4.2 Test StreamEDS with your AFP documents 20

    Chapter 4 StreamEDS Workbench Layout 21

    4.1 Title Bar 22

    4.2 Menu Bar 22

    4.3 Tool Bar 25

    4.4 Perspectives 25

    4.5 Project View/Resource View 26

    4.6 Work Area / Document View Area 26

    4.7 Navigation View 26

    4.8 Console View / Problems View / Font Mapping View 26

    4.9 Properties View 26

    Chapter 5 Installation Directories 27

    5.1 root 27

    - 2 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 6 TSTWorkspace 28

    6.1 root 28

    6.2 .metadata 28

    6.3 com.tst.eds 28

    6.4 data 29

    6.5 docs 29

    6.6 eds-gen 29

    6.7 lib 29

    6.8 scripts 29

    6.9 src 29

    Chapter 7 Workflows 30

    7.1 Workflow Concepts 30

    7.2 Workflow Examples 30

    7.2.1 Workflow Example 1 30

    7.2.2 Workflow Example 2 31

    7.2.3 Workflow Example 3 32

    Chapter 8 Running Headless 34

    8.1 Check Java Version 34

    8.2 Executing StreamEDS Headless Via the StreamEDS Script 34

    8.3 Running Headless From a Deployment 35

    Chapter 9 Resolving Missing AFP Resources 36

    Chapter 10 Font Mapping 39

    10.1 Mapping AFP Bitmap Font to Adobe Referenced Font 41

    10.2 Toggle Selected Font 43

    10.3 Edit Glyphs 44

    10.4 Edit Unicode Mappings 46

    Chapter 11 Running Code Samples / Eclipse Project 48

    11.1 Importing Sample Eclipse Project 48

    Chapter 12 Deploying Workbench Changes 51

    12.1 Workbench Deploy Option 51

    Chapter 13 Environment Sizing 53

    Chapter 14 Custom Logging In StreamEDS 55

    14.1 Define log location in Context.xml 55

    14.2 Define log location in a workflow 55

    - 3 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    14.3 Implement custom logger 55

    Chapter 15 Instructional Videos 57

    Installing Workbench for the first time on Windows 57

    Importing a New License Key 57

    How to Deploy and Run From Command Line 57

    Resolving AFP Resources 57

    How To Import Sample Eclipse Project 57

    How To Map a Font 57

    Creating Resource Set Versions 57

    Resource Set Versions 57

    Deploying With Like Named Resources 57

    Appendix A: THIRD PARTY License GRANT. 58

    A.1 Apache Software License 2.0 58

    Acknowledgement 58

    License 58

    A.2 Bouncy Castle 64

    Acknowledgement 64

    License 64

    A.3 Groovy 65

    Acknowledgement 65

    License 65

    A.4 ANTLR 66

    Acknowledgement 66

    License 66

    A.5 ASM 66

    Acknowledgement 67

    License 67

    A.6 CLI 67

    Acknowledgement 68

    License 68

    A.7 JSSR 69

    Acknowledgement 69

    License 69

    A.8 Woodstox 70

    Acknowledgement 70

    License 70

    A.9 Eclipse and Eclipse RCP 71

    - 4 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Acknowledgement 71

    License 71

    A.10 JAI_CORE, JAI_CODEC 73

    Acknowledgement 73

    License 73

    A.11 JAI_IMAGEIO 78

    Acknowledgement 78

    License 78

    A.12 Guice 85

    Acknowledgement 85

    License 85

    A.13 JCommander 86

    Acknowledgement 86

    License 86

    A.14 javax.inject api (JSR-330: Dependency Injection for Java) 87

    Acknowledgement 87

    License 87

    A.15 Guava 88

    Acknowledgement 88

    License 88

    A.16 JGit 89

    Acknowledgement 89

    License 89

    A.17 PRTree 91

    Acknowledgement 91

    License 91

    - 5 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 1 Product Overview StreamEDS is computer software that transforms document, report, and print stream data to other electronic document formats. It is architected to utilize advanced threading algorithms and written to be extremely fast and efficient so that companies can perform real-time print stream to electronic document conversions. StreamEDS will integrate with any other document indexing and retrieval software because it is designed with an open API. StreamEDS facilitates rendering document information such as bill images, statements, invoices, and reports. One of the most popular document conversions that StreamEDS supports is the conversion of IBMs Advanced Function Presentation (AFP) data and resources to an Adobe Portable Document Format (PDF). Many clients also use StreamEDS for PDF to AFP conversions to better leverage AFP printing infrastructure.

    1.1 Application Architecture StreamEDS was written using a component-based architecture which will enable easy integration in your J2EE console or web applications. This pure JAVA AFP to PDF component will accept an AFP (and its resources) as input, and will convert the AFP to a PDF document. The diagram below shows a typical system flow for document conversions.

    StreamEDS utilizes a multithreading application model in order to convert documents as fast as possible. Users can apply multiple threads to a given document conversion allowing individual documents to convert faster on multi CPU systems. This means that StreamEDS can utilize multiple threads to convert a single document resulting in industry leading document conversion times. StreamEDS is thread-safe allowing a system to convert multiple documents at the same time. For those AFPs that utilize custom resources and fonts, StreamEDS contains a graphical user interface for configuring resource mappings and editing workflows. Improved performance is realized by the StreamEDS caching architecture. This caching architecture stores frequently used resources in memory so that they do not have to be transformed over and over when they are referenced multiple times.

    - 6 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    1.2 Product Features

    1.2.1 Real-time Document Conversions StreamEDS converts documents and their associated resources to other electronic documents. The conversion process is extremely fast and has been developed to convert even the largest documents to other electronic documents real-time.

    1.2.2 Batch AFP to PDF Conversion StreamEDS provides command line utilities that allow AFP to PDF document conversion in a batch mode.

    1.2.3 Easy to Understand Java API StreamEDS takes the complexity out of AFP document conversion by providing an extremely easy to use Java API. There is one main method developers call to perform conversions that accepts an AFP and returns a PDF.

    1.2.4 100% Pure Java StreamEDS is written in java. The Java implementation improves product stability because systems are not required to interface with native code. The java implementation also allows server side developers to leverage their existing J2EE containers (i.e. Application Servers) to perform document conversions.

    1.2.5 Platform Independent StreamEDS is pure Java; it can run on any platform that has a JVM ported for it.

    1.2.6 High Performance StreamEDS provides multi-threaded document conversion support. Not only is StreamEDS thread safe so that an invoking application can call the converter from multiple threads, but StreamEDS itself is multi-threaded. Internally StreamEDS converts an AFP to PDF using multiple worker threads so that applications that run on multi-CPU boxes can realize the fastest conversion times possible. Improved performance is also realized by the StreamEDS caching architecture. This caching architecture stores frequently used resources in memory so that they do not have to be transformed over and over when they are referenced multiple times.

    - 7 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    1.2.7 Integrates With Other Vendor's Components StreamEDS was architected with an open API. There are no restrictions in the API that prevent it from integrating with any other AFP indexing or retrieval software.

    1.2.8 Secure PDF The StreamEDS API provides behavior to encrypt a PDF using a password. Business applications that take advantage of this feature can encrypt a PDF with a password that only the recipient knows. With this encryption only the individual who knows the password used to encrypt the PDF can view the content by supplying the password to open the PDF document. For an encrypted PDF, the Acrobat Reader prompts for a password before it will open it. PDFs can also be encrypted using various combinations of Access Flags. These Access Flags can restrict certain features of the PDF document. With StreamEDS developers can restrict users ability to: add or modify annotations, as well as modify, print or copy contents of the PDF.

    1.2.9 Flexible Font Mappings StreamEDS provides standard AFP font mappings. Custom AFP fonts can be easily mapped to standard PDF fonts using the easy to maneuver Graphical User Interface provided.

    1.2.10 Dynamic Type 3 Font Creation StreamEDS can dynamically convert raster AFP fonts to type 3 PDF fonts. The type 3 font creation is efficient because only the portion of the AFP font that is actually used in a given document is converted to a PDF font and embedded in the document resulting in smaller document sizes for PDFs using StreamEDS type 3 font conversions.

    1.2.11 Dynamic Page Modifications StreamEDS provides the ability to add background images, watermarks, text, and hyperlinks to converted PDFs.

    - 8 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 2 Hardware / Software Requirements StreamEDS can be run with a Graphical User Interface or headless. The StreamEDS GUI artifact is a Windows based component that requires Windows Vista or later to install. You have to have Administrator rights to install the StreamEDS GUI artifact. The StreamEDS deployment artifact is a 100% pure Java component which requires a 1.5.x or later JRE (Java Runtime Environment). The deployment artifact is usually what developers package with their applications to deploy within their J2EE containers or Java Runtime Environments (JREs). There are no Hardware limitations except those that require the ability to run a 1.5.x JRE. Virtual Memory settings vary (ie minimum and maximum heap sizes) based upon the type and size of the documents to be transformed. The following table shows the supported platforms and operating systems. Hardware Platform

    JFB Support

    J2SE Support Operating System Version Desktop Managers Browsers JRE JDK

    Solaris Operating System, 32-bit and 64-bit

    Solaris x64 (64-bit)

    JFB J2SE Solaris 10 OS (32/64 bit) JDS, Gnome 2-metacity, CDE-dtwm

    Firefox 1.5 Firefox 2.0.x Mozilla 1.7

    32-bit Install 53MB Disk 64-bit Install 23MB Disk

    32-bit Install 122MB Disk 64-bit Install 26MB Disk

    Solaris SPARC JFB J2SE Solaris 10 OS (32/64 bit) JDS-Gnome 2-metacity, CDE-dtwm

    Firefox 1.5 Firefox 2.0.x Mozilla 1.7

    32-bit Install 65MB Disk 64-bit Install 29MB Disk

    32-bit Install 134MB Disk 64-bit Install 33MB Disk

    JFB J2SE Solaris 9 OS (32/64 bit) Gnome 2-metacity, CDE-dtwm Mozilla 1.4 Netscape 7

    JFB J2SE Solaris 8 OS (32/64 bit) CDE-dtwm/OpenWin-olwm Netscape 4.7

    Solaris x86 (32-bit)

    JFB J2SE Solaris 10 OS (32 bit) JDS-Gnome 2-metacity, CDE-dtwm

    Firefox 1.5 Firefox 2.0.x Mozilla 1.7 32-bit Inst

    all 53MB Disk

    32-bit Install 122MB Disk

    JFB J2SE Solaris 9 OS (32 bit) Gnome 2-metacity, CDE-dtwm Mozilla 1.4 Netscape 7

    JFB J2SE Solaris 8 OS (32 bit) CDE-dtwm/OpenWin-olwm Netscape 4.7

    Windows (32-bit)

    Windows x86

    JFB Windows 7 Home Premium Aero, Windows XP & Classic Desktop

    IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    Install Disk space

    Install Disk space

    JFB Windows 7 Professional

    JFB Windows 7 Ultimate

    JFB J2SE Windows Vista Home Basic (SP1,SP2) Windows XP & Classic Desktop

    IE 7.x or IE 8.x Firefox 2.0.x,

    - 9 - Copyright 2003-2017 TargetStream Technologies Inc.

    http://www.oracle.com/technetwork/java/javase/install-solaris-136694.htmlhttp://www.oracle.com/technetwork/java/javase/install-windows-diskspace-135214.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-136396.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-136694.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-135069.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-136694.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-136694.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-141263.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-136396.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-141263.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-136396.htmlhttp://www.oracle.com/technetwork/java/javase/install-windows-diskspace-135214.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-141263.htmlhttp://www.oracle.com/technetwork/java/javase/install-windows-138227.htmlhttp://www.oracle.com/technetwork/java/javase/install-windows-139179.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-135069.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-135069.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-136396.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-135069.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-136694.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-64-141263.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-135069.htmlhttp://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/install-solaris-136694.htmlhttp://www.oracle.com/technetwork/java/javase/install-solaris-135069.html

  • StreamEDS Users Guide TargetStream Technologies Inc.

    JFB J2SE Windows Vista Home Premium (SP1,SP2) Firefox 3.0.x or Firefox 3.5.x

    JFB J2SE Windows Vista Home Business (SP1,SP2)

    JFB J2SE Windows Vista Home Ultimate (SP1, SP2)

    JFB Windows Server 2008 Standard (SP1, SP2)

    Windows XP & Classic Desktop

    IE 7.x or IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB Windows Server 2008 Enterprise (SP1, SP2)

    JFB Windows Server 2008 Datacenter (SP1, SP2)

    JFB Windows Web Server 2008 (SP1, SP2)

    JFB J2SE Windows XP Professional (SP1, SP2, SP3) Windows XP & Classic Desktop

    IE 6 or IE 7.x or IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB J2SE Windows XP Home (SP1, SP2, SP3)

    JFB J2SE Windows 2000 Professional (SP3, SP4) Windows Active & Classic Desktop

    IE 5.50 or IE 6 Mozilla 1.4 Mozilla 1.7 Firefox 2.0.x JFB J2SE

    Windows 2000 Server (SP3, SP4)

    JFB J2SE Windows 98 (2nd Edition) Classic Desktop IE 5.50 or IE 6

    JFB J2SE Windows ME Classic Desktop IE 5.50 or IE 6

    JFB J2SE Windows Server 2003, Web Edition (R2, SP1, SP2)

    Windows XP & Classic Desktop

    IE 6 or IE 7.x or IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB J2SE Windows Server 2003, Standard Edition (R2, SP1, SP2)

    JFB J2SE Windows Server 2003, Enterprise Edition (R2, SP1, SP2)

    JFB J2SE Windows Server 2003, Datacenter Edition (R2, SP1, SP2)

    Windows 64-bit

    Windows x64

    JFB Windows 7 Home Premium

    Aero, Windows XP & Classic Desktop

    64-bit OS, 32-bit Browsers: IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    Install Disk space

    Install Disk space

    JFB Windows 7 Professional

    JFB Windows 7 Ultimate

    JFB Windows Server 2008 R2 Standard

    Aero, Windows XP & Classic Desktop

    64-bit OS, 32-bit Browsers: IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB Windows Server 2008 R2 Enterprise

    JFB Windows Server 2008 R2 Datacenter

    JFB Windows Web Server 2008 R2

    JFB J2SE Windows Vista Home Basic Windows XP & Classic 64-bit OS, 32-bit

    - 10 - Copyright 2003-2017 TargetStream Technologies Inc.

    http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/install-windows-64-138184.htmlhttp://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/install-windows-diskspace-135214.htmlhttp://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/install-windows-64-136401.htmlhttp://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/install-windows-diskspace-135214.html

  • StreamEDS Users Guide TargetStream Technologies Inc.

    (SP1, SP2) Desktop Browsers: IE 7.x or IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB J2SE Windows Vista Home Premium (SP1, SP2)

    JFB J2SE Windows Vista Home Business (SP1, SP2)

    JFB J2SE Windows Vista Home Ultimate (SP1, SP2)

    JFB Windows Server 2008 Standard (SP1, SP2)

    Windows XP & Classic Desktop

    64-bit OS, 32-bit Browsers: IE 7.x or IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB Windows Server 2008 Enterprise (SP1, SP2)

    JFB Windows Server 2008 Datacenter (SP1, SP2)

    JFB Windows Web Server 2008 (SP1, SP2)

    JFB J2SE Windows XP Professional (SP1, SP2, SP3) Windows XP & Classic Desktop

    64-bit OS, 32-bit Browsers: IE 6 or IE 7.x or IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB J2SE Windows 2003, Standard Edition (R2, SP1, SP2)

    Windows XP & Classic Desktop

    64-bit OS, 32-bit Browsers: IE 6 or IE 7.x or IE 8.x Firefox 2.0.x, Firefox 3.0.x or Firefox 3.5.x

    JFB J2SE Windows 2003, Enterprise Edition (R2, SP1, SP2)

    JFB J2SE Windows 2003, Datacenter Edition (R2, SP1, SP2)

    Linux 32-bit

    Linux x86 JFB Oracle Enterprise Linux 6.x

    Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    Firefox 3.0.x or Firefox 3.5.x

    Install 59MB Disk

    Install 131MB Disk

    JFB Oracle Enterprise Linux 5.6+ Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5 Firefox 3.0.x or Firefox 3.5.x

    JFB Oracle Enterprise Linux 5.5 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5 Firefox 3.0.x or Firefox 3.5.x

    JFB Oracle Enterprise Linux 5.4 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5 Firefox 3.0.x or Firefox 3.5.x

    JFB Oracle Enterprise Linux 4.8 Gnome 2.7.3 - Metacity 2.6.2 Firefox 2.0.x or Firefox 3.0.x

    JFB Red Hat Enterprise Linux 6.x Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5 Firefox 3.0.x or Firefox 3.5.x

    JFB Red Hat Enterprise Linux 5.6+ Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    Firefox 3.0.x or Firefox 3.5.x

    JFB Red Hat Enterprise Linux 5.5 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5 Firefox 3.0.x or Firefox 3.5.x

    JFB Red Hat Enterprise Linux 5.4 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5 Firefox 2.0.x or Firefox 3.0.x

    JFB J2SE Red Hat Enterprise Linux 5.0 (5.1, 5.2, 5.3) Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    Firefox 2.0.x or Firefox 3.0.x

    JFB J2SE Red Hat Enterprise Linux AS 4.0 (4.1 - 4.8) Gnome 2.8.0-metacity 2.6.2

    Firefox 2.0.x Mozilla 1.4

    - 11 - Copyright 2003-2017 TargetStream Technologies Inc.

    http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/install-linux-141396.htmlhttp://www.oracle.com/technetwork/java/javase/install-linux-138610.htmlhttp://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html#firefox-3.5

  • StreamEDS Users Guide TargetStream Technologies Inc.

    JFB J2SE Red Hat Enterprise Linux ES 4.0 (4.1 - 4.8) Gnome 2.8.0-metacity 2.6.2

    Mozilla 1.7

    JFB J2SE Red Hat Enterprise Linux AS 3.0 Gnome 2.2.2-metacity 2.6.2

    Mozilla 1.4

    JFB J2SE Red Hat Enterprise Linux ES 3.0 Gnome 2.2.2-metacity 2.6.2

    JFB J2SE Red Hat Enterprise Linux WS 2.1 Gnome 1.4-sawfish 1.0

    JFB J2SE Red Hat Enterprise Linux ES 2.1 Gnome 1.4-sawfish 1.0

    JFB J2SE Red Hat Enterprise Linux AS 2.1 Gnome 1.4-sawfish 1.0

    JFB J2SE SUSE 10 Gnome 2.12.0.1-2 - Metacity 2.12.0-3 Firefox 2.0.x

    JFB J2SE SUSE 9.2 Gnome 2.6.1-metacity 2.6.2

    Mozilla 1.4 JFB J2SE SUSE 9.1 Gnome 2.2-metacity 2.6.2

    JFB J2SE SUSE 9 Gnome 2.2-metacity 2.6.2

    JFB J2SE SUSE 8.2 Gnome 2.2-metacity 2.6.2

    JFB J2SE SLEC 8 Gnome 2.0-metacity 2.6.2

    JFB SLES 11 GNOME 2.24.1-2.28 - Metacity is 2.24.0-3 Firefox 3.0.6 or 3.0.8

    JFB J2SE SLES 10 Gnome 2.12.0.1-26.6 - Metacity 2.12.3-0.15 Firefox 2.0.x

    JFB J2SE SLES 9 Gnome 2.4.0-metacity 2.6.2

    Mozilla 1.4

    JFB J2SE SLES 8 Gnome 2.0.5-metacity 2.6.2

    JFB J2SE TurboLinux 8.0 Gnome-sawfish 1.0

    JFB J2SE Sun Java Desktop System, Release 2 Gnome 2-metacity 2.4

    JFB J2SE Sun Java Desktop System, Release 1 Gnome 2-metacity 2.4

    Linux 64-bit

    Linux x64 JFB Oracle Enterprise Linux 6.x Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 3.0.x or Firefox 3.5.x

    Install 57MB Disk

    Install 118MB Disk

    JFB Oracle Enterprise Linux 5.6+ Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 3.0.x or Firefox 3.5.x

    JFB Oracle Enterprise Linux 5.5 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 3.0.x or Firefox 3.5.x

    JFB Oracle Enterprise Linux 5.4 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 3.0.x or Firefox 3.5.x

    JFB Oracle Enterprise Linux 4.8 Gnome 2.7.3 - Metacity 64-bit OS, 32-bit

    - 12 - Copyright 2003-2017 TargetStream Technologies Inc.

    http://www.oracle.com/technetwork/java/javase/install-linux-64-139724.html#requirementshttp://www.oracle.com/technetwork/java/javase/install-linux-64-142356.html#requirements

  • StreamEDS Users Guide TargetStream Technologies Inc.

    2.6.2 Browsers: Firefox 2.0.x or Firefox 3.0.x

    JFB Red Hat Enterprise Linux 6.x Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 3.0.x or Firefox 3.5.x

    JFB Red Hat Enterprise Linux 5.6+ Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 3.0.x or Firefox 3.5.x

    JFB Red Hat Enterprise Linux 5.5 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 3.0.x or Firefox 3.5.x

    JFB Red Hat Enterprise Linux 5.4 Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 2.0.x or Firefox 3.0.x

    JFB J2SE Red Hat Enterprise Linux 5.0 (5.1, 5.2, 5.3) Gnome 2.16.0-6.el5 - Metacity 2.16.0-12.el5

    64-bit OS, 32-bit Browsers: Firefox 2.0.x or Firefox 3.0.x

    JFB J2SE Red Hat Enterprise Linux AS 4.0 (4.1 - 4.8). Gnome 2.8.0-metacity 2.6.2

    64-bit OS, 32-bit Browsers: Firefox 2.0.x Mozilla 1.4 or Mozilla 1.7

    JFB J2SE Red Hat Enterprise Linux ES 4.0 (4.1 - 4.8) Gnome 2.8.0-metacity 2.6.2

    JFB J2SE Red Hat Enterprise Linux AS 3.0 Gnome 2.2.2-metacity 2.6.2

    64-bit OS, 32-bit Browsers: Mozilla 1.4

    JFB J2SE Red Hat Enterprise Linux ES 3.0 Gnome 2.2.2-metacity 2.6.2

    JFB J2SE SUSE 9.2 Gnome 2.6.1-metacity 2.6.2

    JFB J2SE SUSE 9.1 Gnome 2.2-metacity 2.6.2

    JFB J2SE SUSE 9 Gnome 2.2-metacity 2.6.2

    JFB J2SE SUSE 8.2 Gnome 2.2-metacity 2.6.2

    JFB SLES 11 GNOME 2.24.1-2.28 - Metacity is 2.24.0-3

    64-bit OS, 32-bit Browsers: Firefox 3.0.6 or 3.0.8

    JFB J2SE SLES 10 Gnome 2.12.0.1-26.6 - Metacity 2.12.3-0.15

    64-bit OS, 32-bit Browsers: Firefox 2.0.x

    JFB J2SE SLES 9 Gnome 2.4.0-metacity 2.6.2 64-bit OS, 32-bit Browsers: Mozilla 1.4 JFB J2SE SLES 8 Gnome 2.0.5-metacity 2.6.2

    Update Release Footnotes Oracle Enterprise Linux 5.5 support for JFB was introduced in 1.5.0_24. Oracle Enterprise Linux 5.4 support for JFB was introduced in 1.5.0_24. Oracle Enterprise Linux 4.8 support for JFB was introduced in 1.5.0_24. Red Hat Enterprise Linux 5.6 support for JFB was introduced in 1.5.0_29.

    - 13 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Red Hat Enterprise Linux 5.5 support for JFB was introduced in 1.5.0_24. Red Hat Enterprise Linux 5.4 support for JFB was introduced in 1.5.0_21. Windows 7 support was introduced in 1.5.0_21. Windows Server 2008 R2 support was introduced in 1.5.0_21. Windows Vista SP2 support was added in 1.5.0_21. Windows Server 2008 SP2 support was added in 1.5.0_21. SLES 11 support was added in 1.5.0_19. Red Hat Enterprise Linux 5.3 support was added in 1.5.0_19. Windows Server 2008 support was added in 1.5.0_19. Red Hat Enterprise Linux 5.0 support was added in 1.5.0_16. Windows Vista support was added in 1.5.0_14. Solaris x64 support was introduced in 1.5.0_02. AMD64/EM64T 32-bit mode Windows support was introduced in 1.5.0_02. Prior to 1.5.0_02, J2SE 5.0 supports AMD Opteron (32) Windows in this configuration. AMD64/EM64T 64-bit mode Windows support was introduced in 1.5.0_02. Prior to 1.5.0_02, J2SE 5.0 supports AMD Opteron (64) Windows in this configuration. AMD64/EM64T 32-bit mode Linux support was introduced in 1.5.0_02. Prior to 1.5.0_02, J2SE 5.0 supports AMD Opteron (32) Linux in this configuration. AMD64/EM64T 64-bit mode Linux support was introduced in 1.5.0_02. Prior to 1.5.0_02, J2SE 5.0 supports AMD Opteron (64) Linux in this configuration.

    - 14 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 3 StreamEDS Installation Instructions

    3.1 Installation Instructions Download StreamEDS using the link provided by TargetStream. The downloaded file will look like this: StreamEDS_Workbench-v1.X-win32.exe. You will need Administrator rights to run and install the executable provided. Double Click the executable to start the installation. A Setup Dialog will appear:

    Click Next By default, StreamEDS will install in C:\Program Files\StreamEDS Workbench

    - 15 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Click Next A Confirmation Dialog will appear:

    Click Next A Status Dialog showing the installation progress will appear as StreamEDS Workbench is installed.

    - 16 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Once the installation is complete, an Installation Complete Dialog will appear, and you will have the option to launch the StreamEDS Workbench.

    Click Finish and the StreamEDS Workbench will launch.

    A demonstration video is available in chapter 15.

    - 17 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    3.4.1 Verify the Installation Once the StreamEDS Workbench has been installed, test the installation. In the Work area(See chapter 4) of the workbench, you will see links to:

    Getting Started Users Guide TargetStream.com

    Click on Getting Started. A Welcome Dialog will appear describing how you have just opened an AFP for display using the workbench, and other ways you can open AFP documents.

    Click OK, the dialog will close and you will set our utility.afp (a sample AFP we provide), displayed in the workbench. If you are running the evaluation copy, a StreamEDS Demo watermark will be displayed on the AFP.

    - 18 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    You will notice with an AFP open the toolbar has changed.

    To complete the installation test, click on the PDF toolbar icon. This will convert the AFP that is active and open to convert from AFP to PDF. The AFP to PDF transform will occur and the converted PDF should open using your systems default PDF viewer. If you close the PDF created, you will see a new file in the workbench output folder called utility.afp.pdf You can open this PDF by double clicking it, or by using the right mouse click and selecting open.

    - 19 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    3.4.2 Test StreamEDS with your AFP documents After you have verified StreamEDS is working by converting the sample AFP provided (utility.afp), you are now ready to try StreamEDS on your own documents.

    1. From the Menu Bar, you can select File>Open AFP 2. Double Click on the file in the data folder of the Project View. 3. Right Click on the file in the data folder and click Open. 4. Drag the AFP file from your file system onto the document view area. 5. Click the Open AFP file folder icon on the toolbar.

    From here, you can use the Tool Bar Icons to convert your AFP to any of the supported formats. NOTE: Your converted document may not appear with the same fidelity as the print version; this is because StreamEDS needs access to certain AFP resources like overlays and custom fonts.

    - 20 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 4 StreamEDS Workbench Layout The StreamEDS Workbench has a very similar look and feel to Eclipse. That is due to StreamEDS being developed using the Eclipse RCP (Rich Client Platform). Here is what StreamEDS looks like immediately after an install:

    Here is what the workbench looks like after you have opened an AFP:

    - 21 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    4.1 Title Bar A - At the top of the StreamEDS workbench, you will find the Title Bar. If you are running an evaluation version of StreamEDS, the title bar will display how many days are left in the evaluation.

    4.2 Menu Bar B - Below the Title Bar, you will find the Menu Bar. The Menu Bar provides general product options and functions. Menu Bar options are:

    File o New

    Resource Set Creates a new Resource set that can be viewed in the resources view.

    o Open AFP open an AFP via a Windows Explorer dialog PDF open a PDF via a Windows Explorer dialog

    o Save/Save All saves the workspace o Eds-gen

    Import Import an eds-gen replacing the current one. Export Export current eds-gen.

    o Workspace Open Opens a Windows Explorer window in C:\Users\john

    doe\TSTWorkspace Import Opens a dialog to import and replace current workspace Export Exports current TSTWorkspace, does NOT reset or

    replace current workspace Refresh refreshes the GUI to the file system. Clean & Rebuild removes compiled files and rebuilds everything Reset Restores workspace to default settings removing any and

    all changes. o Deploy

    EDS for Java Opens a dialog to create artifacts for deployment in 100% java

    EDSN for .Net Opens a dialog to create artifacts for deployment to .NET environments

    o Export AFP Opens a dialog with options for exporting an AFP from the workbench

    o Import License Opens a Windows Explorer to navigate to a license o Exit Closes workbench

    Workflow

    - 22 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    o New Opens a dialog to select a workflow to add to the workspace from the included examples

    o Copy Make a copy of a workflow in the workspace o Import Opens a Windows Explorer to import a workflow into the

    workspace. Resources

    o Import AFP

    Charset Import missing/external Charset(s) into the resource set

    Codefont - Import missing/external CodeFont(s) into the resource set

    Codepage - Import missing/external Codepage(s) into the resource set

    Formdef - Import missing/external Formdef(s) into the resource set

    Pagedef - Import missing/external Pagedef(s) into the resource set

    Overlay - Import missing/external Overlay(s) into the resource set

    Object - Import missing/external Object(s) into the resource set

    Object Container - Import missing/external Object container(s) into the resource set

    PageSegment - Import missing/external Pagesegment(s) into the resource set

    Resource Group - Import missing/external resource group(s) into the resource set

    Data Opens a dialog to import any other resources that dont fit into the above categories. i.e: A PDF backer page

    Image Opens a dialog to import images used/needed for transformation.

    OTF Opens a dialog to import Open Type Fonts into the resource set.

    Type 1 - Opens a dialog to import Type 1 Fonts into the resource set.

    Encoding - Opens a dialog to import encoding(s) into the resource set.

    Fontres Opens a dialog to import virtual font resources Workflow

    Change Opens a dialog to import a .change file Sink - Opens a dialog to import a workflow sink

    o Manage Versions opens a dialog that lists all resource sets and gives the ability to switch between, add, or remove resource sets.

    - 23 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Tools o Deploy

    EDS for Java Opens a dialog to create artifacts for deployment in 100% java

    EDSN for .Net Opens a dialog to create artifacts for deployment to .NET environments

    o AFP Export AFP AFP Opens a dialog with options for exporting an

    AFP from the workbench Validate AFP Provides a log of any errors or missing resources

    in a selected AFP document. Extract Fonts - Extracts all fonts from an AFP and places them in

    the active AFP charset resources. Extract Images Extracts all images from an AFP and places them

    in the images folder of the active resource set. o Map Fonts

    Current Document - Auto Map Fonts - Automatically maps any fonts that match

    any of the 13 Adobe Referenced fonts Delete Font Mappings - Deletes all font mappings

    configured for the current document selected. Reset Font Mappings - Globally resets all font mappings to factory

    defaults. Set Missing Glyphs Action - Default setting is UseSourceGlyph,

    to use the source glyph from the source font when the destination font does not have a corresponding glyph. Setting it to Ignore will force StreamEDS to use the destination fonts glyph(s)

    Set AutoFill GlyphKeys Option - Default setting is true/enabled. When enabled StreamEDS will automatically add equivalent Glyph Keys for different systems to each character. When this option is disabled StreamEDS will only use the Glyph Keys defined in the encoding.

    NOTE: Disabling this option can boost performance but may require adding/creating a StreamEDS encoding XML resource for correct output.

    Window o Views

    Console Focuses on the console view in the bottom center of the workbench

    Outline - PageView - Focuses on the console view on the right side of the

    workbench Problems Focuses on the problems view in the bottom center of

    the workbench

    - 24 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Projects - Focuses on the projects view on the left side of the workbench

    Properties Focuses on the properties view on the bottom right side of the workbench

    Resources - Focuses on the resources view on the left side of the workbench

    Content Details Focuses on the content details view. Found below the work area, bottom center, and only available in the Mark Perspective

    o Perspectives set the views and layout of the workbench Code replaces the resource and project views with Sample

    Code view giving access to the sample included java classes. Font Replaces the outline view with the font view enabling easier

    management of fonts Browse The default perspective to view the AFP, resources, and

    metadata Mark Only perspective capable of marking documents, gives

    access to the Stream Changes, Logical Structures, and Content Details views.

    o Clear Console clears all content from the console o Reset Perspective returns all views and sidebars to their default

    positioning Help

    o Welcome Opens welcome page in the work area o Changelog Opens changelog in the work area o Java API o Check for Updates o Post-Update Processing o About Targetstream

    Many of these Menu Bar options lead to Sub Options

    4.3 Tool Bar C Below the Menu Bar you will find the Tool Bar. The Tool Bar option will change depending on which perspective you are in.

    4.4 Perspectives D In the upper right hand corner of the workbench you will find the Perspectives. AFP Browse Used to view AFP documents. Font Used to view AFP Fonts referenced within an AFP. Used to map AFP fonts to

    - 25 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Open Type, True Type, or Outline Fonts. Code Used to view sample code. Mark Used to graphically mark documents initially to conform to PDFUA and ADA standards.

    4.5 Project View/Resource View E Used to browse the project folders and resource folders.

    4.6 Work Area / Document View Area F The central area of the workbench used to view AFP documents and view/edit Workflows.

    4.7 Navigation View G There are two Navigation Options, PageView and Outline View. PageView provides a thumbnail image of pages. Outline View provides a metadata outline of the active (open) AFP.

    4.8 Console View / Problems View / Font Mapping View H There are three options at the center bottom of the workbench, Problems View, Console View, Font Mapping. Problems View The Problems View will display any problems with the open AFP. Typical messages displayed here will be missing resource messages like, missing fonts, codedfonts, codepages, overlays, formdefs, or pagesgments. Console View The Console View will display any messages from running a workflow. Font Mapping View The Font Mapping View will display the options available when mapping an AFP Font to a font resource that PDF understands.

    4.9 Properties View I The lower right section of the workbench will display the properties for the file open, selected or active.

    - 26 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 5 Installation Directories By default, StreamEDS is installed in the C:\Program Files\StreamEDS Workbench directory. The files in this directory will probably never have to be touched.

    5.1 root The root of the installation directory contains the executable files and StreamEDS Workbench startup configuration. The TSTWorkbench.ini is used to establish the StreamEDS startup environment variables. The following directories should not be touched or edited.

    configuration features jre p2 plugins

    - 27 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 6 TSTWorkspace When the StreamEDS Workbench is run for the first time, a folder will be created in the User Home directory called TSTWorkspace. Here is an example: C:\Users\John Doe\TSTWorkspace.

    Any changes made while the StreamEDS Workbench is open will be persisted in this directory. This directory also contains a sample Eclipse project that can be used to run the Java code samples. A demonstration video is available in chapter 14.

    6.1 root The root of the TSTWorkspace directory contains the:

    .classpath Eclipse project file. .project Eclipse project file. CHANGELOG.txt a list of the releases and the changes included in each

    release. README.txt a list of quick start instructions and acknowledgements. StreamEDS.lic the StreamEDS license file.

    6.2 .metadata The .metadata folder contains StreamEDS workbench runtime data. This folder may also contain a .log file which will report any problems performing GUI based transformations.

    6.3 com.tst.eds The com.tst.eds folder is the main folder that contains project specific configuration settings and external resources. One specific folder often accessed is the output folder.

    - 28 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    C:\Users\John Doe\TSTWorkspace\com.tst.eds\projects\EDSProject\output When a document transform is run using the GUI, the output of the transform is written here.

    6.4 data The data folder is where the sample AFPs provided are located. Users can also copy there AFPs to this folder for quick easy access from the workbench.

    6.5 docs The docs directory contains the Java API.

    6.6 eds-gen The eds-gen directory is a proprietary directory where our resource repository is stored and the configuration changes are staged.

    6.7 lib The lib directory contains all of the jar files needed to run the transform.

    6.8 scripts The scripts directory contains sample scripts for running headless.

    6.9 src The src directory contains sample code for executing workflows.

    - 29 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 7 Workflows At the heart of StreamEDS is the Workflow. The Workflow is an XML based file contains nodes and sinks used to describe to the StreamEDS Engine what operation(s) to perform. The Workflow also facilitates the ability to have multiple configurations for different types of conversions. For example, your organization may have many different types of AFP documents (invoices, statements, bill images, etc.), and each AFP may have a different set of resources like AFP Fonts, Overlays, Page Segments, etc In this case, you are able to define a separate Workflows for each conversion, with each specifying a different location for the various resources needed at conversion time.

    7.1 Workflow Concepts Workflows are what control StreamEDS. They model a process that can be executed repeatedly, and concurrently, to generate a desired paginated output, or even set of paginated outputs, given a set of input parameters. They model this process using the concept of Operator Streams, Changes and Sinks.

    Operator Stream: o Models primitives commonly found in print streams such as "Draw Page".

    Change:

    o Modifies the operator stream in some way. For instance, an "afpIn" change adds the contents of a MODCA AFP document to the operator stream, "modifyPage" conditionally applies a page modifications to all draw page operators.

    o Changes can be stacked. For instance, two afpIn changes can be stacked to

    produce an operator stream containing the contents of two AFP's.

    Sink: o Consumes the operator stream, and terminates the workflow. Typically

    represents an output document type such as a PDF, Postscript, or TIFF.

    7.2 Workflow Examples

    7.2.1 Workflow Example 1 This example is a simple workflow that adds the contents of an AFP to the operator stream via the "afpIn" node, and defines a "pdfOut" node to digest the operator stream and terminate the workflow. In effect, a simple AFP->PDF transform.

    - 30 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    path/to/utility.afp

    path/to/out.pdf

    7.2.2 Workflow Example 2 Parameters passed to nodes can either be constants or Groovy scripts (see below) to be evaluated. Groovy scripts:

    There are two ways to evaluate a groovy script in a workflow. The first is: ${Script Here} The second, for more complex scripts is:

    Evaluating a groovy script (http://groovy.codehaus.org/Documentation) to retrieve parameter values as opposed to hard coding strings. Groovy doesn't require a return statement unlike Java, and if none is given the last object in a script is returned.

    All of these are the same in groovy: ${

    '/git/input/afp/utility.afp' } ${

    return '/git/input/afp/utility.afp' }

    Return types: Groovy scripts must return type required of parameter, but we support implicit conversions. For example, we can implicitly convert from String or File to InputStream so all these would be acceptable for a parameter type of InputStream:

    - 31 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    ${ '/git/input/afp/utility.afp'

    } ${

    new java.io.File('/git/input/afp/utility.afp') } ${

    new java.io.FileInputStream('/git/input/afp/utility.afp') }

    ${

    println('executing script to retrieve afpIn->stream parameter')

    'path/to/utility.afp'

    }

    ${ println('executing script to retrieve

    pdfOut->stream parameter')

    return 'path/to/out.pdf' }

    7.2.3 Workflow Example 3 How about if we want a parameter value to be derived from a keyed value passed in on a workflow execution? The variable can be retrieved via an implicit object passed into all scripts "ctx". ctx is of type java.util.Map, and all variables passed into a workflow execution can be accessed via that object. Note: thanks to groovy magic, a shortcut can be used to access keyed values in the map.

    - 32 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Java: ctx.get("input")

    Groovy: ctx.input

    You can still use the old way if you'd like, but just an FYI because we make use of the shortcut in a lot of our examples

    Input AFP document

    ${

    'path/to/' + new File(ctx.input).getName() + '.pdf' }

    ${ctx.input}

    ${ctx.output}

    - 33 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 8 Running Headless StreamEDS has two modes that it can run, 1) Using the StreamEDS Workbench (GUI), and 2) Headless. The headless mode was developed for use in systems that did not support a GUI environment and to demonstrate batch operations. If you want to run a workflow using a batch file or a script you can do so from the command prompt.

    8.1 Check Java Version Before attempting to execute TargetStream StreamEDS Headless, you should first ensure that you can execute Java in your environment and that the correct version of Java runs. TargetStream StreamEDS Headless requires Java version 1.5 or greater. To check your Java version, execute the following command: java -version In the output, you should see a line like the following: java version "1.5.0_21" If you receive a message like "java: command not found" or "'java' is not recognized", your environment is not configured to run Java. If your Java version is less than 1.5 or your environment is not configured to run Java, you must correctly configure your environment before trying to use TargetStream StreamEDS Headless. Configuring your environment to run Java 1.5 (or greater) is beyond the scope of this document.

    8.2 Executing StreamEDS Headless Via the StreamEDS Script Open a command prompt and change directory to the scripts directory. For example, if you installed StreamEDS Workbench, open to "C:\Users\My User\ TSTWorkspace\scripts", then you would execute the following command:

    - 34 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    cd "C:\Users\My User\ TSTWorkspace\scripts " Then execute the StreamEDS script. On Windows, execute: StreamEDS.bat AFPtoPDF utility.afp On all other supported operating systems, execute: sh StreamEDS.sh AFPtoPDF utility.afp This command should create a file named utility.afp.pdf. You should be able to open the file using your favorite PDF viewer. Read the builtin usage information for more advanced syntax. On Windows, execute: StreamEDS.bat help On all other supported operating systems, execute: sh StreamEDS.sh help

    8.3 Running Headless From a Deployment StreamEDS can also be run headless from a deployment. (See chapter 12 for deployment details) You must ensure you include the scripts directory in the deployment for this method to work. A demonstration video is available for this process in Chapter 15.

    - 35 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 9 Resolving Missing AFP Resources AFP documents can reference the following external resource types:

    CharacterSets (fonts) Codedfonts Codepages Overlays Pagesegments Formdefs Pagedefs

    Generally speaking, the first character of the resource name indicates the resource type. This is just a naming convention and may not be a strictly enforced standard.

    C - CharacterSets (fonts) X - Codedfonts T - Codepages O - Overlays S - Pagesegments F - Formdef P - Pagedef

    After you have opened an AFP you may notice the Problems View warning the AFP is missing a resource. StreamEDS Workbench has parsed the AFP provided and the AFP is referencing a specific AFP resource that has not been provided. Until you resolve missing AFP resources, your AFP may not look correct in the StreamEDS Workbench AFP viewer. AFP documents may or may not contain in-line resources. in-line resources are external AFP resources that are prepended (prefixed) on the front of the AFP document within an AFP Resource Group. Some document archive systems will dynamically create an in-line Resource Group and add it to the front of the AFP as the requested document is returned from the archival system. If your AFP document contains in-line resources, your document should open and render fine within the StreamEDS workbench. If your AFP document references external resources and they are not included in-line you will see something like this:

    - 36 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    You may have to request the missing AFP resources from the AFP producer, the Print Center, or the AFP Provider. To resolve the missing resources, double click on the missing resource message, and you will be prompt to import the missing resource:

    - 37 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Once you have resolved all of the missing resource messages, the warning messages within the Problems View will clear and your AFP should display correctly.

    You are now ready to use the Toolbar Icons, or desired workflow, to transform to the desired output type. See Chapter 15 for demonstration video.

    - 38 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 10 Font Mapping PDF does not understand what an AFP font is. One of the hardest parts transforming AFP to PDF is getting an AFP font into a form that PDF understands. By default, if you have not mapped an AFP font to something PDF can understand, StreamEDS will, on-the-fly during transformation, convert the AFP bitmap font to an Adobe Type 3 raster font and embed it in the PDF. There are a couple of advantages to this approach, 1) you dont have to do anything, and 2) the PDF generated should look exactly like the AFP because the PDF is using the exact bitmap glyph patterns the AFP font used. There are a couple of disadvantages to this approach, 1) the generated PDF is usually larger in size due to embedding the Adobe Type 3 raster fonts, and 2) raster fonts when viewed electronically sometimes appear fuzzy on a computer monitor. Raster fonts can easily be recognized when you zoom in by their blocky outline, especially on characters that are round or are not composed of vertical and horizontal lines. Look at the two versions of the of Plat from the word Platinum from our sample statement above. Zoomed in to the resulting PDFs, the first one with unmapped bitmap font and the second with a mapped font in StreamEDS, you can clearly see the difference. Bitmap font converted to Adobe Type 3 raster:

    Font mapped in StreamEDS converted to Type 1 outline:

    - 39 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Another way to tell if the PDF you generated using StreamEDS is using dynamic Adobe Type 3 raster fonts is to open a PDF and from the Acrobat menu select File>Properties>Fonts tab. You will see something that looks like this:

    In the previous chapter, we opened an AFP and resolved all of the missing resources. When we converted that AFP to PDF, you can see the size by looking at the Properties View.

    - 40 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    10.1 Mapping AFP Bitmap Font to Adobe Referenced Font 1. Open the StreamEDS Workbench. 2. Open your AFP and resolve any missing AFP resources. (Demo video available in

    chapter 14) 3. In the upper right hand corner of the workbench, change from the AFP Browse

    Perspective to the Font Perspective by selecting the font perspective button. When you change perspectives, you will notice a Font tab replaces the Outline tab and a list of all the fonts used by this document will display. To display an AFP character, you need a Character Set and a Code Page. The Character Set contains the

    glyphs and the CGCSGIDs (Coded Graphic Character Set Global Identifiers). The Code Page contains the encoding mapping the codepoint to a CGCSGID. In the above image, you can see the name of the Character Set and the name of the Code Page. Next to the Code Page column is a Status column. The status column currently indicates the AFP Character Sets are Bitmap Character Sets. 4. Click on a font within the font list and the text associated with that font will

    highlight, and all other text will fade: The Properties view will change and display the Font Descriptor of the AFP Font. The Font Descriptor can display the name of the font family and the point size of the Character Set.

    - 41 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    5. At the bottom of the StreamEDS Workbench the Font Mapping tab will display

    any active or in active font mappings created. If the list is empty, no font mapping entries have been created. To create a new font mapping, click the New button within the Font Mapping tab. A Font Mapping dialog will appear.

    6. To select the PDF font to map the AFP font to, use the drop down list and select the

    name of the font. Once the font is selected, set the point size of the font. Below, we have selected the Helvetica font with a point size of 9. We will leave the encoding as source as we do not need to transcode this font.

    7. With the new mapping entry created, you will see the mapping appear in the list

    under the Font Mapping tab, and you will see the status of the font change from Bitmap to Mapped.

    - 42 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    **Note, you can change the point size clicking on the number under the Point Size column. You can also check / uncheck the Use Mapping checkbox to toggle between mapped and not mapped. 8. Repeat steps 4-7 for all the fonts you wish to map.

    10.2 Toggle Selected Font To toggle between having the fonts selected and not selected, mouse click on the box next to the Character Set column heading, as shown here.

    - 43 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    10.3 Edit Glyphs StreamEDS offers the ability to customize a font for specific glyphs. Editing glyphs in this fashion only applies to the font and mapping selected. If you wish to change a glyph for every font that utilizes a particular codepage see 10.4 Edit Unicode Mappings. To edit specific glyphs in a font:

    1. Navigate to the font perspective and select the font and mapping you wish to edit. In the bottom right of the font mappings view there is an Edit Glyphs button, select it. (See below)

    2. This will bring up the Customize Encoding dialog.

    - 44 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    3. In the Customize Encoding dialog you will see the source and destination glyph pairs for this mapping. Find the glyph you wish to edit. Then click on the box in the right column, i.e. the destination glyph. This will bring up the Select Glyph dialog. The figure below shows the Select Glyph dialog for codepoint 66. NOTE: The right column may be red and empty if the font does not contain a destination glyph for that codepoint (Example: codepoint 63 in figure above). You can still set/edit the destination glyph for this codepoint.

    3.1. 1: Info bar containing which code point you are currently editing. 3.2. 2: Glyph keys for the currently selected code point in the source font will

    be displayed here. 3.3. 3: Destination glyph keys for the new/current selection will be displayed

    here. 3.4. 4: If the mapping already has a destination glyph, it will be highlighted by

    a light blue background when the dialog opens. If there is no destination glyph in the mapping, nothing will be selected when the dialog opens.

    3.5. 5: Use Source Glyph button will use the glyph from the source font. 3.6. 6: Use Selected Glyph will use the currently selected glyph.

    4. Find and select the glyph you wish to use then select the Use Selected Glyph button in the bottom right.

    5. Back on the Customize Encoding dialog all edited glyphs will be highlighted in bright red. (Below you can see code point 66 was changed and the new

    - 45 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    destination glyph is highlighted in bright red)

    You can edit multiple glyphs in this fashion and click OK when done. This process will update the Font Table. Like with any other change in workbench, changes made here will have to be redeployed to take effect in any deployed environment.

    10.4 Edit Unicode Mappings For a PDF document to be text searchable, unicode values need to be assigned to the character set glyphs. This can be achieved using the Edit Unicode Mappings dialog. Editing Unicode mappings is much like editing glyphs, but where editing glyphs is intended to change/customize a particular character set/codepage combination, editing Unicode mappings affects all character sets that share a given codepage. Editing unicode mappings will create a new encoding which is derived using the current encoding as a parent.

    1. To edit the Unicode mapping select the font from the Fonts view, then right click and select Edit Unicode Mappings This will bring up the Edit Unicode Mappings dialog. (See below)

    - 46 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    2. Edit Unicode Mappings Dialog

    2.1. 1: Title bar 2.2. 2: Name of code page currently being edited. 2.3. 3: Changes the label of the source glyph 2.4. 4: Lists all character sets that use this codepage. 2.5. 5: Encoding used for mapping. 2.6. 6: Changes the scale of currently displayed glyphs.

    3. You can change the source label to display the different labels associated with each source glyph. The source drop down (#4) is used to view all character sets associated with the code page to view how the changes made here will affect them.

    4. If you desire to change a glyph for every charset that uses this codepage simply select the destination glyph on the right column, this will bring up the Select Glyph dialog (see Edit Glyphs #3 for explanation of the Select Glyph dialog) 4.1. Note: you will not be able to select Use Source Glyph as this only

    applies when editing glyphs for a charset. 5. Select OK when done to apply changes to workspace.

    - 47 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 11 Running Code Samples / Eclipse Project Within the TSTWorkspace (see Chapter 6), we have included a sample eclipse project to quickly and easily facilitate running code samples that demonstrate how to use the API to invoke StreamEDS. A video demonstration can be found in Chapter 15.

    11.1 Importing Sample Eclipse Project 1. Open Eclipse. Create a new Eclipse Workspace if you want. 2. Select File>Import. The following dialog will appear:

    3. Select General>Existing Projects into Workspace, then click Next.

    - 48 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    4. An Import dialog will display, click Browse. A Browse For Folder dialog will

    display. Navigate to your TSTWorkspace directory (The TSTWorkspace will be created under your USER_HOME directory). Click OK.

    5. From the Import Dialog click Finish.

    - 49 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    6. The Eclipse Project Explorer will now show a new Eclipse project called com.tst.eds.project. Under the project, the src folder will show sample code for invoking the API. Open the AFPtoPDF.java sample.

    7. This particular class is set up to take two string paths and a workflow name as a string

    and converts the document using the provided hard-coded pathways. Make sure you change line 9 to include the correct path to the document you wish to transform and the path and name of the location you wish it to be output to.

    8. On line 15 in the createWorkflowExecutor() method input the string name without the .tstwf extension of the workflow you wish to use for transform. NOTE: the workflow must be present in your workspace for it to be found.

    9. Next, run the EDSTransformerString java class. Within Eclipse, from the Menu Bar, select Run>Run Configurations. Double click on Java Application on the left, this will create a new Run Configuration for the active java class. Click Run.

    - 50 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 12 Deploying Workbench Changes Once the PDF, generated from the StreamEDS Workbench, looks like you want it to, you are ready to create a StreamEDS Workbench deployment artifact that can be used (integrated) within your code/application/system. A video demonstration can be found in Chapter 15.

    12.1 Workbench Deploy Option From the Menu Bar, select File>Deploy. This will package and create all of the artifacts from StreamEDS that you will need to bundle with your application.

    NOTE: Ensure all changes to workflows have been made and all required resources have been added before deploying. Once deployed the deployment will be completely decoupled from the workbench and any further changes there will NOT be reflected in previous deployments.

    All of the classes and configuration changes made within the StreamEDS Workbench will be included in the jar files located within the lib directory.

    - 51 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    1. Location you want the deployment to be saved 2. Name of your deployment (defaults to current StreamEDS version) 3. The eds-gen.jar file contains all of the configuration changes. The other jar files

    contain the classes used by StreamEDS to support the API being invoked. You may have noticed there was an option to output the eds-gen as a jar or dir. It is purely a decision of convenience and will not affect how StreamEDS works in its deployed location.

    4. Mandatory deployment requirement as it contains the required jars for running. If eds-gen is packaged as a jar it will be located in this directory. However, if packaged as a dir it will be placed as a dir at the same level as the lib dir.

    5. Includes the script directory. If you plan to run from command line this is required. It also comes packaged with utility.afp and utlity_spool.afp for easier command line testing and convenience.

    6. Contains compiled class files from the included sample java classes. 7. Contains the uncompiled java classes included in workbench. 8. Contains the src items needed in case a build is necessary from the deployment 9. Contains the same contents as the data folder in your project. By default it only

    contains utility.afp and utility_spool.afp 10.Contains the StreamEDS documentation 11.Outputs the deployment as a dir 12.Outputs the deployment as a zip 13.Outputs the deployment as a tar.gz

    - 52 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 13 Environment Sizing When trying to size your environment for performing document transformations, you should architect a simple application using your AFP documents as input and run a series of tests to check your throughput. Our transformation software can transform AFP to PDF in excess of 1000 pages per second, however there are factors that impact performance such as:

    Document complexity Document size Processing Power / Processing Speed. Virtual memory availability.

    If you are unable to run your own load tests, you should size based on the target Transactions Per Second (TPS) rate you anticipate. A general heuristic is to allocate one CPU or core per one TPS. Since the conversion/transformation is CPU intensive, you should also allocate additional CPUs/Cores for application server processing and other applications that may be sharing the server. Example 1-2 TPS: 1 server, 4 CPU/Cores, 4GB Ram 3-4 TPS: 2 servers, 4 CPU/Cores each, 4GB Ram each Or 1 server, 8 CPU/Cores, 8GB Ram running two separate application server instances. Each application server instance allocated 4 CPUs, and 4 GB Ram 8 TPS: 4 servers, 4 CPU/Cores each, 4GB Ram each Or 2 servers, 8 CPU/Cores each, 8GB Ram each. Each running two separate application server instances. Each application server instance allocated 4 CPUs, and 4 GB Ram

    - 53 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Here is a graphic illustrating scaling horizontally for additional load.

    A customer recently asked, "Do you know how many concurrent conversions StreamEDS is able to handle at the same time? We are using StreamEDS in a customer facing situation where a number of customers could request conversion at the same time, and need to know how the concurrent conversion situations are handled. " The number of "concurrent conversions" StreamEDS can handle is not a function of our software, rather a function of your environment. Because our document transformation is thread safe and written in JAVA, it scales very well when you have to add additional Application Server instances.

    - 54 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 14 Custom Logging In StreamEDS

    14.1 Define log location in Context.xml 1. Open workbench and use Ctrl+shift+R and search for Context.xml

    1.1. OR you may alternatively navigate to \TSTWorkspace\com.tst.eds\projects\EDSProject\ and edit the Context.xml file in a text editor

    1.1.1. If you use this method, after you make your changes you MUST rebuild the workspace for the changes to apply

    1.1.2. You may rebuild the workspace in one of the two following ways : 1.1.2.1. File->Workspace->Clean and Rebuild 1.1.2.2. Open command prompt and navigate to the scripts

    directory and run: StreamEDS.bat build 1.1.3. These steps ensure the changes you make are updated into the

    eds-gen 2. Once you have opened the Context.xml file and you want to define a specific

    location for the eds.log update the file path to your desired location in the the following:

  • StreamEDS Users Guide TargetStream Technologies Inc.

    1. We provide a SampleFileLogger.java class to use as a starting point. You may find it in the src folder, by navigating to the code perspective.

    2. The easiest way to customize this is to edit the SampleFileLogger class provided in the sample eclipse project.

    3. Change the file name to a custom location. Example: String fileName = "C:\\Users\\UserName\\Desktop\\StreamEDS.log;

    4. Edit the AFPsplitCallbackPDF workflow to use the new logger. 4.1. Add the following node to define your new logger.

    4.1.1. ${ new com.tst.eds.SampleFileLogger() }

    4.2. Edit the splitCallback.process() method call to include the new logger like: 4.2.1. ctx.splitCallback.process(ctx.myLogger, ctx.outDir,

    ctx.group.properties, ctx.count, ctx.os, "pdf) 5. Uncomment the logging calls in the SplitCallback class so log messages will be

    written to the log file.

    Note: the easiest way to edit the java classes is to import the workspace into eclipse and edit the classes from there. A video demonstration of this process can be found in Chapter 15

    - 56 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Chapter 15 Instructional Videos

    Installing Workbench for the first time on Windows Brief demonstration of how to install workbench via the installer on Windows.

    Importing a New License Key Brief demonstration on how to import a new license key into StreamEDS

    Workbench

    How to Deploy and Run From Command Line Demonstrates how to deploy StreamEDS from the GUI and then run StreamEDS

    headless from the command line.

    Resolving AFP Resources Demonstrates various ways to resolve missing AFP resources.

    How To Import Sample Eclipse Project Demonstrates how to import the sample project contained in StreamEDS into

    Eclipse.

    How To Map a Font Demonstrates the process to map a font in an AFP.

    Creating Resource Set Versions Demonstrates how to create resource set versions.

    Resource Set Versions Demonstrates how resource set versions work, using the example of like named

    resources.

    Deploying With Like Named Resources Demonstrates how to deploy StreamEDS with multiple resource set versions

    containing like named resources.

    - 57 - Copyright 2003-2017 TargetStream Technologies Inc.

    https://youtu.be/6GuURvOlYbAhttps://youtu.be/sfdyWJnZP90https://youtu.be/av9pV2mJ13Uhttps://youtu.be/ZX-B4D4n1lkhttps://youtu.be/JwDREOhRKDwhttps://youtu.be/IHM-owOhAkAhttps://youtu.be/nb4bDXxlHB0https://youtu.be/HlYl7m9AqvQhttps://youtu.be/CPL_ALGrlNQ

  • StreamEDS Users Guide TargetStream Technologies Inc.

    Appendix A: THIRD PARTY License GRANT.

    A.1 Apache Software License 2.0

    Acknowledgement Certain features or functionality of Licensors software may invoke modules, routines, or software developed by entities that license their software or components under the Apache Software License 2.0.

    License Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical

    - 58 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual,

    - 59 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside

    - 60 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill,

    - 61 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

    - 62 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    - 63 - Copyright 2003-2017 TargetStream Technologies Inc.

  • StreamEDS Users Guide TargetStream Technologies Inc.

    A.2 Bouncy Castle

    Acknowledgement Certain features or functionality of Licensors software may invoke modules or routines of software developed by Bouncy Castle.

    License Copyright (c) 2000 - 2011 The Legion Of The Bouncy Castle (http://www.bouncycastle.org) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. http://www.bouncycastle.org/licence.html

    - 64 - Copyright 2003-2017 TargetStream Technologies Inc.

    http://www.bouncycastle.org/licence.html

  • StreamEDS Users Guide TargetStream Technologies Inc.

    A.3 Groovy

    Acknowledgement Certain features or functionality of Licensors software may invoke modules or routines of software developed by The Groovy community. ========================================================================= == NOTICE file corresponding to the section 4 d of == == the Apache License, Version 2.0, == == in this case for the Groovy Language distribution. == =========================================================================

    Groovy Language Copyright 2003-2011 The respective authors and developers This product includes software developed by The Groovy community (http://groovy.codehaus.org/).

    License http://groovy.codehaus.org/License+Information Groovy is li