├── .gitattributes
├── src
├── main
│ ├── resources
│ │ └── org
│ │ │ └── fax4j
│ │ │ └── spi
│ │ │ └── vbs
│ │ │ ├── winxp_cancel_fax.vbs
│ │ │ ├── winxp_resume_fax.vbs
│ │ │ ├── winxp_suspend_fax.vbs
│ │ │ ├── winxp_get_fax_job_status.vbs
│ │ │ ├── win2k_cancel_fax.vbs
│ │ │ ├── win2k_resume_fax.vbs
│ │ │ ├── win2k_suspend_fax.vbs
│ │ │ ├── win2k_get_fax_job_status.vbs
│ │ │ ├── win2k_submit_fax.vbs
│ │ │ └── winxp_submit_fax.vbs
│ ├── javadoc
│ │ └── org
│ │ │ └── fax4j
│ │ │ ├── bridge
│ │ │ ├── email
│ │ │ │ └── package.html
│ │ │ ├── http
│ │ │ │ └── package.html
│ │ │ ├── process
│ │ │ │ └── package.html
│ │ │ └── package.html
│ │ │ ├── spi
│ │ │ ├── adapter
│ │ │ │ └── package.html
│ │ │ ├── efax
│ │ │ │ └── package.html
│ │ │ ├── http
│ │ │ │ └── package.html
│ │ │ ├── hylafax
│ │ │ │ └── package.html
│ │ │ ├── mac
│ │ │ │ └── package.html
│ │ │ ├── email
│ │ │ │ └── package.html
│ │ │ ├── faxage
│ │ │ │ └── package.html
│ │ │ ├── hoiio
│ │ │ │ └── package.html
│ │ │ ├── linux
│ │ │ │ └── package.html
│ │ │ ├── phaxio
│ │ │ │ └── package.html
│ │ │ ├── vbs
│ │ │ │ └── package.html
│ │ │ ├── interfax
│ │ │ │ └── package.html
│ │ │ ├── java4less
│ │ │ │ └── package.html
│ │ │ ├── metrofax
│ │ │ │ └── package.html
│ │ │ ├── send2fax
│ │ │ │ └── package.html
│ │ │ ├── windows
│ │ │ │ └── package.html
│ │ │ ├── extremefax
│ │ │ │ └── package.html
│ │ │ ├── nextivafax
│ │ │ │ └── package.html
│ │ │ ├── comm
│ │ │ │ └── package.html
│ │ │ ├── process
│ │ │ │ └── package.html
│ │ │ └── package.html
│ │ │ ├── common
│ │ │ └── package.html
│ │ │ ├── util
│ │ │ └── package.html
│ │ │ └── package.html
│ ├── native
│ │ └── windows
│ │ │ ├── dll
│ │ │ ├── fax4j_dll.vcxproj.user
│ │ │ ├── CMake
│ │ │ │ ├── DefaultCXX.cmake
│ │ │ │ └── DefaultFortran.cmake
│ │ │ ├── fax4j_dll.sln
│ │ │ └── fax4j_dll.vcxproj.filters
│ │ │ └── exe
│ │ │ ├── fax4j_exe.vcxproj.user
│ │ │ ├── fax4jwrapper.cpp
│ │ │ ├── CMake
│ │ │ ├── DefaultCXX.cmake
│ │ │ └── DefaultFortran.cmake
│ │ │ ├── fax4j_exe.sln
│ │ │ └── fax4j_exe.vcxproj.filters
│ ├── java
│ │ └── org
│ │ │ └── fax4j
│ │ │ ├── spi
│ │ │ ├── email
│ │ │ │ ├── MailConnectionFactory.java
│ │ │ │ ├── MailAuthenticator.java
│ │ │ │ └── MailResourcesHolder.java
│ │ │ ├── comm
│ │ │ │ ├── CommPortConnectionFactory.java
│ │ │ │ ├── AbstractCommPortAdapter.java
│ │ │ │ ├── CommPortAdapter.java
│ │ │ │ ├── AbstractFax4JFaxModemAdapter.java
│ │ │ │ └── FaxModemAdapter.java
│ │ │ ├── hylafax
│ │ │ │ └── HylaFAXClientConnectionFactory.java
│ │ │ ├── http
│ │ │ │ ├── AbstractFaxJob2HTTPRequestConverter.java
│ │ │ │ ├── FaxJob2HTTPRequestConverter.java
│ │ │ │ ├── HTTPResponseHandler.java
│ │ │ │ ├── HTTPClientConfiguration.java
│ │ │ │ └── EmptyHTTPResponseHandler.java
│ │ │ ├── process
│ │ │ │ ├── ProcessOutputValidator.java
│ │ │ │ └── ProcessOutputHandler.java
│ │ │ └── FaxJobMonitor.java
│ │ │ ├── common
│ │ │ ├── ProviderImplementation.java
│ │ │ ├── Initializable.java
│ │ │ ├── FaxActionType.java
│ │ │ ├── Fax4JProvider.java
│ │ │ ├── Service.java
│ │ │ └── SimpleLogger.java
│ │ │ ├── bridge
│ │ │ ├── email
│ │ │ │ └── MailMessageParser.java
│ │ │ ├── http
│ │ │ │ └── HTTPRequestParser.java
│ │ │ ├── process
│ │ │ │ └── CommandLineArgumentsParser.java
│ │ │ ├── RequestParser.java
│ │ │ ├── ContextFaxBridge.java
│ │ │ └── AbstractFax4JBridge.java
│ │ │ ├── util
│ │ │ ├── Connection.java
│ │ │ ├── AbstractFax4JConnectionFactory.java
│ │ │ ├── AbstractCloseable.java
│ │ │ ├── ConnectionFactory.java
│ │ │ └── ProcessExecutor.java
│ │ │ ├── FaxMonitorEventListener.java
│ │ │ ├── Provider.java
│ │ │ ├── FaxException.java
│ │ │ ├── AbstractFaxEvent.java
│ │ │ └── FaxJobStatus.java
│ └── assembly
│ │ └── assembly_full.xml
├── test
│ └── java
│ │ ├── com
│ │ └── java4less
│ │ │ └── rfax
│ │ │ ├── FaxProducer.java
│ │ │ ├── TextFaxProducer.java
│ │ │ ├── PDFFaxProducer.java
│ │ │ └── FaxModem.java
│ │ └── org
│ │ └── fax4j
│ │ ├── ProductInfoTest.java
│ │ ├── common
│ │ └── LogLevelTest.java
│ │ ├── spi
│ │ ├── efax
│ │ │ └── EFaxMailFaxClientSpiTest.java
│ │ ├── faxage
│ │ │ └── FaxAgeMailFaxClientSpiTest.java
│ │ ├── metrofax
│ │ │ └── MetroFaxMailFaxClientSpiTest.java
│ │ ├── send2fax
│ │ │ └── Send2FaxMailFaxClientSpiTest.java
│ │ ├── extremefax
│ │ │ └── ExtremeFaxMailFaxClientSpiTest.java
│ │ ├── nextivafax
│ │ │ └── NextivafaxMailFaxClientSpiTest.java
│ │ └── http
│ │ │ └── HTTPResponseTest.java
│ │ ├── util
│ │ └── ProcessExecutorHelperTest.java
│ │ └── bridge
│ │ └── EmptyVendorPolicyTest.java
└── site
│ └── site.xml
├── docs
├── css
│ ├── site.css
│ └── print.css
├── images
│ ├── add.gif
│ ├── fix.gif
│ ├── rss.png
│ ├── close.gif
│ ├── expanded.gif
│ ├── external.png
│ ├── remove.gif
│ ├── update.gif
│ ├── collapsed.gif
│ ├── newwindow.png
│ ├── icon_help_sml.gif
│ ├── icon_info_sml.gif
│ ├── icon_error_sml.gif
│ ├── icon_success_sml.gif
│ ├── icon_warning_sml.gif
│ └── logos
│ │ ├── maven-feather.png
│ │ ├── build-by-maven-black.png
│ │ └── build-by-maven-white.png
├── cobertura
│ ├── images
│ │ ├── blank.png
│ │ ├── upsimple.png
│ │ └── downsimple.png
│ ├── js
│ │ └── popup.js
│ ├── css
│ │ ├── help.css
│ │ ├── tooltip.css
│ │ ├── sortabletable.css
│ │ └── source-viewer.css
│ ├── frame-sourcefiles-org.fax4j.spi.mac.html
│ ├── frame-sourcefiles-org.fax4j.spi.hoiio.html
│ ├── frame-sourcefiles-org.fax4j.spi.linux.html
│ ├── frame-sourcefiles-org.fax4j.spi.efax.html
│ ├── frame-sourcefiles-org.fax4j.spi.phaxio.html
│ ├── frame-sourcefiles-org.fax4j.spi.java4less.html
│ ├── frame-sourcefiles-org.fax4j.spi.faxage.html
│ ├── frame-sourcefiles-org.fax4j.spi.interfax.html
│ ├── frame-sourcefiles-org.fax4j.spi.metrofax.html
│ ├── frame-sourcefiles-org.fax4j.spi.send2fax.html
│ ├── frame-sourcefiles-org.fax4j.spi.extremefax.html
│ ├── frame-sourcefiles-org.fax4j.spi.nextivafax.html
│ ├── frame-sourcefiles-org.fax4j.spi.adapter.html
│ ├── frame-sourcefiles-org.fax4j.spi.vbs.html
│ ├── index.html
│ ├── frame-sourcefiles-org.fax4j.bridge.email.html
│ ├── frame-sourcefiles-org.fax4j.bridge.process.html
│ ├── help.html
│ ├── frame-sourcefiles-org.fax4j.bridge.http.html
│ ├── frame-sourcefiles-org.fax4j.spi.process.html
│ └── frame-sourcefiles-org.fax4j.spi.hylafax.html
├── apidocs
│ ├── package-list
│ ├── script.js
│ └── org
│ │ └── fax4j
│ │ ├── spi
│ │ ├── mac
│ │ │ └── package-frame.html
│ │ ├── hoiio
│ │ │ └── package-frame.html
│ │ ├── linux
│ │ │ └── package-frame.html
│ │ ├── efax
│ │ │ └── package-frame.html
│ │ ├── phaxio
│ │ │ └── package-frame.html
│ │ ├── faxage
│ │ │ └── package-frame.html
│ │ ├── interfax
│ │ │ └── package-frame.html
│ │ ├── metrofax
│ │ │ └── package-frame.html
│ │ ├── send2fax
│ │ │ └── package-frame.html
│ │ ├── extremefax
│ │ │ └── package-frame.html
│ │ ├── nextivafax
│ │ │ └── package-frame.html
│ │ ├── adapter
│ │ │ └── package-frame.html
│ │ └── java4less
│ │ │ └── package-frame.html
│ │ └── bridge
│ │ ├── email
│ │ └── package-frame.html
│ │ └── process
│ │ └── package-frame.html
├── testapidocs
│ ├── package-list
│ ├── script.js
│ ├── org
│ │ └── fax4j
│ │ │ ├── spi
│ │ │ ├── mac
│ │ │ │ └── package-frame.html
│ │ │ ├── efax
│ │ │ │ └── package-frame.html
│ │ │ ├── hoiio
│ │ │ │ └── package-frame.html
│ │ │ ├── linux
│ │ │ │ └── package-frame.html
│ │ │ ├── phaxio
│ │ │ │ └── package-frame.html
│ │ │ ├── adapter
│ │ │ │ └── package-frame.html
│ │ │ ├── faxage
│ │ │ │ └── package-frame.html
│ │ │ ├── java4less
│ │ │ │ └── package-frame.html
│ │ │ ├── interfax
│ │ │ │ └── package-frame.html
│ │ │ ├── metrofax
│ │ │ │ └── package-frame.html
│ │ │ ├── send2fax
│ │ │ │ └── package-frame.html
│ │ │ ├── extremefax
│ │ │ │ └── package-frame.html
│ │ │ ├── nextivafax
│ │ │ │ └── package-frame.html
│ │ │ ├── process
│ │ │ │ └── package-frame.html
│ │ │ ├── vbs
│ │ │ │ └── package-frame.html
│ │ │ ├── email
│ │ │ │ └── package-frame.html
│ │ │ ├── comm
│ │ │ │ └── package-frame.html
│ │ │ └── hylafax
│ │ │ │ └── package-frame.html
│ │ │ ├── bridge
│ │ │ ├── email
│ │ │ │ └── package-frame.html
│ │ │ ├── process
│ │ │ │ └── package-frame.html
│ │ │ └── http
│ │ │ │ └── package-frame.html
│ │ │ └── package-frame.html
│ └── com
│ │ └── java4less
│ │ └── rfax
│ │ └── package-frame.html
├── xref-test
│ ├── org
│ │ └── fax4j
│ │ │ ├── spi
│ │ │ ├── mac
│ │ │ │ └── package-frame.html
│ │ │ ├── hoiio
│ │ │ │ └── package-frame.html
│ │ │ ├── linux
│ │ │ │ └── package-frame.html
│ │ │ ├── efax
│ │ │ │ └── package-frame.html
│ │ │ ├── java4less
│ │ │ │ └── package-frame.html
│ │ │ ├── phaxio
│ │ │ │ └── package-frame.html
│ │ │ ├── adapter
│ │ │ │ └── package-frame.html
│ │ │ ├── faxage
│ │ │ │ └── package-frame.html
│ │ │ ├── interfax
│ │ │ │ └── package-frame.html
│ │ │ ├── metrofax
│ │ │ │ └── package-frame.html
│ │ │ ├── send2fax
│ │ │ │ └── package-frame.html
│ │ │ ├── extremefax
│ │ │ │ └── package-frame.html
│ │ │ ├── nextivafax
│ │ │ │ └── package-frame.html
│ │ │ ├── process
│ │ │ │ └── package-frame.html
│ │ │ ├── vbs
│ │ │ │ └── package-frame.html
│ │ │ ├── email
│ │ │ │ └── package-frame.html
│ │ │ └── comm
│ │ │ │ └── package-frame.html
│ │ │ └── bridge
│ │ │ ├── email
│ │ │ └── package-frame.html
│ │ │ ├── process
│ │ │ └── package-frame.html
│ │ │ └── http
│ │ │ └── package-frame.html
│ └── com
│ │ └── java4less
│ │ └── rfax
│ │ └── package-frame.html
└── xref
│ └── org
│ └── fax4j
│ ├── spi
│ ├── mac
│ │ └── package-frame.html
│ ├── hoiio
│ │ └── package-frame.html
│ ├── linux
│ │ └── package-frame.html
│ ├── phaxio
│ │ └── package-frame.html
│ ├── efax
│ │ └── package-frame.html
│ ├── faxage
│ │ └── package-frame.html
│ ├── interfax
│ │ └── package-frame.html
│ ├── metrofax
│ │ └── package-frame.html
│ ├── send2fax
│ │ └── package-frame.html
│ ├── extremefax
│ │ └── package-frame.html
│ ├── nextivafax
│ │ └── package-frame.html
│ ├── adapter
│ │ └── package-frame.html
│ └── java4less
│ │ └── package-frame.html
│ └── bridge
│ ├── email
│ └── package-frame.html
│ └── process
│ └── package-frame.html
├── .gitignore
├── .github
├── dependabot.yml
├── ISSUE_TEMPLATE
│ ├── feature_request.md
│ └── bug_report.md
├── workflows
│ ├── publish.yml
│ └── ci.yml
└── CONTRIBUTING.md
├── .editorconfig
└── Docs.html
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text eol=lf
2 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/winxp_cancel_fax.vbs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/winxp_resume_fax.vbs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/winxp_suspend_fax.vbs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/winxp_get_fax_job_status.vbs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/css/site.css:
--------------------------------------------------------------------------------
1 | /* You can override this file with your own styles */
--------------------------------------------------------------------------------
/docs/images/add.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/add.gif
--------------------------------------------------------------------------------
/docs/images/fix.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/fix.gif
--------------------------------------------------------------------------------
/docs/images/rss.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/rss.png
--------------------------------------------------------------------------------
/docs/images/close.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/close.gif
--------------------------------------------------------------------------------
/docs/images/expanded.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/expanded.gif
--------------------------------------------------------------------------------
/docs/images/external.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/external.png
--------------------------------------------------------------------------------
/docs/images/remove.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/remove.gif
--------------------------------------------------------------------------------
/docs/images/update.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/update.gif
--------------------------------------------------------------------------------
/docs/images/collapsed.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/collapsed.gif
--------------------------------------------------------------------------------
/docs/images/newwindow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/newwindow.png
--------------------------------------------------------------------------------
/docs/images/icon_help_sml.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/icon_help_sml.gif
--------------------------------------------------------------------------------
/docs/images/icon_info_sml.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/icon_info_sml.gif
--------------------------------------------------------------------------------
/docs/cobertura/images/blank.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/cobertura/images/blank.png
--------------------------------------------------------------------------------
/docs/images/icon_error_sml.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/icon_error_sml.gif
--------------------------------------------------------------------------------
/docs/cobertura/images/upsimple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/cobertura/images/upsimple.png
--------------------------------------------------------------------------------
/docs/images/icon_success_sml.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/icon_success_sml.gif
--------------------------------------------------------------------------------
/docs/images/icon_warning_sml.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/icon_warning_sml.gif
--------------------------------------------------------------------------------
/docs/cobertura/images/downsimple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/cobertura/images/downsimple.png
--------------------------------------------------------------------------------
/docs/images/logos/maven-feather.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/logos/maven-feather.png
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | fax4j.iml
3 | core
4 | hs_err*
5 | target/
6 | .classpath
7 | .project
8 | .settings/
9 | .vscode/
10 |
--------------------------------------------------------------------------------
/docs/images/logos/build-by-maven-black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/logos/build-by-maven-black.png
--------------------------------------------------------------------------------
/docs/images/logos/build-by-maven-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sagiegurari/fax4j/master/docs/images/logos/build-by-maven-white.png
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/bridge/email/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the API classes for the email2fax bridge.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/adapter/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the adapter fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/efax/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the efax based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/http/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the HTTP based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/hylafax/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the HylaFAX fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/mac/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the native Mac fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/bridge/http/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the API classes for a HTTP based web2fax bridge.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/common/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Contains common internal classes used by the fax4j library.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/email/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the email based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/faxage/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the faxage based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/hoiio/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the hoiio based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/linux/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the native linux fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/phaxio/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the phaxio based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/vbs/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the VB script based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/util/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides general utilities used internally by the fax4j library.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/interfax/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the interfax based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/java4less/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the java4less RFax fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/metrofax/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the metrofax based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/send2fax/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the send2fax based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/windows/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the native windows fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/extremefax/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the extreme fax based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/nextivafax/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the nextivafax based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/comm/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the COMM port communication based fax client SPI implementation.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/bridge/process/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the API classes for a standalone process based cli2fax bridge.
4 |
5 |
--------------------------------------------------------------------------------
/src/main/native/windows/dll/fax4j_dll.vcxproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/src/main/native/windows/exe/fax4j_exe.vcxproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: maven
4 | directory: "/"
5 | schedule:
6 | interval: daily
7 | time: '03:00'
8 | open-pull-requests-limit: 99
9 |
--------------------------------------------------------------------------------
/src/test/java/com/java4less/rfax/FaxProducer.java:
--------------------------------------------------------------------------------
1 | package com.java4less.rfax;
2 |
3 | /**
4 | * Test Class
5 | *
6 | * @author Sagie Gur-Ari
7 | */
8 | public interface FaxProducer {
9 | // empty
10 | }
--------------------------------------------------------------------------------
/docs/cobertura/js/popup.js:
--------------------------------------------------------------------------------
1 | var newwindow;
2 | function popupwindow(url)
3 | {
4 | newwindow=window.open(url,'name','height=500,width=500,resizable=yes,scrollbars=yes');
5 | if (window.focus) {
6 | newwindow.focus()
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/process/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the process based fax client SPI implementation.
4 | These implementations use external executables/scripts to invoke fax actions.
5 |
6 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 |
2 | root = true
3 |
4 | [*]
5 | charset = utf-8
6 | end_of_line = lf
7 | insert_final_newline = true
8 | trim_trailing_whitespace = true
9 | indent_style = space
10 | indent_size = 4
11 |
12 | [*.json]
13 | indent_size = 2
14 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | The fax4j library, is a standard on which java based applications can communicate with
4 | fax devices in order to submit new faxes or perform other related actions.
5 |
6 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/bridge/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the API classes for the fax client bridge.
4 | The fax4j bridge is used to transform applications to fax bridges for example an email server to provide email2fax functionality.
5 |
6 |
--------------------------------------------------------------------------------
/Docs.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ReadMe - fax4j
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/main/javadoc/org/fax4j/spi/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Provides the API classes for the fax client SPI.
4 | The class/interfaces defined in this package should only be used internally by the fax4j library
5 | or by classes implemeting a new fax client SPI.
6 |
7 |
--------------------------------------------------------------------------------
/src/main/native/windows/exe/fax4jwrapper.cpp:
--------------------------------------------------------------------------------
1 | /**
2 | * fax4j native layer.
3 | *
4 | * @author Sagie Gur-Ari
5 | */
6 |
7 | // fax4jwrapper.cpp : main project file.
8 |
9 | //fax4j dll API
10 | #include "fax4j.h"
11 |
12 | int main(int argc,const char* argv[])
13 | {
14 | return runCLI(argc,argv);
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/win2k_cancel_fax.vbs:
--------------------------------------------------------------------------------
1 |
2 | Dim faxJobIDStr
3 | faxJobIDStr="{1}"
4 | Dim faxJob
5 | faxJob=cint(faxJobIDStr)
6 | faxSetFaxJobStatusWin2k "{0}", faxJob, 1
7 |
8 | ''print output start
9 | ioPrintProcessOutputBeginText
10 |
11 | ''print output
12 | ioPrintText "fax.operation.done=true"
13 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/win2k_resume_fax.vbs:
--------------------------------------------------------------------------------
1 |
2 | Dim faxJobIDStr
3 | faxJobIDStr="{1}"
4 | Dim faxJob
5 | faxJob=cint(faxJobIDStr)
6 | faxSetFaxJobStatusWin2k "{0}", faxJob, 3
7 |
8 | ''print output start
9 | ioPrintProcessOutputBeginText
10 |
11 | ''print output
12 | ioPrintText "fax.operation.done=true"
13 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/win2k_suspend_fax.vbs:
--------------------------------------------------------------------------------
1 |
2 | Dim faxJobIDStr
3 | faxJobIDStr="{1}"
4 | Dim faxJob
5 | faxJob=cint(faxJobIDStr)
6 | faxSetFaxJobStatusWin2k "{0}", faxJob, 2
7 |
8 | ''print output start
9 | ioPrintProcessOutputBeginText
10 |
11 | ''print output
12 | ioPrintText "fax.operation.done=true"
13 |
--------------------------------------------------------------------------------
/docs/cobertura/css/help.css:
--------------------------------------------------------------------------------
1 | dl {
2 | float: left;
3 | width: 100%;
4 | }
5 |
6 | dt {
7 | border-top: 1px solid #808080;
8 | float: left;
9 | font-weight: bold;
10 | margin: 0;
11 | padding: 1em;
12 | width: 20%;
13 | }
14 |
15 | dd {
16 | border-top: 1px solid #808080;
17 | float: left;
18 | font-style: italic;
19 | margin: 0;
20 | padding: 1em;
21 | width: 60%;
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/email/MailConnectionFactory.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.email;
2 |
3 | import org.fax4j.util.ConnectionFactory;
4 |
5 | /**
6 | * This class defines the mail connection factory.
7 | *
8 | * @author Sagie Gur-Ari
9 | * @version 1.0
10 | * @since 0.39a
11 | */
12 | public interface MailConnectionFactory extends ConnectionFactory {
13 | // empty (everything defined in parent interfaces)
14 | }
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/win2k_get_fax_job_status.vbs:
--------------------------------------------------------------------------------
1 |
2 | Dim faxJobIDStr
3 | faxJobIDStr="{1}"
4 | Dim faxJob
5 | faxJob=clng(faxJobIDStr)
6 | Dim status
7 | status=faxGetFaxJobStatusWin2k("{0}",faxJob)
8 |
9 | ''print output start
10 | ioPrintProcessOutputBeginText
11 |
12 | ''print output
13 | ioPrintText "fax.operation.done=true"
14 | Dim output
15 | output=utilStringConcat("fax.job.status=",status)
16 | ioPrintText output
17 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/comm/CommPortConnectionFactory.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.comm;
2 |
3 | import org.fax4j.util.ConnectionFactory;
4 |
5 | /**
6 | * This class defines the COMM port connection factory.
7 | *
8 | * @author Sagie Gur-Ari
9 | * @version 1.02
10 | * @since 0.34
11 | */
12 | public interface CommPortConnectionFactory extends ConnectionFactory {
13 | // empty (everything defined in parent interfaces)
14 | }
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/ProductInfoTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j;
2 |
3 | import org.junit.Test;
4 |
5 | /**
6 | * Test Class
7 | *
8 | * @author Sagie Gur-Ari
9 | */
10 | public class ProductInfoTest {
11 | /**
12 | * Test
13 | *
14 | * @throws Exception
15 | * Any exception
16 | */
17 | @Test
18 | public void printProductInfoTest() throws Exception {
19 | ProductInfo.printProductInfo();
20 | }
21 | }
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature Request
3 | about: Suggest an idea for this project
4 | title: ''
5 | labels: ''
6 | assignees: sagiegurari
7 |
8 | ---
9 |
10 | ### Feature Description
11 |
12 |
13 | ### Describe The Solution You'd Like
14 |
15 |
16 | ### Code Sample
17 |
18 | ```java
19 | // paste code here
20 | ```
21 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/common/ProviderImplementation.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.common;
2 |
3 | import org.fax4j.Provider;
4 |
5 | /**
6 | * Defines the methods for classes that have a provider.
7 | *
8 | * @author Sagie Gur-Ari
9 | * @version 1.0
10 | * @since 0.34
11 | */
12 | public interface ProviderImplementation {
13 | /**
14 | * This function returns the provider.
15 | *
16 | * @return The provider
17 | */
18 | Provider getProvider();
19 | }
20 |
--------------------------------------------------------------------------------
/src/test/java/com/java4less/rfax/TextFaxProducer.java:
--------------------------------------------------------------------------------
1 | package com.java4less.rfax;
2 |
3 | import java.awt.Image;
4 |
5 | /**
6 | * Test Class
7 | *
8 | * @author Sagie Gur-Ari
9 | */
10 | public class TextFaxProducer implements FaxProducer {
11 | /** Class member */
12 | public String text;
13 | /** Class member */
14 | public Image pageImage;
15 |
16 | /**
17 | * Test method.
18 | */
19 | public void prepare() {
20 | // empty
21 | }
22 | }
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug Report
3 | about: Create a report to help us improve
4 | title: ''
5 | labels: ''
6 | assignees: sagiegurari
7 |
8 | ---
9 |
10 | ### Describe The Bug
11 |
12 |
13 | ### To Reproduce
14 |
15 |
16 | ### Error Stack
17 |
18 | ```console
19 | The error stack trace
20 | ```
21 |
22 | ### Code Sample
23 |
24 | ```java
25 | // paste code here
26 | ```
27 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/hylafax/HylaFAXClientConnectionFactory.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.hylafax;
2 |
3 | import gnu.hylafax.HylaFAXClient;
4 | import org.fax4j.util.ConnectionFactory;
5 |
6 | /**
7 | * This interface defines the HaylaFAX connection factory.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.01
11 | * @since 0.39a
12 | */
13 | public interface HylaFAXClientConnectionFactory extends ConnectionFactory {
14 | // empty (everything defined in parent interfaces)
15 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/bridge/email/MailMessageParser.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.bridge.email;
2 |
3 | import javax.mail.Message;
4 | import org.fax4j.bridge.RequestParser;
5 |
6 | /**
7 | * This interface defines the mail message parser used to extract the fax job and file info from the email data.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.0
11 | * @since 0.41.3
12 | */
13 | public interface MailMessageParser extends RequestParser {
14 | // all capabilities defined in super interface
15 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/bridge/http/HTTPRequestParser.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.bridge.http;
2 |
3 | import org.fax4j.bridge.RequestParser;
4 | import org.fax4j.spi.http.HTTPRequest;
5 |
6 | /**
7 | * This interface defines the HTTP parser used to extract the fax job and file info from the HTTP request.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.01
11 | * @since 0.40.6
12 | */
13 | public interface HTTPRequestParser extends RequestParser {
14 | // all capabilities defined in super interface
15 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/bridge/process/CommandLineArgumentsParser.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.bridge.process;
2 |
3 | import org.fax4j.bridge.RequestParser;
4 |
5 | /**
6 | * This interface defines the command line parser used to extract the fax job and file info from the command line
7 | * arguments.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.01
11 | * @since 0.40.6
12 | */
13 | public interface CommandLineArgumentsParser extends RequestParser {
14 | // all capabilities defined in super interface
15 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/common/Initializable.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.common;
2 |
3 | import java.util.Map;
4 |
5 | /**
6 | * Common interface for initializable components.
7 | *
8 | * @author Sagie Gur-Ari
9 | * @version 1.0
10 | * @since 0.41.3
11 | */
12 | public interface Initializable {
13 | /**
14 | * This function initializes the component.
15 | *
16 | * @param configuration
17 | * The component configuration
18 | */
19 | void initialize(Map configuration);
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/util/Connection.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.util;
2 |
3 | import java.io.Closeable;
4 |
5 | /**
6 | * This class defines basic common connection capabilities.
7 | *
8 | * @param
9 | * The resource type
10 | * @author Sagie Gur-Ari
11 | * @version 1.01
12 | * @since 0.1
13 | */
14 | public interface Connection extends Closeable {
15 | /**
16 | * This function returns the resource held by the connection.
17 | *
18 | * @return The resource held by the connection
19 | */
20 | T getResource();
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/comm/AbstractCommPortAdapter.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.comm;
2 |
3 | import org.fax4j.util.AbstractCloseable;
4 |
5 | /**
6 | * This class provides partial implementation of the basic and common adapter capabilities.
7 | *
8 | * @author Sagie Gur-Ari
9 | * @version 1.0
10 | * @since 0.39a
11 | */
12 | public abstract class AbstractCommPortAdapter extends AbstractCloseable implements CommPortAdapter {
13 | /**
14 | * This is the class constructor.
15 | */
16 | protected AbstractCommPortAdapter() {
17 | super();
18 | }
19 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/common/FaxActionType.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.common;
2 |
3 | /**
4 | * This is the fax action type enum.
5 | *
6 | * @author Sagie Gur-Ari
7 | * @version 1.01
8 | * @since 0.26
9 | */
10 | public enum FaxActionType {
11 | /** The submit fax job action type */
12 | SUBMIT_FAX_JOB,
13 | /** The suspend fax job action type */
14 | SUSPEND_FAX_JOB,
15 | /** The resume fax job action type */
16 | RESUME_FAX_JOB,
17 | /** The cancel fax job action type */
18 | CANCEL_FAX_JOB,
19 | /** The get fax job status action type */
20 | GET_FAX_JOB_STATUS
21 | }
--------------------------------------------------------------------------------
/src/test/java/com/java4less/rfax/PDFFaxProducer.java:
--------------------------------------------------------------------------------
1 | package com.java4less.rfax;
2 |
3 | import java.awt.Image;
4 |
5 | /**
6 | * Test Class
7 | *
8 | * @author Sagie Gur-Ari
9 | */
10 | public class PDFFaxProducer implements FaxProducer {
11 | /** Class member */
12 | public Image pageImage;
13 |
14 | /**
15 | * Test method.
16 | *
17 | * @param value
18 | * Any value
19 | */
20 | public void setPDFFile(String value) {
21 | if (value == null) {
22 | throw new IllegalArgumentException("PDF file is null.");
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/common/Fax4JProvider.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.common;
2 |
3 | import org.fax4j.Provider;
4 |
5 | /**
6 | * This is the internal provider used by the internal fax4j SPI.
7 | *
8 | * @author Sagie Gur-Ari
9 | * @version 1.01
10 | * @since 0.17
11 | */
12 | public final class Fax4JProvider extends ProviderImpl {
13 | /** The fax4j provider */
14 | public static final Provider FAX4J_PROVIDER = new Fax4JProvider();
15 |
16 | /**
17 | * This is the class constructor.
18 | */
19 | public Fax4JProvider() {
20 | super("fax4j", "Internal fax4j SPI.");
21 | }
22 | }
--------------------------------------------------------------------------------
/src/site/site.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/FaxMonitorEventListener.java:
--------------------------------------------------------------------------------
1 | package org.fax4j;
2 |
3 | import java.util.EventListener;
4 |
5 | /**
6 | * This interface defines the fax monitor event listener.
7 | * The listener picks up remote events based on changes done on the remote fax modem.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.0
11 | * @since 0.40.2
12 | */
13 | public interface FaxMonitorEventListener extends EventListener {
14 | /**
15 | * This function is invoked when the fax job status is changed.
16 | *
17 | * @param event
18 | * The fax event
19 | */
20 | void faxJobStatusChanged(FaxMonitorEvent event);
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/Provider.java:
--------------------------------------------------------------------------------
1 | package org.fax4j;
2 |
3 | /**
4 | * This is the provider interface.
5 | * Each SPI enables access to the SPI provider by returning an instance of this interface.
6 | *
7 | * @author Sagie Gur-Ari
8 | * @version 1.0
9 | * @since 0.17
10 | */
11 | public interface Provider {
12 | /**
13 | * This function returns the provider name, for example mycompany.
14 | *
15 | * @return The provider name
16 | */
17 | String getName();
18 |
19 | /**
20 | * This function returns the provider description.
21 | *
22 | * @return The provider description
23 | */
24 | String getDescription();
25 | }
26 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/common/LogLevelTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.common;
2 |
3 | import org.junit.Assert;
4 | import org.junit.Test;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class LogLevelTest {
12 | /**
13 | * Test
14 | *
15 | * @throws Exception
16 | * Any exception
17 | */
18 | @Test
19 | public void logLevelTest() throws Exception {
20 | Assert.assertTrue(LogLevel.NONE.getValue() > LogLevel.ERROR.getValue());
21 | Assert.assertTrue(LogLevel.ERROR.getValue() > LogLevel.INFO.getValue());
22 | Assert.assertTrue(LogLevel.INFO.getValue() > LogLevel.DEBUG.getValue());
23 | }
24 | }
--------------------------------------------------------------------------------
/docs/apidocs/package-list:
--------------------------------------------------------------------------------
1 | org.fax4j
2 | org.fax4j.bridge
3 | org.fax4j.bridge.email
4 | org.fax4j.bridge.http
5 | org.fax4j.bridge.process
6 | org.fax4j.common
7 | org.fax4j.spi
8 | org.fax4j.spi.adapter
9 | org.fax4j.spi.comm
10 | org.fax4j.spi.efax
11 | org.fax4j.spi.email
12 | org.fax4j.spi.extremefax
13 | org.fax4j.spi.faxage
14 | org.fax4j.spi.hoiio
15 | org.fax4j.spi.http
16 | org.fax4j.spi.hylafax
17 | org.fax4j.spi.interfax
18 | org.fax4j.spi.java4less
19 | org.fax4j.spi.linux
20 | org.fax4j.spi.mac
21 | org.fax4j.spi.metrofax
22 | org.fax4j.spi.nextivafax
23 | org.fax4j.spi.phaxio
24 | org.fax4j.spi.process
25 | org.fax4j.spi.send2fax
26 | org.fax4j.spi.vbs
27 | org.fax4j.spi.windows
28 | org.fax4j.util
29 |
--------------------------------------------------------------------------------
/src/main/native/windows/dll/CMake/DefaultCXX.cmake:
--------------------------------------------------------------------------------
1 | include("${CMAKE_CURRENT_LIST_DIR}/Default.cmake")
2 |
3 | set_config_specific_property("OUTPUT_DIRECTORY" "${CMAKE_SOURCE_DIR}$<$>:/${CMAKE_VS_PLATFORM_NAME}>/${PROPS_CONFIG}")
4 |
5 | if(MSVC)
6 | create_property_reader("DEFAULT_CXX_EXCEPTION_HANDLING")
7 | create_property_reader("DEFAULT_CXX_DEBUG_INFORMATION_FORMAT")
8 |
9 | set_target_properties("${PROPS_TARGET}" PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>DLL")
10 | set_config_specific_property("DEFAULT_CXX_EXCEPTION_HANDLING" "/EHsc")
11 | set_config_specific_property("DEFAULT_CXX_DEBUG_INFORMATION_FORMAT" "/Zi")
12 | endif()
13 |
--------------------------------------------------------------------------------
/src/main/native/windows/exe/CMake/DefaultCXX.cmake:
--------------------------------------------------------------------------------
1 | include("${CMAKE_CURRENT_LIST_DIR}/Default.cmake")
2 |
3 | set_config_specific_property("OUTPUT_DIRECTORY" "${CMAKE_SOURCE_DIR}$<$>:/${CMAKE_VS_PLATFORM_NAME}>/${PROPS_CONFIG}")
4 |
5 | if(MSVC)
6 | create_property_reader("DEFAULT_CXX_EXCEPTION_HANDLING")
7 | create_property_reader("DEFAULT_CXX_DEBUG_INFORMATION_FORMAT")
8 |
9 | set_target_properties("${PROPS_TARGET}" PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>DLL")
10 | set_config_specific_property("DEFAULT_CXX_EXCEPTION_HANDLING" "/EHsc")
11 | set_config_specific_property("DEFAULT_CXX_DEBUG_INFORMATION_FORMAT" "/Zi")
12 | endif()
13 |
--------------------------------------------------------------------------------
/.github/workflows/publish.yml:
--------------------------------------------------------------------------------
1 | name: Publish
2 | on:
3 | repository_dispatch:
4 | types: [publish]
5 | jobs:
6 | release:
7 | name: Release
8 | runs-on: ubuntu-latest
9 | steps:
10 | - name: Check out Git repository
11 | uses: actions/checkout@v2
12 | - name: Set up Maven Central Repository
13 | uses: actions/setup-java@v1
14 | with:
15 | java-version: 1.8
16 | server-id: ossrh
17 | server-username: MAVEN_USERNAME
18 | server-password: MAVEN_PASSWORD
19 | - name: Publish package
20 | run: mvn -B deploy
21 | env:
22 | MAVEN_USERNAME: ${{ secrets.nexus_username }}
23 | MAVEN_PASSWORD: ${{ secrets.nexus_password }}
24 |
--------------------------------------------------------------------------------
/docs/testapidocs/package-list:
--------------------------------------------------------------------------------
1 | com.java4less.rfax
2 | org.fax4j
3 | org.fax4j.bridge
4 | org.fax4j.bridge.email
5 | org.fax4j.bridge.http
6 | org.fax4j.bridge.process
7 | org.fax4j.common
8 | org.fax4j.spi
9 | org.fax4j.spi.adapter
10 | org.fax4j.spi.comm
11 | org.fax4j.spi.efax
12 | org.fax4j.spi.email
13 | org.fax4j.spi.extremefax
14 | org.fax4j.spi.faxage
15 | org.fax4j.spi.hoiio
16 | org.fax4j.spi.http
17 | org.fax4j.spi.hylafax
18 | org.fax4j.spi.interfax
19 | org.fax4j.spi.java4less
20 | org.fax4j.spi.linux
21 | org.fax4j.spi.mac
22 | org.fax4j.spi.metrofax
23 | org.fax4j.spi.nextivafax
24 | org.fax4j.spi.phaxio
25 | org.fax4j.spi.process
26 | org.fax4j.spi.send2fax
27 | org.fax4j.spi.vbs
28 | org.fax4j.spi.windows
29 | org.fax4j.test
30 | org.fax4j.util
31 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/common/Service.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.common;
2 |
3 | /**
4 | * Common interface for services.
5 | * Services have common initialization and setup process.
6 | *
7 | * @author Sagie Gur-Ari
8 | * @version 1.01
9 | * @since 0.42.4
10 | */
11 | public interface Service extends ProviderImplementation, Initializable, ConfigurationHolder {
12 | /***
13 | * This function sets the property part value.
14 | * This function should be called before the initialize method.
15 | * See org.fax4j.common.ConfigurationHolder.getPropertyPart() for more info.
16 | *
17 | * @param propertyPart
18 | * The property part value
19 | */
20 | void setPropertyPart(String propertyPart);
21 | }
22 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.mac.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.mac
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/spi/efax/EFaxMailFaxClientSpiTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.efax;
2 |
3 | import org.fax4j.spi.efax.EFaxMailFaxClientSpi.FaxClientSpiConfigurationConstants;
4 | import org.fax4j.test.TestUtil.PredefinedMailFaxClientSpiTest;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class EFaxMailFaxClientSpiTest extends PredefinedMailFaxClientSpiTest {
12 | /**
13 | * This is the class constructor.
14 | */
15 | public EFaxMailFaxClientSpiTest() {
16 | super(EFaxMailFaxClientSpi.class.getName(),
17 | FaxClientSpiConfigurationConstants.MAIL_ADDRESS_TEMPLATE_VALUE.toString(),
18 | FaxClientSpiConfigurationConstants.MAIL_SUBJECT_TEMPLATE_VALUE.toString());
19 | }
20 | }
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.hoiio.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.hoiio
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.linux.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.linux
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/http/AbstractFaxJob2HTTPRequestConverter.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.http;
2 |
3 | import org.fax4j.Provider;
4 | import org.fax4j.common.AbstractService;
5 |
6 | /**
7 | * This class provides partial implementation of the fax job to HTTP request converter interface.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.0
11 | * @since 0.42.4
12 | */
13 | public abstract class AbstractFaxJob2HTTPRequestConverter extends AbstractService
14 | implements FaxJob2HTTPRequestConverter {
15 | /**
16 | * This is the default constructor.
17 | *
18 | * @param provider
19 | * The provider
20 | */
21 | public AbstractFaxJob2HTTPRequestConverter(Provider provider) {
22 | super(provider);
23 | }
24 | }
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.efax.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.efax
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.phaxio.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.phaxio
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.java4less.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.java4less
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/spi/faxage/FaxAgeMailFaxClientSpiTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.faxage;
2 |
3 | import org.fax4j.spi.faxage.FaxAgeMailFaxClientSpi.FaxClientSpiConfigurationConstants;
4 | import org.fax4j.test.TestUtil.PredefinedMailFaxClientSpiTest;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class FaxAgeMailFaxClientSpiTest extends PredefinedMailFaxClientSpiTest {
12 | /**
13 | * This is the class constructor.
14 | */
15 | public FaxAgeMailFaxClientSpiTest() {
16 | super(FaxAgeMailFaxClientSpi.class.getName(),
17 | FaxClientSpiConfigurationConstants.MAIL_ADDRESS_TEMPLATE_VALUE.toString(),
18 | FaxClientSpiConfigurationConstants.MAIL_SUBJECT_TEMPLATE_VALUE.toString());
19 | }
20 | }
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.faxage.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.faxage
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.interfax.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.interfax
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.metrofax.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.metrofax
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.send2fax.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.send2fax
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/spi/metrofax/MetroFaxMailFaxClientSpiTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.metrofax;
2 |
3 | import org.fax4j.spi.metrofax.MetroFaxMailFaxClientSpi.FaxClientSpiConfigurationConstants;
4 | import org.fax4j.test.TestUtil.PredefinedMailFaxClientSpiTest;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class MetroFaxMailFaxClientSpiTest extends PredefinedMailFaxClientSpiTest {
12 | /**
13 | * This is the class constructor.
14 | */
15 | public MetroFaxMailFaxClientSpiTest() {
16 | super(MetroFaxMailFaxClientSpi.class.getName(),
17 | FaxClientSpiConfigurationConstants.MAIL_ADDRESS_TEMPLATE_VALUE.toString(),
18 | FaxClientSpiConfigurationConstants.MAIL_SUBJECT_TEMPLATE_VALUE.toString());
19 | }
20 | }
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/spi/send2fax/Send2FaxMailFaxClientSpiTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.send2fax;
2 |
3 | import org.fax4j.spi.send2fax.Send2FaxMailFaxClientSpi.FaxClientSpiConfigurationConstants;
4 | import org.fax4j.test.TestUtil.PredefinedMailFaxClientSpiTest;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class Send2FaxMailFaxClientSpiTest extends PredefinedMailFaxClientSpiTest {
12 | /**
13 | * This is the class constructor.
14 | */
15 | public Send2FaxMailFaxClientSpiTest() {
16 | super(Send2FaxMailFaxClientSpi.class.getName(),
17 | FaxClientSpiConfigurationConstants.MAIL_ADDRESS_TEMPLATE_VALUE.toString(),
18 | FaxClientSpiConfigurationConstants.MAIL_SUBJECT_TEMPLATE_VALUE.toString());
19 | }
20 | }
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.extremefax.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.extremefax
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.nextivafax.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.nextivafax
12 |
13 |
14 | Classes
15 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/spi/extremefax/ExtremeFaxMailFaxClientSpiTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.extremefax;
2 |
3 | import org.fax4j.spi.extremefax.ExtremeFaxMailFaxClientSpi.FaxClientSpiConfigurationConstants;
4 | import org.fax4j.test.TestUtil.PredefinedMailFaxClientSpiTest;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class ExtremeFaxMailFaxClientSpiTest extends PredefinedMailFaxClientSpiTest {
12 | /**
13 | * This is the class constructor.
14 | */
15 | public ExtremeFaxMailFaxClientSpiTest() {
16 | super(ExtremeFaxMailFaxClientSpi.class.getName(),
17 | FaxClientSpiConfigurationConstants.MAIL_ADDRESS_TEMPLATE_VALUE.toString(),
18 | FaxClientSpiConfigurationConstants.MAIL_SUBJECT_TEMPLATE_VALUE.toString());
19 | }
20 | }
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/spi/nextivafax/NextivafaxMailFaxClientSpiTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.nextivafax;
2 |
3 | import org.fax4j.spi.nextivafax.NextivafaxMailFaxClientSpi.FaxClientSpiConfigurationConstants;
4 | import org.fax4j.test.TestUtil.PredefinedMailFaxClientSpiTest;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class NextivafaxMailFaxClientSpiTest extends PredefinedMailFaxClientSpiTest {
12 | /**
13 | * This is the class constructor.
14 | */
15 | public NextivafaxMailFaxClientSpiTest() {
16 | super(NextivafaxMailFaxClientSpi.class.getName(),
17 | FaxClientSpiConfigurationConstants.MAIL_ADDRESS_TEMPLATE_VALUE.toString(),
18 | FaxClientSpiConfigurationConstants.MAIL_SUBJECT_TEMPLATE_VALUE.toString());
19 | }
20 | }
--------------------------------------------------------------------------------
/src/main/native/windows/dll/CMake/DefaultFortran.cmake:
--------------------------------------------------------------------------------
1 | include("${CMAKE_CURRENT_LIST_DIR}/Default.cmake")
2 |
3 | set_config_specific_property("OUTPUT_DIRECTORY" "${CMAKE_CURRENT_SOURCE_DIR}$<$>:/${CMAKE_VS_PLATFORM_NAME}>/${PROPS_CONFIG}")
4 |
5 | get_target_property(${PROPS_TARGET}_BINARY_DIR ${PROPS_TARGET} BINARY_DIR)
6 | set(DEFAULT_FORTRAN_MODULES_DIR "${${PROPS_TARGET}_BINARY_DIR}/${PROPS_TARGET}.Modules.dir")
7 | set_target_properties(${PROPS_TARGET} PROPERTIES Fortran_MODULE_DIRECTORY ${DEFAULT_FORTRAN_MODULES_DIR})
8 |
9 | if(${CMAKE_GENERATOR} MATCHES "Visual Studio")
10 | # Hack for visual studio generator (https://gitlab.kitware.com/cmake/cmake/issues/19552)
11 | add_custom_command(TARGET ${PROPS_TARGET} PRE_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory $/${CMAKE_CFG_INTDIR})
12 | endif()
--------------------------------------------------------------------------------
/src/main/native/windows/exe/CMake/DefaultFortran.cmake:
--------------------------------------------------------------------------------
1 | include("${CMAKE_CURRENT_LIST_DIR}/Default.cmake")
2 |
3 | set_config_specific_property("OUTPUT_DIRECTORY" "${CMAKE_CURRENT_SOURCE_DIR}$<$>:/${CMAKE_VS_PLATFORM_NAME}>/${PROPS_CONFIG}")
4 |
5 | get_target_property(${PROPS_TARGET}_BINARY_DIR ${PROPS_TARGET} BINARY_DIR)
6 | set(DEFAULT_FORTRAN_MODULES_DIR "${${PROPS_TARGET}_BINARY_DIR}/${PROPS_TARGET}.Modules.dir")
7 | set_target_properties(${PROPS_TARGET} PROPERTIES Fortran_MODULE_DIRECTORY ${DEFAULT_FORTRAN_MODULES_DIR})
8 |
9 | if(${CMAKE_GENERATOR} MATCHES "Visual Studio")
10 | # Hack for visual studio generator (https://gitlab.kitware.com/cmake/cmake/issues/19552)
11 | add_custom_command(TARGET ${PROPS_TARGET} PRE_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory $/${CMAKE_CFG_INTDIR})
12 | endif()
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/comm/CommPortAdapter.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.comm;
2 |
3 | import java.io.Closeable;
4 | import java.io.InputStream;
5 | import java.io.OutputStream;
6 |
7 | /**
8 | * This class defines the COMM port adapter.
9 | *
10 | * @author Sagie Gur-Ari
11 | * @version 1.0
12 | * @since 0.39a
13 | */
14 | public interface CommPortAdapter extends Closeable {
15 | /**
16 | * Returns true if the adapter is valid and open.
17 | *
18 | * @return Ttrue if the adapter is valid and open
19 | */
20 | boolean isOpen();
21 |
22 | /**
23 | * This function returns the input stream to the COMM port.
24 | *
25 | * @return The input stream
26 | */
27 | InputStream getInputStream();
28 |
29 | /**
30 | * This function returns the output stream to the COMM port.
31 | *
32 | * @return The output stream
33 | */
34 | OutputStream getOutputStream();
35 | }
36 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/util/AbstractFax4JConnectionFactory.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.util;
2 |
3 | import org.fax4j.Provider;
4 | import org.fax4j.common.Fax4JProvider;
5 |
6 | /**
7 | * This class provides the basic common connection factory capabilities. This class should only be used by internal
8 | * fax4j connection factories.
9 | *
10 | * @param
11 | * The resource type
12 | * @author Sagie Gur-Ari
13 | * @version 1.0
14 | * @since 0.39a
15 | */
16 | public abstract class AbstractFax4JConnectionFactory extends AbstractConnectionFactory {
17 | /**
18 | * This is the class constructor.
19 | */
20 | public AbstractFax4JConnectionFactory() {
21 | super();
22 | }
23 |
24 | /**
25 | * This function returns the provider.
26 | *
27 | * @return The provider
28 | */
29 | public final Provider getProvider() {
30 | return Fax4JProvider.FAX4J_PROVIDER;
31 | }
32 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/FaxException.java:
--------------------------------------------------------------------------------
1 | package org.fax4j;
2 |
3 | /**
4 | * A general exception class used by the fax4j framework.
5 | *
6 | * @author Sagie Gur-Ari
7 | * @version 1.03
8 | * @since 0.1
9 | */
10 | public class FaxException extends RuntimeException {
11 | /** Default serialization UID */
12 | private static final long serialVersionUID = 1L;
13 |
14 | /**
15 | * This is the default constructor.
16 | *
17 | * @param message
18 | * The error message
19 | */
20 | public FaxException(String message) {
21 | super(message);
22 | }
23 |
24 | /**
25 | * This is the default constructor.
26 | *
27 | * @param message
28 | * The error message
29 | * @param cause
30 | * The root cause of the exception
31 | */
32 | public FaxException(String message, Throwable cause) {
33 | super(message, cause);
34 | }
35 | }
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.adapter.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.adapter
12 |
13 |
14 | Classes
15 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/apidocs/script.js:
--------------------------------------------------------------------------------
1 | function show(type)
2 | {
3 | count = 0;
4 | for (var key in methods) {
5 | var row = document.getElementById(key);
6 | if ((methods[key] & type) != 0) {
7 | row.style.display = '';
8 | row.className = (count++ % 2) ? rowColor : altColor;
9 | }
10 | else
11 | row.style.display = 'none';
12 | }
13 | updateTabs(type);
14 | }
15 |
16 | function updateTabs(type)
17 | {
18 | for (var value in tabs) {
19 | var sNode = document.getElementById(tabs[value][0]);
20 | var spanNode = sNode.firstChild;
21 | if (value == type) {
22 | sNode.className = activeTableTab;
23 | spanNode.innerHTML = tabs[value][1];
24 | }
25 | else {
26 | sNode.className = tableTab;
27 | spanNode.innerHTML = "" + tabs[value][1] + " ";
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/comm/AbstractFax4JFaxModemAdapter.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.comm;
2 |
3 | import org.fax4j.Provider;
4 | import org.fax4j.common.Fax4JProvider;
5 |
6 | /**
7 | * This class provides partial/common functionlity of the fax modem adapter interface.
8 | * This class should be used only by internal fax4j implementation and not by implementations written by external
9 | * vendors.
10 | *
11 | * @author Sagie Gur-Ari
12 | * @version 1.0
13 | * @since 0.38
14 | */
15 | public abstract class AbstractFax4JFaxModemAdapter extends AbstractFaxModemAdapter {
16 | /**
17 | * This is the class constructor.
18 | */
19 | public AbstractFax4JFaxModemAdapter() {
20 | super();
21 | }
22 |
23 | /**
24 | * This function returns the provider.
25 | *
26 | * @return The provider
27 | */
28 | public final Provider getProvider() {
29 | return Fax4JProvider.FAX4J_PROVIDER;
30 | }
31 | }
--------------------------------------------------------------------------------
/docs/testapidocs/script.js:
--------------------------------------------------------------------------------
1 | function show(type)
2 | {
3 | count = 0;
4 | for (var key in methods) {
5 | var row = document.getElementById(key);
6 | if ((methods[key] & type) != 0) {
7 | row.style.display = '';
8 | row.className = (count++ % 2) ? rowColor : altColor;
9 | }
10 | else
11 | row.style.display = 'none';
12 | }
13 | updateTabs(type);
14 | }
15 |
16 | function updateTabs(type)
17 | {
18 | for (var value in tabs) {
19 | var sNode = document.getElementById(tabs[value][0]);
20 | var spanNode = sNode.firstChild;
21 | if (value == type) {
22 | sNode.className = activeTableTab;
23 | spanNode.innerHTML = tabs[value][1];
24 | }
25 | else {
26 | sNode.className = tableTab;
27 | spanNode.innerHTML = "" + tabs[value][1] + " ";
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/main/native/windows/exe/fax4j_exe.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 11.00
3 | # Visual C++ Express 2010
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fax4j_exe", "fax4j_exe.vcxproj", "{84CC2BEF-35A7-45A7-9090-A7802C424783}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|Win32 = Debug|Win32
9 | Release|Win32 = Release|Win32
10 | EndGlobalSection
11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
12 | {84CC2BEF-35A7-45A7-9090-A7802C424783}.Debug|Win32.ActiveCfg = Debug|Win32
13 | {84CC2BEF-35A7-45A7-9090-A7802C424783}.Debug|Win32.Build.0 = Debug|Win32
14 | {84CC2BEF-35A7-45A7-9090-A7802C424783}.Release|Win32.ActiveCfg = Release|Win32
15 | {84CC2BEF-35A7-45A7-9090-A7802C424783}.Release|Win32.Build.0 = Release|Win32
16 | EndGlobalSection
17 | GlobalSection(SolutionProperties) = preSolution
18 | HideSolutionNode = FALSE
19 | EndGlobalSection
20 | EndGlobal
21 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/AbstractFaxEvent.java:
--------------------------------------------------------------------------------
1 | package org.fax4j;
2 |
3 | import java.util.EventObject;
4 |
5 | /**
6 | * Base class for all fax4j events.
7 | *
8 | * @author Sagie Gur-Ari
9 | * @version 1.0
10 | * @since 0.40.5
11 | */
12 | public abstract class AbstractFaxEvent extends EventObject {
13 | /** The fax job */
14 | private final transient FaxJob FAX_JOB;
15 | /** Default serialization UID */
16 | private static final long serialVersionUID = 1L;
17 |
18 | /**
19 | * This is the class constructor.
20 | *
21 | * @param faxJob
22 | * The fax job
23 | */
24 | public AbstractFaxEvent(FaxJob faxJob) {
25 | super(faxJob);
26 |
27 | // get fax job
28 | this.FAX_JOB = faxJob;
29 | }
30 |
31 | /**
32 | * This function returns the fax job.
33 | *
34 | * @return The fax job
35 | */
36 | public final FaxJob getFaxJob() {
37 | return this.FAX_JOB;
38 | }
39 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/http/FaxJob2HTTPRequestConverter.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.http;
2 |
3 | import org.fax4j.FaxJob;
4 | import org.fax4j.common.FaxActionType;
5 | import org.fax4j.common.Service;
6 |
7 | /**
8 | * The fax job to HTTP request converter interface enables to convert fax jobs to HTTP requests which will be submitted
9 | * to invoke the fax action remotly.
10 | *
11 | * @author Sagie Gur-Ari
12 | * @version 1.0
13 | * @since 0.42.4
14 | */
15 | public interface FaxJob2HTTPRequestConverter extends Service {
16 | /**
17 | * Creates the HTTP request from the fax job data.
18 | *
19 | * @param faxClientSpi
20 | * The HTTP fax client SPI
21 | * @param faxActionType
22 | * The fax action type
23 | * @param faxJob
24 | * The fax job object
25 | * @return The HTTP request to send
26 | */
27 | HTTPRequest createHTTPRequest(HTTPFaxClientSpi faxClientSpi, FaxActionType faxActionType, FaxJob faxJob);
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/process/ProcessOutputValidator.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.process;
2 |
3 | import org.fax4j.common.FaxActionType;
4 | import org.fax4j.spi.FaxClientSpi;
5 | import org.fax4j.util.ProcessExecutorHelper.ProcessOutput;
6 |
7 | /**
8 | * This interface defines the process output validator which is used to validate if the process ended correctly.
9 | *
10 | * @author Sagie Gur-Ari
11 | * @version 1.0
12 | * @since 0.26
13 | */
14 | public interface ProcessOutputValidator {
15 | /**
16 | * This function validates the process output for errors.
17 | * If not valid, an exception should be thrown.
18 | *
19 | * @param faxClientSpi
20 | * The fax client SPI
21 | * @param processOutput
22 | * The process output to validate
23 | * @param faxActionType
24 | * The fax action type
25 | */
26 | void validateProcessOutput(FaxClientSpi faxClientSpi, ProcessOutput processOutput, FaxActionType faxActionType);
27 | }
28 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/util/ProcessExecutorHelperTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.util;
2 |
3 | import org.fax4j.spi.FaxClientSpi;
4 | import org.fax4j.test.TestUtil.EmptyFaxClientSpi;
5 | import org.fax4j.util.ProcessExecutorHelper.ProcessOutput;
6 | import org.junit.Assert;
7 | import org.junit.Test;
8 |
9 | /**
10 | * Test Class
11 | *
12 | * @author Sagie Gur-Ari
13 | */
14 | public class ProcessExecutorHelperTest {
15 | /**
16 | * Test
17 | *
18 | * @throws Exception
19 | * Any exception
20 | */
21 | @Test
22 | public void executeProcessTest() throws Exception {
23 | final String command = "echo";
24 | FaxClientSpi faxClientSpi = new EmptyFaxClientSpi(true);
25 | ProcessOutput processOutput = ProcessExecutorHelper.executeProcess(faxClientSpi, command);
26 | Assert.assertNotNull(processOutput);
27 | Assert.assertEquals(0, processOutput.getExitCode());
28 | Assert.assertNotNull(processOutput.getOutputText());
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/docs/cobertura/css/tooltip.css:
--------------------------------------------------------------------------------
1 | a.hastooltip {
2 | border-bottom: 1px dotted #00aa00;
3 | color: #000000;
4 | cursor: help;
5 | font-style: normal;
6 | position: relative; /* This is the key */
7 | text-decoration: none;
8 | z-index: 24; /* What does this do? */
9 | }
10 |
11 | a.hastooltip:active {
12 | color: #000000;
13 | text-decoration: none;
14 | }
15 |
16 | a.hastooltip:link {
17 | color: #000000;
18 | text-decoration: none;
19 | }
20 |
21 | a.hastooltip:hover {
22 | background-color: #a0b8ff;
23 | color: #000000;
24 | text-decoration: none;
25 | z-index: 25;
26 | }
27 |
28 | a.hastooltip:visited {
29 | color: #000000;
30 | text-decoration: none;
31 | }
32 |
33 | a.hastooltip span {
34 | display: none;
35 | }
36 |
37 | a.hastooltip:hover span {
38 | background-color: #eeeeee;
39 | border: 1px solid #000000;
40 | color: #000000;
41 | display: block;
42 | padding: 5px;
43 | left: -15.2em;
44 | position: absolute;
45 | text-align: center;
46 | text-decoration: none;
47 | top: 2em;
48 | width: 20em;
49 | }
50 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/mac/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.mac (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/efax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.efax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/hoiio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.hoiio (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/linux/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.linux (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/spi/http/HTTPResponseTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.http;
2 |
3 | import org.junit.Assert;
4 | import org.junit.Test;
5 |
6 | /**
7 | * Test Class
8 | *
9 | * @author Sagie Gur-Ari
10 | */
11 | public class HTTPResponseTest {
12 | /**
13 | * Test
14 | *
15 | * @throws Exception
16 | * Any exception
17 | */
18 | @Test
19 | public void getContentTest() throws Exception {
20 | HTTPResponse response = new HTTPResponse();
21 | response.setContent("123");
22 | String output = response.getContent();
23 | Assert.assertEquals("123", output);
24 | }
25 |
26 | /**
27 | * Test
28 | *
29 | * @throws Exception
30 | * Any exception
31 | */
32 | @Test
33 | public void getStatusCodeTest() throws Exception {
34 | HTTPResponse response = new HTTPResponse();
35 | response.setStatusCode(123);
36 | int output = response.getStatusCode();
37 | Assert.assertEquals(123, output);
38 | }
39 | }
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/phaxio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.phaxio (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/main/native/windows/exe/fax4j_exe.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/adapter/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.adapter (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/faxage/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.faxage (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/mac/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.mac
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/FaxJobStatus.java:
--------------------------------------------------------------------------------
1 | package org.fax4j;
2 |
3 | /**
4 | * This is the fax job status enum which holds the possible fax status values.
5 | * Not all SPIs support extraction of the fax job status.
6 | * In case the SPI is unable to extract or does not support extracting of the fax job status, it will return the UNKNOWN
7 | * status.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.0
11 | * @since 0.21b
12 | */
13 | public enum FaxJobStatus {
14 | /** The 'Unknown' status */
15 | UNKNOWN,
16 | /**
17 | * The 'Pending' status - in case fax job has not been submitted yet by the fax server but it is still in the
18 | * queue.
19 | * Suspended fax jobs are also considered as pending.
20 | */
21 | PENDING,
22 | /**
23 | * The 'In Progress' status - in case the fax server is currently handling the fax job
24 | */
25 | IN_PROGRESS,
26 | /**
27 | * The 'Error' status - in case there was an error during the fax server attempt to submit the fax job.
28 | */
29 | ERROR
30 | }
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/java4less/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.java4less (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/util/AbstractCloseable.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.util;
2 |
3 | import java.io.Closeable;
4 | import java.io.IOException;
5 |
6 | /**
7 | * Defines a basic closable class which prevents errors from being thrown during the close invocation.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.0
11 | * @since 0.33
12 | */
13 | public abstract class AbstractCloseable implements Closeable {
14 | /**
15 | * This is the class constructor.
16 | */
17 | protected AbstractCloseable() {
18 | super();
19 | }
20 |
21 | /**
22 | * Closes the connection.
23 | *
24 | * @throws IOException
25 | * Never thrown
26 | */
27 | public final synchronized void close() throws IOException {
28 | try {
29 | // close connection
30 | this.closeImpl();
31 | } catch (Exception exception) { // NOPMD
32 | // ignore
33 | }
34 | }
35 |
36 | /**
37 | * Closes the connection.
38 | */
39 | protected abstract void closeImpl();
40 | }
41 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/hoiio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.hoiio
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/linux/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.linux
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/interfax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.interfax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/metrofax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.metrofax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/send2fax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.send2fax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/.github/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contribution Guidelines
2 |
3 |
4 | ## Issues
5 |
6 | Found a bug? Got a question? Want some enhancement?
7 | First place to go is the repository issues section, and I'll try to help as much as possible.
8 | However, keep in mind that currently this project is not very active.
9 |
10 | ## Pull Requests
11 |
12 | Fixed a bug or just want to provided additional functionality?
13 | Simply fork this repository, implement your changes and create a pull request.
14 | Few guidelines regarding pull requests:
15 |
16 | * This repository is integrated with github actions for continuous integration.
17 |
18 | Your pull request build must pass (the build will run automatically).
19 | You can run the following command locally to ensure the build will pass:
20 |
21 | ````sh
22 | mvn clean install
23 | ````
24 |
25 | * There are many automatic unit tests as part of the library which provide full coverage of the functionality. Any fix/enhancement must come with a set of tests to ensure it's working well.
26 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/efax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.efax
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/java4less/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.java4less
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/phaxio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.phaxio
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/common/SimpleLogger.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.common;
2 |
3 | /**
4 | * This is a basic implementation of the logger.
5 | * It enables to print the output to the system out stream.
6 | *
7 | * @author Sagie Gur-Ari
8 | * @version 1.05
9 | * @since 0.1
10 | */
11 | public class SimpleLogger extends AbstractLogger {
12 | /**
13 | * This is the default constructor.
14 | */
15 | public SimpleLogger() {
16 | super();
17 | }
18 |
19 | /**
20 | * Logs the provided data.
21 | *
22 | * @param level
23 | * The log level
24 | * @param message
25 | * The message parts (may be null)
26 | * @param throwable
27 | * The error (may be null)
28 | */
29 | @Override
30 | protected void logImpl(LogLevel level, Object[] message, Throwable throwable) {
31 | // format log message
32 | String text = this.formatLogMessage(level, message, throwable);
33 |
34 | // print text to system out
35 | System.out.println(text);
36 | }
37 | }
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/adapter/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.adapter
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.vbs.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.vbs
12 |
13 |
14 | Classes
15 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/extremefax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.extremefax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/nextivafax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.nextivafax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/faxage/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.faxage
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/cobertura/index.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 | Coverage Report
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | This document is designed to be viewed using the frames feature. If you see this message, you are using a frame-incapable web client.
20 | Click here to view a non-frame version.
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/interfax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.interfax
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/metrofax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.metrofax
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/send2fax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.send2fax
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.bridge.email.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.bridge.email
12 |
13 |
14 | Classes
15 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/extremefax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.extremefax
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/nextivafax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.nextivafax
8 |
9 |
10 |
11 |
12 |
20 |
21 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/bridge/RequestParser.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.bridge;
2 |
3 | import org.fax4j.FaxJob;
4 | import org.fax4j.common.Initializable;
5 |
6 | /**
7 | * This interface defines the fax bridge request parser used to extract the fax job and file info from the input data.
8 | *
9 | * @param
10 | * The request type
11 | * @author Sagie Gur-Ari
12 | * @version 1.0
13 | * @since 0.41.3
14 | */
15 | public interface RequestParser extends Initializable {
16 | /**
17 | * This function returns the file info from the input data.
18 | *
19 | * @param inputData
20 | * The input data
21 | * @return The file info
22 | */
23 | FileInfo getFileInfoFromInputData(T inputData);
24 |
25 | /**
26 | * This function update the fax job from the input data.
27 | * This fax job will not have any file data.
28 | *
29 | * @param inputData
30 | * The input data
31 | * @param faxJob
32 | * The fax job to update
33 | */
34 | void updateFaxJobFromInputData(T inputData, FaxJob faxJob);
35 | }
36 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/util/ConnectionFactory.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.util;
2 |
3 | import org.fax4j.common.ConfigurationHolder;
4 | import org.fax4j.common.ProviderImplementation;
5 |
6 | /**
7 | * This class defines the basic common connection factory capabilities.
8 | *
9 | * @param
10 | * The resource type
11 | * @author Sagie Gur-Ari
12 | * @version 1.01
13 | * @since 0.39a
14 | */
15 | public interface ConnectionFactory extends ProviderImplementation {
16 | /**
17 | * This function initializes the connection factory.
18 | *
19 | * @param configurationHolder
20 | * The configuration holder
21 | */
22 | void initialize(ConfigurationHolder configurationHolder);
23 |
24 | /**
25 | * Creates and returns the connection to be used.
26 | *
27 | * @return The connection
28 | */
29 | Connection createConnection();
30 |
31 | /**
32 | * Releases the connection.
33 | *
34 | * @param connection
35 | * The connection
36 | */
37 | void releaseConnection(Connection connection);
38 | }
39 |
--------------------------------------------------------------------------------
/docs/css/print.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed to the Apache Software Foundation (ASF) under one
3 | * or more contributor license agreements. See the NOTICE file
4 | * distributed with this work for additional information
5 | * regarding copyright ownership. The ASF licenses this file
6 | * to you under the Apache License, Version 2.0 (the
7 | * "License"); you may not use this file except in compliance
8 | * with the License. You may obtain a copy of the License at
9 | *
10 | * http://www.apache.org/licenses/LICENSE-2.0
11 | *
12 | * Unless required by applicable law or agreed to in writing,
13 | * software distributed under the License is distributed on an
14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | * KIND, either express or implied. See the License for the
16 | * specific language governing permissions and limitations
17 | * under the License.
18 | */
19 |
20 | #banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {
21 | display: none !important;
22 | }
23 | #bodyColumn, body.docs div.docs {
24 | margin: 0 !important;
25 | border: none !important
26 | }
27 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.bridge.process.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.bridge.process
12 |
13 |
14 | Classes
15 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/docs/cobertura/css/sortabletable.css:
--------------------------------------------------------------------------------
1 | .sort-table {
2 | font: Icon;
3 | border: 1px Solid ThreeDShadow;
4 | background: Window;
5 | color: WindowText;
6 | }
7 |
8 | .sort-table thead {
9 | background: ButtonFace;
10 | }
11 |
12 | .sort-table td {
13 | padding: 2px 5px;
14 | }
15 |
16 | .sort-table thead td {
17 | border: 1px solid;
18 | border-color: ButtonHighlight ButtonShadow
19 | ButtonShadow ButtonHighlight;
20 | cursor: default;
21 | }
22 |
23 | .sort-table thead td:active {
24 | border-color: ButtonShadow ButtonHighlight
25 | ButtonHighlight ButtonShadow;
26 | padding: 3px 4px 1px 6px;
27 | }
28 |
29 | .sort-table thead td[_sortType=None]:active {
30 | border-color: ButtonHighlight ButtonShadow
31 | ButtonShadow ButtonHighlight;
32 | padding: 2px 5px;
33 | }
34 |
35 | .sort-arrow {
36 | width: 11px;
37 | height: 11px;
38 | background-position: center center;
39 | background-repeat: no-repeat;
40 | margin: 0 2px;
41 | }
42 |
43 | .sort-arrow.descending {
44 | background-image: url("../images/downsimple.png");
45 |
46 | }
47 |
48 | .sort-arrow.ascending {
49 | background-image: url("../images/upsimple.png");
50 | }
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/bridge/email/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.bridge.email (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/process/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.process (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/docs/cobertura/help.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 | Coverage Report - Help
9 |
10 |
11 |
12 |
13 |
14 |
15 | Line Coverage
16 | The percent of lines executed by this test run.
17 |
18 | Branch Coverage
19 | The percent of branches executed by this test run.
20 |
21 | Complexity
22 | Average McCabe's cyclomatic code complexity for all methods. This is basically a count of the number of different code paths in a method (incremented by 1 for each if statement, while loop, etc.)
23 |
24 | N/A
25 | Line coverage and branch coverage will appear as "Not Applicable" when Cobertura can not find line number information in the .class file. This happens for stub and skeleton classes, interfaces, or when the class was not compiled with "debug=true."
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/bridge/process/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.bridge.process (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/http/HTTPResponseHandler.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.http;
2 |
3 | import org.fax4j.FaxJob;
4 | import org.fax4j.FaxJobStatus;
5 | import org.fax4j.common.FaxActionType;
6 | import org.fax4j.common.Service;
7 |
8 | /**
9 | * This interface defines the HTTP response handler which is used to update the fax job based on the HTTP response data.
10 | *
11 | * @author Sagie Gur-Ari
12 | * @version 1.0
13 | * @since 0.42.4
14 | */
15 | public interface HTTPResponseHandler extends Service {
16 | /**
17 | * Updates the fax job based on the data from the HTTP response data.
18 | *
19 | * @param faxJob
20 | * The fax job object
21 | * @param httpResponse
22 | * The HTTP response
23 | * @param faxActionType
24 | * The fax action type
25 | */
26 | void updateFaxJob(FaxJob faxJob, HTTPResponse httpResponse, FaxActionType faxActionType);
27 |
28 | /**
29 | * This function extracts the fax job status from the HTTP response data.
30 | *
31 | * @param httpResponse
32 | * The HTTP response
33 | * @return The fax job status
34 | */
35 | FaxJobStatus getFaxJobStatus(HTTPResponse httpResponse);
36 | }
37 |
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/win2k_submit_fax.vbs:
--------------------------------------------------------------------------------
1 |
2 | ''define variables
3 | Dim faxServerInstance
4 | Set faxServerInstance=faxCreateFaxServerWin2k()
5 |
6 | ''connect to the fax server
7 | faxServerInstance.Connect "{0}"
8 |
9 | ''create document
10 | Dim faxDocumentInstance
11 | Set faxDocumentInstance=faxServerInstance.CreateDocument("{1}")
12 |
13 | ''name the document
14 | If "" <> "{2}" Then
15 | faxDocumentInstance.DisplayName="{2}"
16 | End If
17 |
18 | ''add the recipient number
19 | faxDocumentInstance.FaxNumber="{3}"
20 |
21 | ''add the recipient name
22 | If "" <> "{4}" Then
23 | faxDocumentInstance.RecipientName="{4}"
24 | End If
25 |
26 | ''set the sender properties
27 | If "" <> "{5}" Then
28 | faxDocumentInstance.SenderName="{5}"
29 | End If
30 | If "" <> "{6}" Then
31 | faxDocumentInstance.SenderFax="{6}"
32 | End If
33 |
34 | ''submit the document to the connected fax server
35 | Dim faxJobID
36 | ioPrintDebug "Sending fax"
37 | faxJobID=faxDocumentInstance.Send
38 | ioPrintDebug "Fax sent"
39 |
40 | ''print output start
41 | ioPrintProcessOutputBeginText
42 |
43 | ''print fax job ID
44 | Dim outputText
45 | outputText=utilStringConcat("fax.job.id=",faxJobID)
46 | ioPrintText outputText
47 | ioPrintText "fax.operation.done=true"
48 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/email/MailAuthenticator.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.email;
2 |
3 | import javax.mail.Authenticator;
4 | import javax.mail.PasswordAuthentication;
5 |
6 | /**
7 | * This class implements the javax.mail.Authenticator
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.0
11 | * @since 0.1
12 | */
13 | public class MailAuthenticator extends Authenticator {
14 | /** This is the password authentication */
15 | private final transient PasswordAuthentication PASSWORD_AUTHENTICATION;
16 |
17 | /**
18 | * This is the class constructor.
19 | *
20 | * @param userName
21 | * The user name
22 | * @param password
23 | * The password
24 | */
25 | public MailAuthenticator(String userName, String password) {
26 | super();
27 |
28 | // init password authentication
29 | this.PASSWORD_AUTHENTICATION = new PasswordAuthentication(userName, password);
30 | }
31 |
32 | /**
33 | * This funcion returns a password authentication.
34 | *
35 | * @return A password authentication
36 | */
37 | @Override
38 | protected PasswordAuthentication getPasswordAuthentication() {
39 | return this.PASSWORD_AUTHENTICATION;
40 | }
41 | }
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.bridge.http.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.bridge.http
12 |
13 |
14 | Classes
15 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/mac/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.mac (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/http/HTTPClientConfiguration.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.http;
2 |
3 | import org.fax4j.common.FaxActionType;
4 | import org.fax4j.spi.http.HTTPClient.HTTPMethod;
5 |
6 | /**
7 | * This interface holds the HTTP client configuration.
8 | * Each HTTP client will have different configuration requirements and therefore this interface is just a flagging
9 | * interface.
10 | *
11 | * @author Sagie Gur-Ari
12 | * @version 1.03
13 | * @since 0.20c
14 | */
15 | public interface HTTPClientConfiguration {
16 | /**
17 | * This function returns the host name.
18 | *
19 | * @return The host name
20 | */
21 | String getHostName();
22 |
23 | /**
24 | * This function returns the port.
25 | *
26 | * @return The port
27 | */
28 | int getPort();
29 |
30 | /**
31 | * This function returns the SSL flag value.
32 | *
33 | * @return The SSL flag value
34 | */
35 | boolean isSSL();
36 |
37 | /**
38 | * This function returns the HTTP method based on the provided fax action type.
39 | *
40 | * @param faxActionType
41 | * The fax action type
42 | * @return The HTTP method
43 | */
44 | HTTPMethod getMethod(FaxActionType faxActionType);
45 | }
46 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.process.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.process
12 |
13 |
14 | Classes
15 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/bridge/ContextFaxBridge.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.bridge;
2 |
3 | import org.fax4j.FaxJob;
4 |
5 | /**
6 | * This interface defines only the common capabilities of the context fax bridge.
7 | *
8 | * Below table describes the configuration values relevant for this class.
9 | * Configuration:
10 | *
11 | *
12 | * Name
13 | * Description
14 | * Preconfigured Value
15 | * Default Value
16 | * Mandatory
17 | *
18 | *
19 | * org.fax4j.bridge.vendor.policy.class.name
20 | * The vendor policy class name.
21 | * org.fax4j.bridge.EmptyVendorPolicy
22 | * org.fax4j.bridge.EmptyVendorPolicy
23 | * false
24 | *
25 | *
26 | *
27 | * @param
28 | * The context type
29 | * @author Sagie Gur-Ari
30 | * @version 1.0
31 | * @since 0.41.4
32 | */
33 | public interface ContextFaxBridge extends FaxBridge {
34 | /**
35 | * This function will submit a new fax job.
36 | *
37 | * @param inputData
38 | * The input data holding the fax job information
39 | * @return The submitted fax job
40 | */
41 | FaxJob submitFaxJob(T inputData);
42 | }
43 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/hoiio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.hoiio (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/linux/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.linux (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/bridge/email/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.bridge.email
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/mac/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.mac
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/efax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.efax (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/phaxio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.phaxio (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/hoiio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.hoiio
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/linux/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.linux
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/faxage/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.faxage (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/process/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.process
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/phaxio/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.phaxio
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/vbs/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.vbs (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/efax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.efax
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/comm/FaxModemAdapter.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.comm;
2 |
3 | import org.fax4j.FaxJob;
4 | import org.fax4j.common.ProviderImplementation;
5 | import org.fax4j.spi.FaxClientSpi;
6 |
7 | /**
8 | * Defines a local fax modem adapter.
9 | * This adapter can only work with fax modems that are directly connected to the machine via COMM port.
10 | * The fax modem is not thread safe and it is up to the caller class to synchronize any non thread safe resource, such
11 | * as the COMM adapter.
12 | *
13 | * @author Sagie Gur-Ari
14 | * @version 1.02
15 | * @since 0.34
16 | */
17 | public interface FaxModemAdapter extends ProviderImplementation {
18 | /**
19 | * This function initializes the fax modem adapter.
20 | *
21 | * @param faxClientSpi
22 | * The fax client SPI
23 | */
24 | void initialize(FaxClientSpi faxClientSpi);
25 |
26 | /**
27 | * This function will submit a new fax job.
28 | * The fax job ID may be populated by this method in the provided fax job object.
29 | *
30 | * @param faxJob
31 | * The fax job object containing the needed information
32 | * @param adapter
33 | * The COMM port adapter
34 | */
35 | void submitFaxJob(FaxJob faxJob, CommPortAdapter adapter);
36 | }
37 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/bridge/process/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.bridge.process
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/src/test/java/com/java4less/rfax/FaxModem.java:
--------------------------------------------------------------------------------
1 | package com.java4less.rfax;
2 |
3 | /**
4 | * Test Class
5 | *
6 | * @author Sagie Gur-Ari
7 | */
8 | public class FaxModem {
9 | /** Class member */
10 | public int faxClass;
11 |
12 | /**
13 | * Test method
14 | *
15 | * @param value
16 | * Any value
17 | */
18 | public void setPortName(String value) {
19 | if (value == null) {
20 | throw new IllegalArgumentException("port name is null.");
21 | }
22 | }
23 |
24 | /**
25 | * Test method
26 | *
27 | * @param producer
28 | * Any producer
29 | */
30 | public void open(FaxProducer producer) {
31 | if (producer == null) {
32 | throw new IllegalArgumentException("fax producer is null.");
33 | }
34 | }
35 |
36 | /**
37 | * Test method
38 | *
39 | * @param number
40 | * Any number
41 | * @return true
42 | */
43 | public boolean sendFax(String number) {
44 | if (number == null) {
45 | throw new IllegalArgumentException("fax number is null.");
46 | }
47 |
48 | return true;
49 | }
50 |
51 | /**
52 | * Test method
53 | */
54 | public void close() {
55 | // empty
56 | }
57 | }
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/interfax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.interfax (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/metrofax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.metrofax (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/send2fax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.send2fax (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/util/ProcessExecutor.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.util;
2 |
3 | import java.io.IOException;
4 | import org.fax4j.common.ConfigurationHolder;
5 | import org.fax4j.util.ProcessExecutorHelper.ProcessOutput;
6 |
7 | /**
8 | * The process executer enables to execute native processes.
9 | * Implementing classes must be statless and thread safe.
10 | *
11 | * @author Sagie Gur-Ari
12 | * @version 1.01
13 | * @since 0.40.1
14 | */
15 | public interface ProcessExecutor {
16 | /** The process executer class name property key */
17 | String PROCESS_EXECUTER_CLASS_NAME_PROPERTY_KEY = "org.fax4j.process.executer.class.name";
18 |
19 | /**
20 | * This function executes the given command and returns the process output.
21 | *
22 | * @param configurationHolder
23 | * The configuration holder used when invoking the process
24 | * @param command
25 | * The command to execute
26 | * @return The process output
27 | * @throws IOException
28 | * Any IO exception
29 | * @throws InterruptedException
30 | * If thread interrupted during waitFor for the process
31 | */
32 | ProcessOutput executeProcess(ConfigurationHolder configurationHolder, String command)
33 | throws IOException, InterruptedException;
34 | }
35 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/faxage/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.faxage
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/bridge/http/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.bridge.http (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/email/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.email (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/main/native/windows/dll/fax4j_dll.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 11.00
3 | # Visual C++ Express 2010
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fax4j_dll", "fax4j_dll.vcxproj", "{AFCD864B-7EC7-45B8-9042-3683B542E07D}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|64 = Debug|64
9 | Debug|Win32 = Debug|Win32
10 | Release|64 = Release|64
11 | Release|Win32 = Release|Win32
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Debug|64.ActiveCfg = Release|Win32
15 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Debug|64.Build.0 = Release|Win32
16 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Debug|Win32.ActiveCfg = Release|Win32
17 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Debug|Win32.Build.0 = Release|Win32
18 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Release|64.ActiveCfg = Release|Win32
19 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Release|64.Build.0 = Release|Win32
20 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Release|Win32.ActiveCfg = Release|Win32
21 | {AFCD864B-7EC7-45B8-9042-3683B542E07D}.Release|Win32.Build.0 = Release|Win32
22 | EndGlobalSection
23 | GlobalSection(SolutionProperties) = preSolution
24 | HideSolutionNode = FALSE
25 | EndGlobalSection
26 | EndGlobal
27 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/extremefax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.extremefax (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/nextivafax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.nextivafax (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/comm/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.comm (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/interfax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.interfax
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/metrofax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.metrofax
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/send2fax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.send2fax
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/extremefax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.extremefax
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/nextivafax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.nextivafax
8 |
9 |
10 |
11 |
12 |
23 |
24 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/email/MailResourcesHolder.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.email;
2 |
3 | import javax.mail.Session;
4 | import javax.mail.Transport;
5 |
6 | /**
7 | * This class holds the java mail objects.
8 | *
9 | * @author Sagie Gur-Ari
10 | * @version 1.0
11 | * @since 0.39a
12 | */
13 | public class MailResourcesHolder {
14 | /** This is the mail session */
15 | private final Session SESSION;
16 | /** This is the mail transport */
17 | private final Transport TRANSPORT;
18 |
19 | /**
20 | * This is the default constructor.
21 | *
22 | * @param session
23 | * The mail session
24 | * @param transport
25 | * The mail transport
26 | */
27 | public MailResourcesHolder(Session session, Transport transport) {
28 | super();
29 |
30 | // get values
31 | this.SESSION = session;
32 | this.TRANSPORT = transport;
33 | }
34 |
35 | /**
36 | * This function returns the mail session.
37 | *
38 | * @return The mail session
39 | */
40 | public final Session getSession() {
41 | return this.SESSION;
42 | }
43 |
44 | /**
45 | * This function returns the mail transport.
46 | *
47 | * @return The mail transport
48 | */
49 | public final Transport getTransport() {
50 | return this.TRANSPORT;
51 | }
52 | }
--------------------------------------------------------------------------------
/src/main/resources/org/fax4j/spi/vbs/winxp_submit_fax.vbs:
--------------------------------------------------------------------------------
1 |
2 | ''define variables
3 | Dim faxServerInstance
4 | Set faxServerInstance=faxCreateFaxServer()
5 | Dim faxDocumentInstance
6 | Set faxDocumentInstance=faxCreateFaxDocument()
7 |
8 | ''connect to the fax server
9 | faxServerInstance.Connect "{0}"
10 |
11 | ''set the fax body
12 | faxDocumentInstance.Body="{1}"
13 |
14 | ''name the document
15 | faxDocumentInstance.DocumentName="{2}"
16 |
17 | ''set the fax priority
18 | faxDocumentInstance.Priority={3}
19 |
20 | ''add the recipient (number, name)
21 | faxDocumentInstance.Recipients.Add "{4}", "{5}"
22 |
23 | ''set to none receipt type
24 | faxDocumentInstance.ReceiptType=frtNONE
25 |
26 | ''set the sender properties
27 | faxDocumentInstance.Sender.Name="{6}"
28 | faxDocumentInstance.Sender.FaxNumber="{7}"
29 | faxDocumentInstance.Sender.Email="{8}"
30 |
31 | ''submit the document to the connected fax server
32 | Dim faxJobIDs
33 | ioPrintDebug "Sending fax"
34 | faxJobIDs=faxDocumentInstance.ConnectedSubmit(faxServerInstance)
35 | ioPrintDebug "Fax sent"
36 |
37 | ''disconnect from fax server
38 | faxServerInstance.Disconnect
39 |
40 | ''print output start
41 | ioPrintProcessOutputBeginText
42 |
43 | ''print fax job ID as empty since vbs does not support string array
44 | Dim outputText
45 | outputText=utilStringConcat("fax.job.id=","")
46 | ioPrintText outputText
47 | ioPrintText "fax.operation.done=true"
48 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/bridge/email/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.bridge.email (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Interfaces
16 |
19 |
Classes
20 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/test/java/org/fax4j/bridge/EmptyVendorPolicyTest.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.bridge;
2 |
3 | import org.fax4j.spi.FaxJobImpl;
4 | import org.junit.Assert;
5 | import org.junit.Before;
6 | import org.junit.Test;
7 |
8 | /**
9 | * Test Class
10 | *
11 | * @author Sagie Gur-Ari
12 | */
13 | public class EmptyVendorPolicyTest {
14 | /** The vendor policy to test */
15 | private EmptyVendorPolicy policy;
16 |
17 | /**
18 | * Sets up the test objects.
19 | *
20 | * @throws Exception
21 | * Any exception
22 | */
23 | @Before
24 | public void setUp() throws Exception {
25 | this.policy = new EmptyVendorPolicy();
26 | this.policy.initialize(new Object());
27 | }
28 |
29 | /**
30 | * Test
31 | *
32 | * @throws Exception
33 | * Any exception
34 | */
35 | @Test
36 | public void invokePolicyForRequestValidTest() throws Exception {
37 | boolean output = this.policy.invokePolicyForRequest(new Object());
38 | Assert.assertTrue(output);
39 | }
40 |
41 | /**
42 | * Test
43 | *
44 | * @throws Exception
45 | * Any exception
46 | */
47 | @Test
48 | public void invokePolicyForResponseValidTest() throws Exception {
49 | boolean output = this.policy.invokePolicyForResponse(new Object(), new FaxJobImpl());
50 | Assert.assertTrue(output);
51 | }
52 | }
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/bridge/AbstractFax4JBridge.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.bridge;
2 |
3 | import org.fax4j.Provider;
4 | import org.fax4j.common.Fax4JProvider;
5 |
6 | /**
7 | * This class partial implementation of the fax bridge.
8 | * Specific implementations may provide additional, more transport based capabilities.
9 | * Below table describes the configuration values relevant for this class.
10 | * Configuration:
11 | *
12 | *
13 | * Name
14 | * Description
15 | * Preconfigured Value
16 | * Default Value
17 | * Mandatory
18 | *
19 | *
20 | * org.fax4j.bridge.vendor.policy.class.name
21 | * The vendor policy class name.
22 | * org.fax4j.bridge.EmptyVendorPolicy
23 | * org.fax4j.bridge.EmptyVendorPolicy
24 | * false
25 | *
26 | *
27 | *
28 | * @author Sagie Gur-Ari
29 | * @version 1.0
30 | * @since 0.40.6
31 | */
32 | public abstract class AbstractFax4JBridge extends AbstractFaxBridge {
33 | /**
34 | * This is the class constructor.
35 | */
36 | public AbstractFax4JBridge() {
37 | super();
38 | }
39 |
40 | /**
41 | * This function returns the provider.
42 | *
43 | * @return The provider
44 | */
45 | public final Provider getProvider() {
46 | return Fax4JProvider.FAX4J_PROVIDER;
47 | }
48 | }
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/bridge/email/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.bridge.email
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/FaxJobMonitor.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi;
2 |
3 | import java.util.Map;
4 | import org.fax4j.FaxJob;
5 | import org.fax4j.common.Logger;
6 |
7 | /**
8 | * This interface defines the fax job monitor capabilities.
9 | *
10 | * @author Sagie Gur-Ari
11 | * @version 1.01
12 | * @since 0.40.2
13 | */
14 | public interface FaxJobMonitor {
15 | /**
16 | * This function initializes the fax job monitor.
17 | * This method is called by the FaxClientSpiFactory.
18 | *
19 | * @param configuration
20 | * The fax job monitor configuration
21 | * @param logger
22 | * The internal logger
23 | */
24 | void initialize(Map configuration, Logger logger);
25 |
26 | /**
27 | * This function starts monitoring the requested fax job.
28 | *
29 | * @param faxClientSpi
30 | * The fax client SPI
31 | * @param faxJob
32 | * The fax job to monitor
33 | */
34 | void monitorFaxJob(FaxClientSpi faxClientSpi, FaxJob faxJob);
35 |
36 | /**
37 | * This function will stop the monitoring of all fax jobs registered by the provided fax client SPI.
38 | * Other fax jobs registered by other SPIs will keep on being monitored.
39 | *
40 | * @param faxClientSpi
41 | * The fax client SPI
42 | */
43 | void stopMonitoringAllFaxJobs(FaxClientSpi faxClientSpi);
44 | }
45 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/adapter/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.adapter (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
20 |
Enums
21 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/main/native/windows/dll/fax4j_dll.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav
15 |
16 |
17 |
18 |
19 | Source Files
20 |
21 |
22 | Source Files
23 |
24 |
25 |
26 |
27 | Header Files
28 |
29 |
30 | Header Files
31 |
32 |
33 |
--------------------------------------------------------------------------------
/docs/cobertura/css/source-viewer.css:
--------------------------------------------------------------------------------
1 | pre.src {
2 | background: #ffffff;
3 | margin-top: 0px;
4 | margin-bottom: 0px;
5 | }
6 |
7 | table.src {
8 | border: #dcdcdc 1px solid;
9 | font-size: 16px;
10 | }
11 |
12 | td.numLine {
13 | background: #f0f0f0;
14 | border-right: #dcdcdc 1px solid;
15 | padding-right: 3px;
16 | text-align: right;
17 | }
18 |
19 | td.numLineCover {
20 | background: #80ff80;
21 | border-right: #dcdcdc 1px solid;
22 | padding-right: 3px;
23 | text-align: right;
24 | }
25 |
26 | td.nbHits {
27 | background: #f0f0f0;
28 | border-right: #dcdcdc 1px solid;
29 | padding-right: 3px;
30 | text-align: right;
31 | }
32 |
33 | td.nbHitsCovered {
34 | background: #80ff80;
35 | border-right: #dcdcdc 1px solid;
36 | padding-right: 3px;
37 | text-align: right;
38 | }
39 |
40 | td.nbHitsUncovered {
41 | background: #ff9090;
42 | border-right: #dcdcdc 1px solid;
43 | font-weight: bold;
44 | padding-right: 3px;
45 | text-align: right;
46 | }
47 |
48 | td.src {
49 | width: 100%;
50 | }
51 |
52 | span.comment {
53 | color: #b22222;
54 | font-style: italic;
55 | }
56 |
57 | span.keyword {
58 | color: #2020bf;
59 | font-weight: bold;
60 | }
61 |
62 | span.srcUncovered {
63 | background: #ff9090;
64 | }
65 |
66 | span.string {
67 | color: #2a00ff;
68 | }
69 |
70 | span.text_italic {
71 | font-size: 12px;
72 | font-style: italic;
73 | }
74 |
--------------------------------------------------------------------------------
/docs/testapidocs/com/java4less/rfax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | com.java4less.rfax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Interfaces
16 |
19 |
Classes
20 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/bridge/process/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.bridge.process (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Interfaces
16 |
19 |
Classes
20 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/cobertura/frame-sourcefiles-org.fax4j.spi.hylafax.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 | Coverage Report Classes
7 |
8 |
9 |
10 |
11 | org.fax4j.spi.hylafax
12 |
13 |
14 | Classes
15 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/vbs/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.vbs
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/src/main/assembly/assembly_full.xml:
--------------------------------------------------------------------------------
1 |
2 | full
3 |
4 | zip
5 |
6 | true
7 | true
8 |
9 |
10 | ${project.basedir}
11 |
12 | pom.xml
13 | LICENSE.txt
14 | Docs.html
15 | *build*
16 |
17 |
18 |
19 | ${project.basedir}/src
20 | /src
21 |
22 |
23 | ${project.build.directory}
24 | /lib
25 |
26 | ${project.name}-${project.version}.jar
27 |
28 |
29 |
30 | ${project.build.directory}
31 | /extra
32 |
33 | ${project.name}-${project.version}-javadoc.jar
34 | ${project.name}-${project.version}-sources.jar
35 |
36 |
37 |
38 |
39 |
40 | /lib
41 | false
42 | false
43 | runtime
44 |
45 |
46 |
--------------------------------------------------------------------------------
/docs/apidocs/org/fax4j/spi/java4less/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.java4less (fax4j 0.45.0 API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Classes
16 |
19 |
Enums
20 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/bridge/http/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.bridge.http
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/bridge/process/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.bridge.process
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/testapidocs/org/fax4j/spi/hylafax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | org.fax4j.spi.hylafax (fax4j 0.45.0 Test API)
8 |
9 |
10 |
11 |
12 |
13 |
14 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/email/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.email
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/http/EmptyHTTPResponseHandler.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.http;
2 |
3 | import org.fax4j.FaxJob;
4 | import org.fax4j.FaxJobStatus;
5 | import org.fax4j.common.Fax4JProvider;
6 | import org.fax4j.common.FaxActionType;
7 |
8 | /**
9 | * This class provides empty implementation of the HTTP response handler interface.
10 | *
11 | * @author Sagie Gur-Ari
12 | * @version 1.0
13 | * @since 0.42.4
14 | */
15 | public class EmptyHTTPResponseHandler extends AbstractHTTPResponseHandler {
16 | /**
17 | * This is the default constructor.
18 | */
19 | public EmptyHTTPResponseHandler() {
20 | super(Fax4JProvider.FAX4J_PROVIDER);
21 | }
22 |
23 | /**
24 | * Updates the fax job based on the data from the HTTP response data.
25 | *
26 | * @param faxJob
27 | * The fax job object
28 | * @param httpResponse
29 | * The HTTP response
30 | * @param faxActionType
31 | * The fax action type
32 | */
33 | public void updateFaxJob(FaxJob faxJob, HTTPResponse httpResponse, FaxActionType faxActionType) {
34 | // empty implementation
35 | }
36 |
37 | /**
38 | * This function extracts the fax job status from the HTTP response data.
39 | *
40 | * @param httpResponse
41 | * The HTTP response
42 | * @return The fax job status
43 | */
44 | public FaxJobStatus getFaxJobStatus(HTTPResponse httpResponse) {
45 | return FaxJobStatus.UNKNOWN;
46 | }
47 | }
--------------------------------------------------------------------------------
/src/main/java/org/fax4j/spi/process/ProcessOutputHandler.java:
--------------------------------------------------------------------------------
1 | package org.fax4j.spi.process;
2 |
3 | import org.fax4j.FaxJob;
4 | import org.fax4j.FaxJobStatus;
5 | import org.fax4j.common.FaxActionType;
6 | import org.fax4j.spi.FaxClientSpi;
7 | import org.fax4j.util.ProcessExecutorHelper.ProcessOutput;
8 |
9 | /**
10 | * This interface defines the process output handler which is used to update the fax job based on the process output
11 | * information.
12 | *
13 | * @author Sagie Gur-Ari
14 | * @version 1.01
15 | * @since 0.25
16 | */
17 | public interface ProcessOutputHandler {
18 | /**
19 | * Updates the fax job based on the data from the process output.
20 | *
21 | * @param faxClientSpi
22 | * The fax client SPI
23 | * @param faxJob
24 | * The fax job object
25 | * @param processOutput
26 | * The process output
27 | * @param faxActionType
28 | * The fax action type
29 | */
30 | void updateFaxJob(FaxClientSpi faxClientSpi, FaxJob faxJob, ProcessOutput processOutput,
31 | FaxActionType faxActionType);
32 |
33 | /**
34 | * This function extracts the fax job status from the process output.
35 | *
36 | * @param faxClientSpi
37 | * The fax client SPI
38 | * @param processOutput
39 | * The process output
40 | * @return The fax job status
41 | */
42 | FaxJobStatus getFaxJobStatus(FaxClientSpi faxClientSpi, ProcessOutput processOutput);
43 | }
44 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/adapter/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.adapter
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/xref-test/org/fax4j/spi/comm/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.comm
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/xref-test/com/java4less/rfax/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package com.java4less.rfax
8 |
9 |
10 |
11 |
12 |
29 |
30 |
--------------------------------------------------------------------------------
/docs/xref/org/fax4j/spi/java4less/package-frame.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | fax4j 0.45.0 Reference Package org.fax4j.spi.java4less
8 |
9 |
10 |
11 |
12 |
26 |
27 |
--------------------------------------------------------------------------------
/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
1 | name: CI
2 | on: [push, pull_request]
3 | env:
4 | CLICOLOR_FORCE: 1
5 | ACTIONS_ALLOW_UNSECURE_COMMANDS: true
6 | jobs:
7 | ci-linux:
8 | name: CI Linux
9 | runs-on: ubuntu-latest
10 | steps:
11 | - name: Checkout
12 | uses: actions/checkout@v2
13 | - name: Set up JDK
14 | uses: actions/setup-java@v1
15 | with:
16 | java-version: 1.8
17 | - name: Build with Maven
18 | run: mvn clean install site
19 | ci-windows:
20 | name: CI Windows
21 | runs-on: windows-latest
22 | steps:
23 | - name: Checkout
24 | uses: actions/checkout@v2
25 | - name: Setup Env
26 | run: |
27 | echo "::add-path::C:\Windows\Microsoft.NET\Framework\v4.0.30319"
28 | echo "::add-path::C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE"
29 | echo "::add-path::C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN"
30 | echo "::set-env name=LIB::C:\Program Files\Microsoft Visual Studio 10.0\VC\LIB;%LIB%"
31 | echo "::set-env name=LIB::C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;%LIB%"
32 | echo "::set-env name=LIB::C:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib;%LIB%"
33 | echo "::set-env name=INCLUDE::C:\Program FilesMicrosoft Visual Studio 10.0\VC\include;%INCLUDE%"
34 | - name: Setup JDK
35 | uses: actions/setup-java@v1
36 | with:
37 | java-version: 1.8
38 | - name: Build with Maven
39 | run: mvn -B clean install site
40 | - uses: actions/upload-artifact@v2
41 | with:
42 | path: target/fax4j-*-full.zip
43 |
44 |
--------------------------------------------------------------------------------