├── .java-version ├── gradle.properties ├── restclient-ui ├── graphics-src │ ├── README.md │ ├── mac-icon_1024.artx │ │ ├── doc.thread │ │ ├── Preview │ │ │ └── preview.png │ │ └── QuickLook │ │ │ └── Preview.pdf │ ├── 30_icon_art_text2.artx │ │ ├── doc.thread │ │ ├── Preview │ │ │ └── preview.png │ │ └── QuickLook │ │ │ └── Preview.pdf │ └── rest-client-splash.artx │ │ ├── doc.thread │ │ ├── Preview │ │ └── preview.png │ │ └── QuickLook │ │ └── Preview.pdf ├── ant-lib │ ├── appbundler-1.0ea.jar │ └── ant-xpath-task-1.0-SNAPSHOT.jar ├── src │ ├── main │ │ ├── app-resources │ │ │ └── rest-client_30.icns │ │ ├── resources │ │ │ └── org │ │ │ │ └── wiztools │ │ │ │ └── restclient │ │ │ │ ├── add.png │ │ │ │ ├── cog.png │ │ │ │ ├── go.png │ │ │ │ ├── key.png │ │ │ │ ├── edit.png │ │ │ │ ├── stop.png │ │ │ │ ├── wand.png │ │ │ │ ├── Splash.png │ │ │ │ ├── cog@2x.png │ │ │ │ ├── computer.png │ │ │ │ ├── delete.png │ │ │ │ ├── fv_exit.png │ │ │ │ ├── fv_file.png │ │ │ │ ├── logo_30.png │ │ │ │ ├── question.png │ │ │ │ ├── test │ │ │ │ ├── eye.png │ │ │ │ ├── cross.png │ │ │ │ └── accept.png │ │ │ │ ├── fv_archive.png │ │ │ │ ├── fv_folder.png │ │ │ │ ├── fv_request.png │ │ │ │ ├── pencil_add.png │ │ │ │ ├── quick_test.png │ │ │ │ ├── fv_response.png │ │ │ │ ├── insert_template.png │ │ │ │ ├── load_from_file.png │ │ │ │ ├── insert_parameters.png │ │ │ │ ├── PasswordHelp.txt │ │ │ │ ├── uioptionsdialog.properties │ │ │ │ ├── test-script.template │ │ │ │ └── messages.properties │ │ └── java │ │ │ └── org │ │ │ └── wiztools │ │ │ └── restclient │ │ │ └── ui │ │ │ ├── lifecycle │ │ │ ├── Shutdown.java │ │ │ ├── Startup.java │ │ │ ├── LifecycleManager.java │ │ │ └── LifecycleManagerImpl.java │ │ │ ├── ScrollableComponent.java │ │ │ ├── TextEditorSyntax.java │ │ │ ├── ViewPanel.java │ │ │ ├── dnd │ │ │ └── DndAction.java │ │ │ ├── reqbody │ │ │ ├── ParameterGenerationListener.java │ │ │ ├── ContentTypeCharsetChangeListener.java │ │ │ ├── AddMultipartPartListener.java │ │ │ ├── ReqBodyPanel.java │ │ │ ├── ReqBodyPanelNone.java │ │ │ ├── AddMultipartBaseDialog.java │ │ │ └── ContentTypeCharsetComponent.java │ │ │ ├── component │ │ │ ├── BodyPopupMenuListener.java │ │ │ └── BackgroundFormatterJob.java │ │ │ ├── resbody │ │ │ ├── ResBodyNonePanel.java │ │ │ ├── ResBodyPanel.java │ │ │ ├── AbstractResBody.java │ │ │ ├── ResBodyBinaryPanel.java │ │ │ └── ResBodyImagePanel.java │ │ │ ├── MultiEntryAdd.java │ │ │ ├── ISessionView.java │ │ │ ├── StatusBarPanel.java │ │ │ ├── resstatus │ │ │ ├── ResStatusPanel.java │ │ │ └── ResStatusPanelImpl.java │ │ │ ├── FontableEditor.java │ │ │ ├── FileChooserType.java │ │ │ ├── reqssl │ │ │ ├── ReqSSLPanel.java │ │ │ └── KeyStoreListener.java │ │ │ ├── restest │ │ │ ├── ResTestPanel.java │ │ │ └── FailureTableModel.java │ │ │ ├── resstats │ │ │ └── ResStatsPanel.java │ │ │ ├── resheader │ │ │ ├── ResHeaderPanel.java │ │ │ └── ResponseHeaderTableModel.java │ │ │ ├── reqauth │ │ │ └── ReqAuthPanel.java │ │ │ ├── reqmethod │ │ │ └── ReqMethodPanel.java │ │ │ ├── reqtest │ │ │ └── ReqTestPanel.java │ │ │ ├── ScriptEditorFactory.java │ │ │ ├── AbstractScriptEditor.java │ │ │ ├── RESTUserInterface.java │ │ │ ├── reqgo │ │ │ ├── ReqUrlGoPanel.java │ │ │ └── UrlListPersistUtil.java │ │ │ ├── reqetc │ │ │ └── ReqEtcPanel.java │ │ │ ├── history │ │ │ └── HistoryManager.java │ │ │ ├── option │ │ │ └── IOptionsPanel.java │ │ │ ├── RCFileFilter.java │ │ │ ├── RESTView.java │ │ │ ├── RCUIConstants.java │ │ │ ├── ScriptEditor.java │ │ │ ├── RCFileView.java │ │ │ ├── SessionFrame.java │ │ │ ├── AuthHelper.java │ │ │ ├── Main.java │ │ │ ├── StatusBarPanelImpl.java │ │ │ └── EscapableDialog.java │ └── test │ │ └── java │ │ └── org │ │ └── wiztools │ │ └── restclient │ │ └── ui │ │ ├── update │ │ └── AppUpdateRunnerTest.java │ │ └── RecentFilesHelperTest.java ├── MAC-BUILD.md └── build.gradle ├── restclient-jfx ├── src │ └── main │ │ ├── resources │ │ ├── styles │ │ │ ├── Styles.css │ │ │ └── urlpane.css │ │ └── fxml │ │ │ ├── req │ │ │ ├── HeaderPane.fxml │ │ │ ├── UrlPane.fxml │ │ │ ├── MethodPane.fxml │ │ │ └── SslPane.fxml │ │ │ └── Menu.fxml │ │ └── java │ │ └── org │ │ └── wiztools │ │ └── restclient │ │ └── jfx │ │ ├── MenuController.java │ │ ├── req │ │ ├── MethodPaneController.java │ │ └── UrlPaneController.java │ │ ├── FXMLController.java │ │ └── MainApp.java ├── nb-configuration.xml └── nbactions.xml ├── restclient-lib ├── src │ ├── test │ │ ├── resources │ │ │ ├── org │ │ │ │ └── wiztools │ │ │ │ │ └── restclient │ │ │ │ │ └── xml │ │ │ │ │ ├── charset3.xml │ │ │ │ │ ├── charset2.xml │ │ │ │ │ └── charset1.xml │ │ │ ├── issue_191 │ │ │ │ └── one-line.json │ │ │ ├── subhash_by_aarthi.jpeg │ │ │ ├── reqOAuth2Bearer.rcq │ │ │ ├── reqBodyFile.rcq │ │ │ ├── reqSsl.rcq │ │ │ ├── reqBodyString.rcq │ │ │ ├── reqNtlm.rcq │ │ │ ├── reqBodyMultipart.rcq │ │ │ ├── reqFromXml.rcq │ │ │ ├── input_ISO.xml │ │ │ ├── resFromXml.rcs │ │ │ ├── output_ISO.xml │ │ │ └── resTestScriptIntegrity.rcq │ │ └── java │ │ │ └── org │ │ │ └── wiztools │ │ │ └── restclient │ │ │ ├── util │ │ │ ├── XMLIndentUtilTest.java │ │ │ ├── HttpUtilTest.java │ │ │ └── JSONUtilTest.java │ │ │ ├── SslTest.java │ │ │ └── AuthElementTest.java │ └── main │ │ └── java │ │ └── org │ │ └── wiztools │ │ └── restclient │ │ ├── bean │ │ ├── BasicAuth.java │ │ ├── DigestAuth.java │ │ ├── MultipartMode.java │ │ ├── ReqEntityString.java │ │ ├── BasicAuthBean.java │ │ ├── DigestAuthBean.java │ │ ├── ReqEntityByteArray.java │ │ ├── ReqEntityStringPart.java │ │ ├── AuthorizationHeaderAuth.java │ │ ├── ReqEntityFile.java │ │ ├── ReqEntity.java │ │ ├── ReqEntityUrlStream.java │ │ ├── UsernamePasswordAuth.java │ │ ├── Auth.java │ │ ├── OAuth2BearerAuth.java │ │ ├── TestExceptionResult.java │ │ ├── ContentType.java │ │ ├── NtlmAuth.java │ │ ├── ReqEntitySimple.java │ │ ├── ReqEntityFilePart.java │ │ ├── BasicDigestAuth.java │ │ ├── ReqEntityMultipart.java │ │ ├── MAuth.java │ │ ├── ReqEntityStream.java │ │ ├── ReqEntityPart.java │ │ ├── SSLReq.java │ │ ├── TestException.java │ │ ├── MultipartSubtype.java │ │ ├── TestResult.java │ │ ├── Response.java │ │ ├── HTTPVersion.java │ │ ├── SSLKeyStore.java │ │ ├── Request.java │ │ ├── SSLHostnameVerifier.java │ │ ├── OAuth2BearerAuthBean.java │ │ ├── AbstractReqEntitySimpleBean.java │ │ ├── HTTPAuthMethod.java │ │ ├── CookieVersion.java │ │ ├── ReqResBean.java │ │ ├── KeyStoreType.java │ │ ├── ReqEntityUrlStreamBean.java │ │ ├── AuthorizationHeaderAuthBean.java │ │ ├── TestExceptionResultBean.java │ │ ├── UsernamePasswordAuthBaseBean.java │ │ ├── ReqEntityFileBean.java │ │ ├── ReqEntityStringBean.java │ │ ├── ReqEntityStringPartBean.java │ │ ├── ContentTypeBean.java │ │ ├── ReqEntityByteArrayBean.java │ │ ├── RequestExecuter.java │ │ ├── SSLKeyStoreBean.java │ │ ├── ReqEntityBasePart.java │ │ ├── NtlmAuthBean.java │ │ ├── MAuthBean.java │ │ ├── ReqEntityFilePartBean.java │ │ ├── BasicDigestAuthBaseBean.java │ │ └── HTTPMethod.java │ │ ├── OptionsLock.java │ │ ├── RCConstants.java │ │ ├── test │ │ └── RESTTestCase.java │ │ ├── MultipleRequestInSameRequestExecuterException.java │ │ ├── persistence │ │ ├── XMLException.java │ │ ├── PersistenceRead.java │ │ ├── PersistenceWrite.java │ │ ├── PersistenceException.java │ │ └── XMLCollectionUtil.java │ │ ├── Base64Exception.java │ │ ├── http │ │ ├── TrustAllTrustStrategy.java │ │ └── RESTClientCookieStore.java │ │ ├── ViewAdapter.java │ │ ├── MessageI18N.java │ │ ├── RESTTestCase.java │ │ ├── AppBundler.java │ │ ├── ServiceLocator.java │ │ ├── util │ │ ├── IDNUtil.java │ │ ├── MultiEntryRes.java │ │ ├── HTMLIndentUtil.java │ │ ├── ConfigUtil.java │ │ ├── MultiEntryUtil.java │ │ ├── ContentTypesCommon.java │ │ ├── XMLIndentUtil.java │ │ └── JSONUtil.java │ │ ├── IGlobalOptions.java │ │ ├── Versions.java │ │ └── View.java └── build.gradle ├── app-update-ws ├── README.md └── restclient.json ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── dist-build.sh ├── settings.gradle ├── .gitignore ├── .travis.yml ├── copyDropboxSnapsot.sh ├── restclient-server ├── build.gradle └── src │ └── main │ └── java │ └── org │ └── wiztools │ └── restclient │ └── server │ ├── Util.java │ └── TraceServer.java ├── CONTRIBUTING.md ├── mac-run-ui.sh ├── restclient-cli ├── build.gradle └── src │ └── main │ └── java │ └── org │ └── wiztools │ └── restclient │ └── cli │ └── NonExistFileGenerator.java ├── README.md └── gradlew.bat /.java-version: -------------------------------------------------------------------------------- 1 | 1.8 2 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | version=103.7.2-SNAPSHOT 2 | -------------------------------------------------------------------------------- /restclient-ui/graphics-src/README.md: -------------------------------------------------------------------------------- 1 | Created using Art Text 2 in Mac. 2 | -------------------------------------------------------------------------------- /restclient-jfx/src/main/resources/styles/Styles.css: -------------------------------------------------------------------------------- 1 | .button { 2 | -fx-font-weight: bold; 3 | } 4 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/org/wiztools/restclient/xml/charset3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /app-update-ws/README.md: -------------------------------------------------------------------------------- 1 | To be uploaded to: 2 | 3 | http://static.wiztools.org/v/restclient.json 4 | 5 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/org/wiztools/restclient/xml/charset2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /restclient-jfx/src/main/resources/styles/urlpane.css: -------------------------------------------------------------------------------- 1 | /* 2 | * Empty Stylesheet file. 3 | */ 4 | 5 | .mainFxmlClass { 6 | 7 | } 8 | -------------------------------------------------------------------------------- /dist-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ./gradlew clean build fatJar createApp createAppZip createDmg 4 | ./gradlew assembleDist -p restclient-ui 5 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/issue_191/one-line.json: -------------------------------------------------------------------------------- 1 | {"date":"2013-11-18","performance":1.015786164055542498,"totalValue":43903.53} 2 | -------------------------------------------------------------------------------- /restclient-ui/ant-lib/appbundler-1.0ea.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/ant-lib/appbundler-1.0ea.jar -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/org/wiztools/restclient/xml/charset1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /restclient-ui/ant-lib/ant-xpath-task-1.0-SNAPSHOT.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/ant-lib/ant-xpath-task-1.0-SNAPSHOT.jar -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/subhash_by_aarthi.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-lib/src/test/resources/subhash_by_aarthi.jpeg -------------------------------------------------------------------------------- /restclient-ui/graphics-src/mac-icon_1024.artx/doc.thread: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/mac-icon_1024.artx/doc.thread -------------------------------------------------------------------------------- /restclient-ui/src/main/app-resources/rest-client_30.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/app-resources/rest-client_30.icns -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include 'restclient-server' 2 | include 'restclient-lib' 3 | include 'restclient-ui' 4 | include 'restclient-cli' 5 | // include 'restclient-jfx' 6 | -------------------------------------------------------------------------------- /restclient-ui/graphics-src/30_icon_art_text2.artx/doc.thread: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/30_icon_art_text2.artx/doc.thread -------------------------------------------------------------------------------- /restclient-ui/graphics-src/rest-client-splash.artx/doc.thread: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/rest-client-splash.artx/doc.thread -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/add.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/cog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/cog.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/go.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/go.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/key.png -------------------------------------------------------------------------------- /restclient-ui/graphics-src/mac-icon_1024.artx/Preview/preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/mac-icon_1024.artx/Preview/preview.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/edit.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/stop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/stop.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/wand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/wand.png -------------------------------------------------------------------------------- /restclient-ui/graphics-src/30_icon_art_text2.artx/Preview/preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/30_icon_art_text2.artx/Preview/preview.png -------------------------------------------------------------------------------- /restclient-ui/graphics-src/mac-icon_1024.artx/QuickLook/Preview.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/mac-icon_1024.artx/QuickLook/Preview.pdf -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/Splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/Splash.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/cog@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/cog@2x.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/computer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/computer.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/delete.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/fv_exit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/fv_exit.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/fv_file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/fv_file.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/logo_30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/logo_30.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/question.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/question.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/test/eye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/test/eye.png -------------------------------------------------------------------------------- /restclient-ui/graphics-src/30_icon_art_text2.artx/QuickLook/Preview.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/30_icon_art_text2.artx/QuickLook/Preview.pdf -------------------------------------------------------------------------------- /restclient-ui/graphics-src/rest-client-splash.artx/Preview/preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/rest-client-splash.artx/Preview/preview.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/fv_archive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/fv_archive.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/fv_folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/fv_folder.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/fv_request.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/fv_request.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/pencil_add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/pencil_add.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/quick_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/quick_test.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/test/cross.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/test/cross.png -------------------------------------------------------------------------------- /restclient-ui/graphics-src/rest-client-splash.artx/QuickLook/Preview.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/graphics-src/rest-client-splash.artx/QuickLook/Preview.pdf -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/fv_response.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/fv_response.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/test/accept.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/test/accept.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/insert_template.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/insert_template.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/load_from_file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/load_from_file.png -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/insert_parameters.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mdsol/rest-client/master/restclient-ui/src/main/resources/org/wiztools/restclient/insert_parameters.png -------------------------------------------------------------------------------- /app-update-ws/restclient.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "103.7.2", 3 | "dl_url": "https://github.com/wiztools/rest-client/releases/tag/3.7.1", 4 | "release_notes_url": "https://github.com/wiztools/rest-client/releases/tag/3.7.1" 5 | } 6 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/BasicAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface BasicAuth extends BasicDigestAuth { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/DigestAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface DigestAuth extends BasicDigestAuth { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/lifecycle/Shutdown.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.lifecycle; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface Shutdown { 8 | void onShutdown(); 9 | } 10 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/lifecycle/Startup.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.lifecycle; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface Startup { 8 | void onStartup(); 9 | } 10 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/MultipartMode.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public enum MultipartMode { 8 | BROWSER_COMPATIBLE, RFC_6532, STRICT; 9 | } 10 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/ScrollableComponent.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | /** 4 | * @author FS 5 | */ 6 | public interface ScrollableComponent { 7 | public void setScrollSpeed(int scrollSpeed); 8 | } 9 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/TextEditorSyntax.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public enum TextEditorSyntax { 8 | NONE, GROOVY, XML, JSON, JS, HTML, CSS; 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/OptionsLock.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | import java.io.Closeable; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface OptionsLock extends Closeable { 10 | 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityString.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface ReqEntityString extends ReqEntitySimple { 8 | String getBody(); 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/BasicAuthBean.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public class BasicAuthBean extends BasicDigestAuthBaseBean implements BasicAuth { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/DigestAuthBean.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public class DigestAuthBean extends BasicDigestAuthBaseBean implements DigestAuth { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityByteArray.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface ReqEntityByteArray extends ReqEntitySimple { 8 | byte[] getBody(); 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityStringPart.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface ReqEntityStringPart extends ReqEntityPart { 8 | String getPart(); 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/AuthorizationHeaderAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface AuthorizationHeaderAuth extends Auth { 8 | String getAuthorizationHeaderValue(); 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityFile.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.File; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface ReqEntityFile extends ReqEntitySimple { 10 | File getBody(); 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntity.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface ReqEntity extends Cloneable, Serializable { 10 | Object clone(); 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityUrlStream.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.net.URL; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface ReqEntityUrlStream extends ReqEntityStream { 10 | URL getUrl(); 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/UsernamePasswordAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface UsernamePasswordAuth extends Auth { 8 | String getUsername(); 9 | char[] getPassword(); 10 | } 11 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/ViewPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | import java.awt.Component; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface ViewPanel { 10 | Component getComponent(); 11 | 12 | void clear(); 13 | } 14 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/Auth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * Marker interface to hold all Auth types. 7 | * @author subwiz 8 | */ 9 | public interface Auth extends Serializable { 10 | 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/OAuth2BearerAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface OAuth2BearerAuth extends AuthorizationHeaderAuth { 8 | 9 | String getOAuth2BearerToken(); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/dnd/DndAction.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.dnd; 2 | 3 | import java.io.File; 4 | import java.util.List; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | public interface DndAction { 11 | void onDrop(List files); 12 | } 13 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/TestExceptionResult.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface TestExceptionResult { 8 | 9 | String getExceptionMessage(); 10 | 11 | int getLineNumber(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqbody/ParameterGenerationListener.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqbody; 2 | 3 | /** 4 | * 5 | * @author schandran 6 | */ 7 | public interface ParameterGenerationListener { 8 | public void onParameterGeneration(String params); 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ContentType.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.nio.charset.Charset; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface ContentType { 10 | String getContentType(); 11 | Charset getCharset(); 12 | } 13 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/NtlmAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface NtlmAuth extends UsernamePasswordAuth { 8 | 9 | String getDomain(); 10 | 11 | String getWorkstation(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /restclient-server/target/ 2 | /restclient-lib/target/ 3 | /restclient-ui/target/ 4 | /restclient-cli/target/ 5 | /restclient-jfx/target/ 6 | /target/ 7 | /build/ 8 | **/build/ 9 | .idea 10 | *.iml 11 | .gradle 12 | /.nb-gradle/ 13 | .classpath 14 | .project 15 | .settings/ 16 | .vscode/ 17 | bin/ 18 | out/ 19 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/RCConstants.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | /** 4 | * 5 | * @author Subhash 6 | */ 7 | public interface RCConstants { 8 | public final String TITLE = "WizTools.org RESTClient "; 9 | public final String SHORT_TITLE = "RESTClient "; 10 | } 11 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntitySimple.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface ReqEntitySimple extends ReqEntity { 8 | ContentType getContentType(); 9 | String getContentTypeCharsetFormatted(); 10 | } 11 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityFilePart.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.File; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface ReqEntityFilePart extends ReqEntityPart { 10 | File getPart(); 11 | String getFilename(); 12 | } 13 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqbody/ContentTypeCharsetChangeListener.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqbody; 2 | 3 | /** 4 | * 5 | * @author Subhash 6 | */ 7 | public interface ContentTypeCharsetChangeListener { 8 | public void changed(String contentType, String charSet); 9 | } 10 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/BasicDigestAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public interface BasicDigestAuth extends UsernamePasswordAuth { 8 | String getHost(); 9 | String getRealm(); 10 | boolean isPreemptive(); 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/reqOAuth2Bearer.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1http://localhost:10101/GETsubhash 3 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/test/RESTTestCase.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.test; 2 | 3 | /** 4 | * This is a backward compatability class held for legacy reasons. 5 | * @author subwiz 6 | */ 7 | @Deprecated 8 | public class RESTTestCase extends org.wiztools.restclient.RESTTestCase { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/reqBodyFile.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1http://localhost:10101/POST/etc/hosts 3 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/reqSsl.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1https://www.webshop.co.uk/GETALLOW_ALL 3 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqbody/AddMultipartPartListener.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqbody; 2 | 3 | import org.wiztools.restclient.bean.ReqEntityPart; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface AddMultipartPartListener { 10 | void addPart(ReqEntityPart part); 11 | } 12 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: java 2 | os: osx 3 | osx_image: xcode8 4 | before_cache: 5 | - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock 6 | - rm -fr $HOME/.gradle/caches/*/plugin-resolution/ 7 | cache: 8 | directories: 9 | - $HOME/.gradle/caches/ 10 | - $HOME/.gradle/wrapper/ 11 | install: ./gradlew assemble 12 | script: ./gradlew check 13 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/component/BodyPopupMenuListener.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.component; 2 | 3 | /** 4 | * 5 | * @author subhash 6 | */ 7 | public interface BodyPopupMenuListener { 8 | void onSuccess(String msg); 9 | void onFailure(String msg); 10 | void onMessage(String msg); 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/reqBodyString.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1http://localhost:10101/POSTSubhash loves Aarthi 3 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/resbody/ResBodyNonePanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.resbody; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public class ResBodyNonePanel extends AbstractResBody { 8 | 9 | @Override 10 | public void clearUI() { 11 | // do nothing! 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/MultiEntryAdd.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | import java.util.List; 4 | import java.util.Map; 5 | 6 | import org.wiztools.restclient.util.MultiEntryRes; 7 | 8 | /** 9 | * 10 | * @author Subhash 11 | */ 12 | interface MultiEntryAdd { 13 | public void add(MultiEntryRes res); 14 | } 15 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityMultipart.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface ReqEntityMultipart extends ReqEntity { 10 | MultipartSubtype getSubtype(); 11 | MultipartMode getMode(); 12 | List getBody(); 13 | } 14 | -------------------------------------------------------------------------------- /copyDropboxSnapsot.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | source ./gradle.properties 4 | 5 | CLI=restclient-cli/build/libs/restclient-cli-fat-${version}.jar 6 | UI=restclient-ui/build/libs/restclient-ui-fat-${version}.jar 7 | DMG=restclient-ui/build/distributions/restclient-ui-${version}.dmg 8 | 9 | cp $CLI $UI ~/Dropbox/Public/ 10 | 11 | if [ -e $DMG ]; then 12 | cp $DMG ~/Dropbox/Public/ 13 | fi 14 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/MultipleRequestInSameRequestExecuterException.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public class MultipleRequestInSameRequestExecuterException extends RuntimeException { 8 | public MultipleRequestInSameRequestExecuterException(String msg){ 9 | super(msg); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/MAuth.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.FileNotFoundException; 4 | 5 | public interface MAuth extends Auth { 6 | String getAppUUID(); 7 | 8 | String getPrivateKeyFile(); 9 | 10 | String getPrivateKeyFromFile() throws FileNotFoundException; 11 | 12 | boolean isV2OnlySignRequests(); 13 | } 14 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/ISessionView.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | import org.wiztools.restclient.bean.Request; 4 | import org.wiztools.restclient.bean.Response; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | interface ISessionView { 11 | public void add(Request request, Response response); 12 | public void clear(); 13 | } 14 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityStream.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.IOException; 4 | import java.io.InputStream; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | public interface ReqEntityStream extends ReqEntitySimple { 11 | InputStream getBody() throws IOException; 12 | long getLength() throws IOException; 13 | } 14 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/reqNtlm.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1http://localhost:10101/GETtestdomaintestworkstationsubwizcGFzc3dvcmQ= 3 | -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/PasswordHelp.txt: -------------------------------------------------------------------------------- 1 | RESTClient uses Base64 encoding for storing passwords. This is a basic measure to ensure that the passwords are not visible to the naked eye (although this is easily computable). When writing/editing RESTClient files by hand, it might be needed to convert passwords to the format RESTClient understands. For purposes like these, this plugin might be used. -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/uioptionsdialog.properties: -------------------------------------------------------------------------------- 1 | # This lists the org.wiztools.restclient.ui.OptionsDialog panels and their tab name 2 | 3 | panel=Connection:org.wiztools.restclient.ui.option.OptionsConnectionPanel,\ 4 | Proxy:org.wiztools.restclient.ui.option.OptionsProxyPanel,\ 5 | Font:org.wiztools.restclient.ui.option.OptionsFontPanel,\ 6 | Etc.:org.wiztools.restclient.ui.option.OptionsEtcPanel 7 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/ReqEntityPart.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.Serializable; 4 | import org.wiztools.commons.MultiValueMap; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | public interface ReqEntityPart extends Serializable { 11 | String getName(); 12 | ContentType getContentType(); 13 | MultiValueMap getFields(); 14 | } 15 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/SSLReq.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface SSLReq extends Serializable { 10 | 11 | SSLHostnameVerifier getHostNameVerifier(); 12 | boolean isTrustAllCerts(); 13 | 14 | SSLKeyStore getKeyStore(); 15 | 16 | SSLKeyStore getTrustStore(); 17 | } 18 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/StatusBarPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | import com.google.inject.ImplementedBy; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | @ImplementedBy(StatusBarPanelImpl.class) 10 | public interface StatusBarPanel extends ViewPanel { 11 | void setStatus(String status); 12 | 13 | void showProgressBar(); 14 | void hideProgressBar(); 15 | } 16 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/TestException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * To change this template, choose Tools | Templates 3 | * and open the template in the editor. 4 | */ 5 | 6 | package org.wiztools.restclient.bean; 7 | 8 | /** 9 | * 10 | * @author Subhash 11 | */ 12 | public class TestException extends Exception { 13 | public TestException(final String msg, final Throwable err){ 14 | super(msg, err); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /restclient-server/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java' 2 | 3 | allprojects { 4 | tasks.withType(JavaCompile) { 5 | options.compilerArgs << '-Xlint:deprecation' << '-Xlint:unchecked' 6 | } 7 | } 8 | 9 | repositories { 10 | mavenLocal() 11 | mavenCentral() 12 | } 13 | 14 | dependencies { 15 | compile 'com.github.wiztools:commons-lib:0.4.3', 16 | 'org.eclipse.jetty:jetty-servlet:9.3.2.v20150730' 17 | testCompile 'junit:junit:4.+' 18 | } 19 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/resstatus/ResStatusPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.resstatus; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.ui.ViewPanel; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | @ImplementedBy(ResStatusPanelImpl.class) 11 | public interface ResStatusPanel extends ViewPanel { 12 | String getStatus(); 13 | void setStatus(String status); 14 | } 15 | -------------------------------------------------------------------------------- /restclient-ui/MAC-BUILD.md: -------------------------------------------------------------------------------- 1 | Mac distribution build moved is triggered by Ant script: `mac-dist.xml`. 2 | 3 | This Ant script depends on two libraries (Ant tasks): 4 | 5 | * [ant-xpath-task](https://github.com/wiztools/ant-xpath-task): Version used: 3010ed4c8b0dacbcfe6e8a4fa4b6630443bb6897. 6 | * [appbundler](https://bitbucket.org/infinitekind/appbundler): Version used: d64a8d09f32a67ffcfcdc7b2abbbe3ac4d8a2d6d. 7 | 8 | These libraries are checked in to the folder `ant-lib`. 9 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/FontableEditor.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | import java.awt.Font; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface FontableEditor { 10 | public String FONT_NAME_PROPERTY = "font.options.font"; 11 | public String FONT_SIZE_PROPERTY = "font.options.fontSize"; 12 | 13 | public void setEditorFont(Font font); 14 | public Font getEditorFont(); 15 | } 16 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/MultipartSubtype.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public enum MultipartSubtype { 8 | FORM_DATA, MIXED, DIGEST, MESSAGE, ALTERNATIVE, RELATED, REPORT, SIGNED, 9 | ENCRYPTED, X_MIXED_REPLACE, BYTERANGE; 10 | 11 | @Override 12 | public String toString() { 13 | return this.name().toLowerCase().replaceAll("_", "-"); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/reqBodyMultipart.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1http://localhost:10101/POST/etc/hostsHello Babes! 3 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/lifecycle/LifecycleManager.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.lifecycle; 2 | 3 | import com.google.inject.ImplementedBy; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | @ImplementedBy(LifecycleManagerImpl.class) 10 | public interface LifecycleManager { 11 | void registerStartupListener(Startup startupListener); 12 | void registerShutdownListener(Shutdown shutdownListener); 13 | void runStartupListeners(); 14 | } 15 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | 1. Clone this repo by executing in your workspace. Checkout `develop` branch 4 | 5 | $ git clone git@github.com:mdsol/rest-client.git 6 | $ cd rest-client 7 | $ git checkout develop 8 | 9 | 10 | ## Continuous Integration Server (Travis) 11 | Travis server is configured via .travis.yml file. 12 | To get environment variable in to the build container add `REPO_USERNAME` and `REPO_PASSWORD` to travis settings for the project 13 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/FileChooserType.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | /** 4 | * 5 | * @author Subhash 6 | */ 7 | public enum FileChooserType { 8 | OPEN_REQUEST, 9 | OPEN_RESPONSE, 10 | OPEN_ARCHIVE, 11 | OPEN_REQUEST_BODY, 12 | OPEN_HISTORY, 13 | OPEN_TEST_SCRIPT, 14 | OPEN_GENERIC, 15 | 16 | SAVE_REQUEST, 17 | SAVE_RESPONSE, 18 | SAVE_ARCHIVE, 19 | SAVE_RESPONSE_BODY, 20 | SAVE_HISTORY; 21 | } 22 | -------------------------------------------------------------------------------- /mac-run-ui.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # read version: 4 | source ./gradle.properties 5 | 6 | jcmd=java 7 | if [ -n "$JAVA_HOME" ]; then 8 | jcmd=$JAVA_HOME/bin/java 9 | fi 10 | 11 | $jcmd -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog \ 12 | -Dorg.apache.commons.logging.simplelog.log.org.apache.http.wire=DEBUG \ 13 | -Dapple.laf.useScreenMenuBar=true \ 14 | -Dapple.awt.application.name=RESTClient \ 15 | -jar restclient-ui/build/libs/restclient-ui-fat-$version.jar 16 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqssl/ReqSSLPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqssl; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.bean.SSLReq; 5 | import org.wiztools.restclient.ui.ViewPanel; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(ReqSSLPanelImpl.class) 12 | public interface ReqSSLPanel extends ViewPanel { 13 | 14 | SSLReq getSslReq(); 15 | void setSslReq(SSLReq sslReq); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/persistence/XMLException.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.persistence; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public class XMLException extends PersistenceException { 8 | public XMLException(String msg){ 9 | super(msg); 10 | } 11 | 12 | public XMLException(String msg, Throwable t){ 13 | super(msg, t); 14 | } 15 | 16 | public XMLException(Throwable cause) { 17 | super(cause); 18 | } 19 | } -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/reqFromXml.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1http://localhost:10101/POSTrealmusernamecGFzc3dvcmQ=
Body Text 3 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/resbody/ResBodyPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.resbody; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.bean.ContentType; 5 | import org.wiztools.restclient.ui.ViewPanel; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(ResBodyPanelImpl.class) 12 | public interface ResBodyPanel extends ViewPanel { 13 | void setBody(byte[] data, ContentType type); 14 | byte[] getBody(); 15 | } 16 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/restest/ResTestPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.restest; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.bean.TestResult; 5 | import org.wiztools.restclient.ui.ViewPanel; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(ResTestPanelImpl.class) 12 | public interface ResTestPanel extends ViewPanel { 13 | TestResult getTestResult(); 14 | void setTestResult(TestResult result); 15 | } 16 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/Base64Exception.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public class Base64Exception extends RuntimeException { 8 | 9 | public Base64Exception(String string) { 10 | super(string); 11 | } 12 | 13 | public Base64Exception(Throwable thrwbl) { 14 | super(thrwbl); 15 | } 16 | 17 | public Base64Exception(String string, Throwable thrwbl) { 18 | super(string, thrwbl); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/resstats/ResStatsPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.resstats; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.ui.ViewPanel; 5 | 6 | /** 7 | * 8 | * @author subhash 9 | */ 10 | @ImplementedBy(ResStatsPanelImpl.class) 11 | public interface ResStatsPanel extends ViewPanel { 12 | long getExecutionTime(); 13 | long getBodySize(); 14 | 15 | void setExecutionTime(long time); 16 | void setBodySize(long size); 17 | } 18 | -------------------------------------------------------------------------------- /restclient-ui/src/main/resources/org/wiztools/restclient/test-script.template: -------------------------------------------------------------------------------- 1 | /* 2 | * This is a template provided by RESTClient. Modify as per need. 3 | */ 4 | 5 | // The test class name should end with `Test'--this is a convention: 6 | public class TemplateClassTest 7 | extends org.wiztools.restclient.RESTTestCase { 8 | 9 | // Test method names must start with `test': 10 | public void testStatus() { 11 | if(response.getStatusCode() != 200) { 12 | fail("This will fail the test!"); 13 | } 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/TestResult.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.Serializable; 4 | import java.util.List; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | public interface TestResult extends Serializable { 11 | 12 | int getErrorCount(); 13 | 14 | List getErrors(); 15 | 16 | int getFailureCount(); 17 | 18 | List getFailures(); 19 | 20 | String getMessage(); 21 | 22 | int getRunCount(); 23 | 24 | } 25 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/resheader/ResHeaderPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.resheader; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.commons.MultiValueMap; 5 | import org.wiztools.restclient.ui.ViewPanel; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(ResHeaderPanelImpl.class) 12 | public interface ResHeaderPanel extends ViewPanel { 13 | MultiValueMap getHeaders(); 14 | void setHeaders(MultiValueMap headers); 15 | } 16 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/persistence/PersistenceRead.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.persistence; 2 | 3 | import java.io.File; 4 | import java.io.IOException; 5 | import org.wiztools.restclient.bean.Request; 6 | import org.wiztools.restclient.bean.Response; 7 | 8 | /** 9 | * 10 | * @author subwiz 11 | */ 12 | public interface PersistenceRead { 13 | Request getRequestFromFile(File f) throws IOException, PersistenceException; 14 | Response getResponseFromFile(File f) throws IOException, PersistenceException; 15 | } 16 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqauth/ReqAuthPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqauth; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import java.util.List; 5 | import org.wiztools.restclient.bean.Auth; 6 | import org.wiztools.restclient.ui.ViewPanel; 7 | 8 | /** 9 | * 10 | * @author subwiz 11 | */ 12 | @ImplementedBy(ReqAuthPanelImpl.class) 13 | public interface ReqAuthPanel extends ViewPanel { 14 | 15 | void setAuth(Auth auth); 16 | Auth getAuth(); 17 | List validateIfFilled(); 18 | } 19 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqssl/KeyStoreListener.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqssl; 2 | 3 | import org.wiztools.restclient.bean.SSLKeyStore; 4 | 5 | /** 6 | * 7 | * @author subwiz 8 | */ 9 | public interface KeyStoreListener { 10 | /** 11 | * Triggered when Ok button is pressed. 12 | * @param store Will always be NOT null. 13 | */ 14 | void onOk(SSLKeyStore store); 15 | 16 | /** 17 | * Triggered when Cancel button is clicked. 18 | */ 19 | void onCancel(); 20 | } 21 | -------------------------------------------------------------------------------- /restclient-jfx/src/main/java/org/wiztools/restclient/jfx/MenuController.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.jfx; 2 | 3 | import java.net.URL; 4 | import java.util.ResourceBundle; 5 | import javafx.fxml.Initializable; 6 | 7 | /** 8 | * FXML Controller class 9 | * 10 | * @author subwiz 11 | */ 12 | public class MenuController implements Initializable { 13 | 14 | /** 15 | * Initializes the controller class. 16 | */ 17 | @Override 18 | public void initialize(URL url, ResourceBundle rb) { 19 | // TODO 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/persistence/PersistenceWrite.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.persistence; 2 | 3 | import java.io.File; 4 | import java.io.IOException; 5 | import org.wiztools.restclient.bean.Request; 6 | import org.wiztools.restclient.bean.Response; 7 | 8 | /** 9 | * 10 | * @author subwiz 11 | */ 12 | public interface PersistenceWrite { 13 | void writeRequest(Request req, File f) throws IOException, PersistenceException; 14 | void writeResponse(Response res, File f) throws IOException, PersistenceException; 15 | } 16 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqbody/ReqBodyPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqbody; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.bean.ReqEntity; 5 | import org.wiztools.restclient.ui.ViewPanel; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(ReqBodyPanelImpl.class) 12 | public interface ReqBodyPanel extends ViewPanel { 13 | void enableBody(); 14 | void disableBody(); 15 | 16 | void setEntity(ReqEntity entity); 17 | ReqEntity getEntity(); 18 | } 19 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/http/TrustAllTrustStrategy.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.http; 2 | 3 | import java.security.cert.CertificateException; 4 | import java.security.cert.X509Certificate; 5 | import org.apache.http.conn.ssl.TrustStrategy; 6 | 7 | /** 8 | * 9 | * @author subhash 10 | */ 11 | public class TrustAllTrustStrategy implements TrustStrategy { 12 | 13 | @Override 14 | public boolean isTrusted(X509Certificate[] xcs, String string) throws CertificateException { 15 | return true; 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/input_ISO.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 4 | 71714 5 | someuser 6 | somepassword 7 | 2012-04-19T11:15:43 8 | someurl.com 9 | 12892 10 | 11 | -------------------------------------------------------------------------------- /restclient-jfx/src/main/java/org/wiztools/restclient/jfx/req/MethodPaneController.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.jfx.req; 2 | 3 | import java.net.URL; 4 | import java.util.ResourceBundle; 5 | import javafx.fxml.Initializable; 6 | 7 | /** 8 | * FXML Controller class 9 | * 10 | * @author subhash 11 | */ 12 | public class MethodPaneController implements Initializable { 13 | 14 | /** 15 | * Initializes the controller class. 16 | */ 17 | @Override 18 | public void initialize(URL url, ResourceBundle rb) { 19 | // TODO 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqmethod/ReqMethodPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqmethod; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.bean.HTTPMethod; 5 | import org.wiztools.restclient.ui.ViewPanel; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(ReqMethodPanelImpl.class) 12 | public interface ReqMethodPanel extends ViewPanel { 13 | 14 | boolean doesSelectedMethodSupportEntityBody(); 15 | 16 | HTTPMethod getSelectedMethod(); 17 | 18 | void setSelectedMethod(HTTPMethod method); 19 | 20 | } 21 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqtest/ReqTestPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqtest; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.bean.Request; 5 | import org.wiztools.restclient.bean.Response; 6 | import org.wiztools.restclient.ui.ViewPanel; 7 | 8 | /** 9 | * 10 | * @author subwiz 11 | */ 12 | @ImplementedBy(ReqTestPanelImpl.class) 13 | public interface ReqTestPanel extends ViewPanel { 14 | String getTestScript(); 15 | void setTestScript(String script); 16 | void runClonedRequestTest(Request request, Response response); 17 | } 18 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/ViewAdapter.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | import org.wiztools.restclient.bean.Response; 4 | import org.wiztools.restclient.bean.Request; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | public class ViewAdapter implements View { 11 | 12 | public void doStart(Request request) { 13 | 14 | } 15 | 16 | public void doResponse(Response response) { 17 | 18 | } 19 | 20 | public void doCancelled() { 21 | 22 | } 23 | 24 | public void doEnd() { 25 | 26 | } 27 | 28 | public void doError(String error) { 29 | 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/Response.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.Serializable; 4 | import org.wiztools.commons.MultiValueMap; 5 | 6 | /** 7 | * 8 | * @author subwiz 9 | */ 10 | public interface Response extends Cloneable, Serializable { 11 | 12 | long getExecutionTime(); 13 | 14 | MultiValueMap getHeaders(); 15 | 16 | ContentType getContentType(); 17 | 18 | byte[] getResponseBody(); 19 | 20 | int getStatusCode(); 21 | 22 | String getStatusLine(); 23 | 24 | TestResult getTestResult(); 25 | 26 | Object clone(); 27 | } 28 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/persistence/PersistenceException.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.persistence; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public class PersistenceException extends RuntimeException { 8 | 9 | // public PersistenceException() { 10 | // } 11 | 12 | public PersistenceException(String message) { 13 | super(message); 14 | } 15 | 16 | public PersistenceException(Throwable cause) { 17 | super(cause); 18 | } 19 | 20 | public PersistenceException(String message, Throwable cause) { 21 | super(message, cause); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/ScriptEditorFactory.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public final class ScriptEditorFactory { 8 | 9 | public static ScriptEditor getGroovyScriptEditor(){ 10 | return new RSyntaxScriptEditor(TextEditorSyntax.GROOVY); 11 | } 12 | 13 | public static ScriptEditor getXMLScriptEditor(){ 14 | return new RSyntaxScriptEditor(TextEditorSyntax.XML); 15 | } 16 | 17 | public static ScriptEditor getTextAreaScriptEditor(){ 18 | return new RSyntaxScriptEditor(TextEditorSyntax.NONE); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/AbstractScriptEditor.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public abstract class AbstractScriptEditor implements ScriptEditor { 8 | private String source; 9 | 10 | @Override 11 | public final void setText(String text) { 12 | source = text; 13 | setViewText(text); 14 | } 15 | 16 | @Override 17 | public final void setSourceText(String text) { 18 | source = text; 19 | } 20 | 21 | @Override 22 | public final String getSourceText() { 23 | return source; 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/MessageI18N.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | import java.text.MessageFormat; 4 | import java.util.ResourceBundle; 5 | 6 | /** 7 | * 8 | * @author Subhash 9 | */ 10 | public class MessageI18N { 11 | private static ResourceBundle rb = ResourceBundle.getBundle("org.wiztools.restclient.messages"); 12 | 13 | public static String getMessage(final String key){ 14 | return rb.getString(key); 15 | } 16 | 17 | public static String getMessage(final String key, final String[] parameters){ 18 | return MessageFormat.format(rb.getString(key), (Object) parameters); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/RESTTestCase.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | import org.wiztools.restclient.bean.Response; 4 | import org.wiztools.restclient.bean.Request; 5 | import groovy.util.GroovyTestCase; 6 | 7 | /** 8 | * 9 | * @author schandran 10 | */ 11 | public class RESTTestCase extends GroovyTestCase { 12 | 13 | protected Request request; 14 | protected Response response; 15 | 16 | public void setRequest(final Request request){ 17 | this.request = request; 18 | } 19 | 20 | public void setResponse(final Response response){ 21 | this.response = response; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/RESTUserInterface.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import java.awt.Component; 5 | import java.io.File; 6 | import javax.swing.JFrame; 7 | 8 | /** 9 | * 10 | * @author subwiz 11 | */ 12 | @ImplementedBy(RESTMain.class) 13 | public interface RESTUserInterface { 14 | 15 | public JFrame getFrame(); 16 | 17 | public File getOpenFile(final FileChooserType type); 18 | 19 | public File getOpenFile(final FileChooserType type, final Component parent); 20 | 21 | public File getSaveFile(final FileChooserType type); 22 | 23 | public RESTView getView(); 24 | 25 | } 26 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/AppBundler.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | /** 4 | * Properties defined by AppBundler: 5 | * https://bitbucket.org/infinitekind/appbundler 6 | * @author subwiz 7 | */ 8 | final class AppBundler { 9 | static final String LibraryDirectory = System.getProperty("LibraryDirectory"); 10 | static final String DocumentsDirectory = System.getProperty("DocumentsDirectory"); 11 | static final String CachesDirectory = System.getProperty("CachesDirectory"); 12 | static final String ApplicationSupportDirectory = System.getProperty("ApplicationSupportDirectory"); 13 | static final String SandboxEnabled = System.getProperty("SandboxEnabled"); 14 | } 15 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/resFromXml.rcs: -------------------------------------------------------------------------------- 1 | 2 | 11HTTP/1.1 200 OK
KipSRVNUQ2xpZW50IFRyYWNlU2VydmxldCoqCgoqTWV0aG9kKgoJR0VUCgoqUGF0aCBJbmZvKgoJLwoKKkhlYWRlcnMqCglIb3N0OiBsb2NhbGhvc3Q6MTAxMDEKCUNvbm5lY3Rpb246IEtlZXAtQWxpdmUKCVVzZXItQWdlbnQ6IEFwYWNoZS1IdHRwQ2xpZW50LzQuMi4xIChqYXZhIDEuNSkKCipRdWVyeSBTdHJpbmcqCgludWxsCgoqUGFyYW1ldGVycyoKCipCb2R5IChGaXJzdCAxMDAgY2hhcmFjdGVycyBvbmx5KSoKCQoK 3 | -------------------------------------------------------------------------------- /restclient-jfx/src/main/java/org/wiztools/restclient/jfx/FXMLController.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.jfx; 2 | 3 | import java.net.URL; 4 | import java.util.ResourceBundle; 5 | import javafx.event.ActionEvent; 6 | import javafx.fxml.FXML; 7 | import javafx.fxml.Initializable; 8 | import javafx.scene.control.ComboBox; 9 | 10 | public class FXMLController implements Initializable { 11 | 12 | @FXML 13 | private ComboBox urlCombo; 14 | 15 | @FXML 16 | private void handleButtonAction(ActionEvent event) { 17 | urlCombo.setValue("http://www.wiztools.org/"); 18 | } 19 | 20 | @Override 21 | public void initialize(URL url, ResourceBundle rb) { 22 | // TODO 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/ServiceLocator.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | import com.google.inject.Guice; 4 | import com.google.inject.Injector; 5 | import com.google.inject.Stage; 6 | import com.mycila.guice.ext.closeable.CloseableModule; 7 | import com.mycila.guice.ext.jsr250.Jsr250Module; 8 | 9 | /** 10 | * 11 | * @author subwiz 12 | */ 13 | public class ServiceLocator { 14 | private static final Injector injector = Guice.createInjector( 15 | Stage.PRODUCTION, new CloseableModule(), new Jsr250Module()); 16 | 17 | private ServiceLocator() {} 18 | 19 | public static T getInstance(Class c) { 20 | return injector.getInstance(c); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/output_ISO.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 5 | 6 | 7 | 71714 8 | 9 | 10 | someuser 11 | 12 | 13 | somepassword 14 | 15 | 16 | 2012-04-19T11:15:43 17 | 18 | 19 | someurl.com 20 | 21 | 22 | 12892 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/util/IDNUtil.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.util; 2 | 3 | import java.net.IDN; 4 | import java.net.MalformedURLException; 5 | import java.net.URL; 6 | 7 | /** 8 | * Utility to convert to IDN name. 9 | * @author subwiz 10 | */ 11 | public final class IDNUtil { 12 | public static URL getIDNizedURL(URL inUrl) throws IllegalArgumentException { 13 | try { 14 | return new URL(inUrl.getProtocol(), 15 | IDN.toASCII(inUrl.getHost()), 16 | inUrl.getPort(), 17 | inUrl.getFile()); 18 | } 19 | catch(MalformedURLException ex) { 20 | throw new IllegalArgumentException(ex); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /restclient-lib/src/test/resources/resTestScriptIntegrity.rcq: -------------------------------------------------------------------------------- 1 | 2 | 1.1http://localhost:10101/GET/* 3 | * This is a template provided by RESTClient. Modify as per need. 4 | */ 5 | 6 | // The test class name should end with `Test'--this is a convention: 7 | public class TemplateClassTest 8 | extends org.wiztools.restclient.RESTTestCase{ 9 | 10 | // Test method names should start with `test': 11 | public void testStatus(){ 12 | if(response.getStatusCode() != 200){ 13 | fail("This will fail the test!"); 14 | } 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /restclient-cli/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java' 2 | apply plugin: 'application' 3 | 4 | // Application plugin config: 5 | mainClassName = 'org.wiztools.restclient.cli.CliMain' 6 | applicationName = 'restclient-cli' 7 | applicationDefaultJvmArgs = ['-Xms128m', '-Xmx512m'] 8 | 9 | repositories { 10 | mavenLocal() 11 | mavenCentral() 12 | } 13 | 14 | task fatJar(type: Jar) { 15 | baseName = project.name + '-fat' 16 | 17 | manifest { 18 | attributes "Main-Class": "$mainClassName" 19 | } 20 | 21 | from { 22 | configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } 23 | } 24 | with jar 25 | } 26 | 27 | dependencies { 28 | compile project(':restclient-lib'), 29 | 'com.google.code.cli-parser:cli:7' 30 | testCompile 'junit:junit:4.+' 31 | } 32 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/HTTPVersion.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public enum HTTPVersion { 8 | HTTP_1_1("HTTP 1.1", "1.1"), 9 | HTTP_1_0("HTTP 1.0", "1.0"); 10 | 11 | private String msg; 12 | private String versionNumber; 13 | 14 | HTTPVersion(String desc, String versionNumber){ 15 | this.msg = desc; 16 | this.versionNumber = versionNumber; 17 | } 18 | 19 | public String versionNumber(){ 20 | return versionNumber; 21 | } 22 | 23 | @Override 24 | public String toString(){ 25 | return msg; 26 | } 27 | 28 | public static HTTPVersion getDefault(){ 29 | return HTTP_1_1; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/IGlobalOptions.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import java.io.File; 5 | import org.wiztools.commons.SystemProperty; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(GlobalOptions.class) 12 | public interface IGlobalOptions { 13 | 14 | File CONF_DIR = new File( 15 | SystemProperty.userHome + SystemProperty.fileSeparator 16 | + ".rest-client"); 17 | 18 | OptionsLock acquire(); 19 | 20 | String getProperty(String key); 21 | 22 | boolean isPropertyTrue(String key); 23 | 24 | void removeProperty(String key); 25 | 26 | void setProperty(String key, String value); 27 | 28 | void writeProperties(); 29 | 30 | } 31 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/SSLKeyStore.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.File; 4 | import java.io.IOException; 5 | import java.security.KeyStore; 6 | import java.security.KeyStoreException; 7 | import java.security.NoSuchAlgorithmException; 8 | import java.security.cert.CertificateException; 9 | import java.security.spec.InvalidKeySpecException; 10 | 11 | /** 12 | * 13 | * @author subwiz 14 | */ 15 | public interface SSLKeyStore { 16 | File getFile(); 17 | KeyStoreType getType(); 18 | char[] getPassword(); 19 | 20 | KeyStore getKeyStore() throws KeyStoreException, 21 | IOException, 22 | InvalidKeySpecException, 23 | NoSuchAlgorithmException, 24 | CertificateException; 25 | } 26 | -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqgo/ReqUrlGoPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqgo; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import java.awt.event.ActionListener; 5 | import org.wiztools.restclient.ui.ViewPanel; 6 | 7 | /** 8 | * 9 | * @author subwiz 10 | */ 11 | @ImplementedBy(ReqUrlGoPanelImpl.class) 12 | public interface ReqUrlGoPanel extends ViewPanel { 13 | enum ACTION_TYPE{GO, CANCEL}; 14 | 15 | void setAsRunning(); 16 | void setAsIdle(); 17 | 18 | void clearHistory(); 19 | 20 | boolean isIdle(); 21 | boolean isRunning(); 22 | 23 | String getUrlString(); 24 | void setUrlString(String url); 25 | 26 | boolean isSslUrl(); 27 | 28 | void addActionListener(ActionListener listener); 29 | } 30 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/util/MultiEntryRes.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.util; 2 | 3 | import java.util.ArrayList; 4 | import java.util.LinkedHashMap; 5 | import java.util.List; 6 | import java.util.Map; 7 | 8 | public class MultiEntryRes { 9 | private List linesNotMatching = new ArrayList<>(); 10 | private Map keyValMap = new LinkedHashMap<>(); 11 | 12 | public void addInvalidLine(String line) { 13 | linesNotMatching.add(line); 14 | } 15 | 16 | public void addEntry(String key, String value) { 17 | keyValMap.put(key, value); 18 | } 19 | 20 | public List getInvalidLines() { 21 | return linesNotMatching; 22 | } 23 | 24 | public Map getEntries() { 25 | return keyValMap; 26 | } 27 | } -------------------------------------------------------------------------------- /restclient-ui/src/main/java/org/wiztools/restclient/ui/reqetc/ReqEtcPanel.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.ui.reqetc; 2 | 3 | import com.google.inject.ImplementedBy; 4 | import org.wiztools.restclient.bean.CookieVersion; 5 | import org.wiztools.restclient.bean.HTTPVersion; 6 | import org.wiztools.restclient.ui.ViewPanel; 7 | 8 | /** 9 | * 10 | * @author subwiz 11 | */ 12 | @ImplementedBy(ReqEtcPanelImpl.class) 13 | public interface ReqEtcPanel extends ViewPanel { 14 | HTTPVersion getHttpVersion(); 15 | void setHttpVersion(HTTPVersion version); 16 | 17 | CookieVersion getCookieVersion(); 18 | void setCookieVersion(CookieVersion version); 19 | 20 | boolean isFollowRedirects(); 21 | void setFollowRedirects(boolean b); 22 | 23 | boolean isIgnoreResponseBody(); 24 | void setIgnoreResponseBody(boolean b); 25 | } 26 | -------------------------------------------------------------------------------- /restclient-jfx/src/main/resources/fxml/req/HeaderPane.fxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 |
28 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/Request.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | import java.io.Serializable; 4 | import java.net.HttpCookie; 5 | import java.net.URL; 6 | import java.util.List; 7 | import org.wiztools.commons.MultiValueMap; 8 | 9 | /** 10 | * 11 | * @author subwiz 12 | */ 13 | public interface Request extends Cloneable, Serializable { 14 | 15 | Auth getAuth(); 16 | 17 | ReqEntity getBody(); 18 | 19 | MultiValueMap getHeaders(); 20 | 21 | List getCookies(); 22 | 23 | HTTPVersion getHttpVersion(); 24 | 25 | HTTPMethod getMethod(); 26 | 27 | SSLReq getSslReq(); 28 | 29 | String getTestScript(); 30 | 31 | URL getUrl(); 32 | 33 | boolean isFollowRedirect(); 34 | 35 | boolean isIgnoreResponseBody(); 36 | 37 | Object clone(); 38 | } 39 | -------------------------------------------------------------------------------- /restclient-lib/src/main/java/org/wiztools/restclient/bean/SSLHostnameVerifier.java: -------------------------------------------------------------------------------- 1 | package org.wiztools.restclient.bean; 2 | 3 | /** 4 | * 5 | * @author subwiz 6 | */ 7 | public enum SSLHostnameVerifier { 8 | // Deprecation note: http://stackoverflow.com/questions/29207694/apache-httpclient-4-4-hostnameverifier-transition-from-4-3-x 9 | 10 | STRICT("Strict"), 11 | @Deprecated BROWSER_COMPATIBLE("Browser Compatible"), 12 | ALLOW_ALL("Allow All"); 13 | 14 | private final String displayName; 15 | SSLHostnameVerifier(String displayName){ 16 | this.displayName = displayName; 17 | } 18 | 19 | @Override 20 | public String toString(){ 21 | return displayName; 22 | } 23 | 24 | public static SSLHostnameVerifier[] getAll(){ 25 | return new SSLHostnameVerifier[]{STRICT, BROWSER_COMPATIBLE, ALLOW_ALL}; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /restclient-jfx/src/main/resources/fxml/req/UrlPane.fxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 |
19 | 20 |