{"id":18075948,"url":"https://github.com/itsyourap/argumentcatcher","last_synced_at":"2025-04-05T19:42:20.798Z","repository":{"id":115646620,"uuid":"492900797","full_name":"itsyourap/ArgumentCatcher","owner":"itsyourap","description":"Simple tool to catch arguments provided to an excecutable","archived":false,"fork":false,"pushed_at":"2024-04-22T06:10:19.000Z","size":26,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-11T17:58:41.719Z","etag":null,"topics":["argument","catch-argument","java"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/itsyourap.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null},"funding":{"github":"itsyourap","buy_me_a_coffee":"itsyourap"}},"created_at":"2022-05-16T15:46:23.000Z","updated_at":"2024-04-22T06:10:23.000Z","dependencies_parsed_at":"2023-06-26T21:18:37.812Z","dependency_job_id":null,"html_url":"https://github.com/itsyourap/ArgumentCatcher","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsyourap%2FArgumentCatcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsyourap%2FArgumentCatcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsyourap%2FArgumentCatcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsyourap%2FArgumentCatcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/itsyourap","download_url":"https://codeload.github.com/itsyourap/ArgumentCatcher/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247393539,"owners_count":20931809,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["argument","catch-argument","java"],"created_at":"2024-10-31T11:08:10.561Z","updated_at":"2025-04-05T19:42:20.766Z","avatar_url":"https://github.com/itsyourap.png","language":"Java","funding_links":["https://github.com/sponsors/itsyourap","https://buymeacoffee.com/itsyourap"],"categories":[],"sub_categories":[],"readme":"# ArgumentCatcher\n\nArgumentCatcher is a Java based executable made to capture arguments passed to it.\n\n## Usage Scenario\n\nSay you have an executable ```Foo.exe``` which launches ```Bar.exe``` and passes some arguments to it and ```Bar.exe```\ndoes some magic. Now you are curious about what arguments might have ```Foo.exe``` passed to ```Bar.exe``` so that the\nmagic happens. This is exactly where ArgumentCatcher comes into play.\n\n## Installation\n\nYou can download the latest Windows Executable or\nJAR [from the releases page](https://github.com/itsyourap/ArgumentCatcher/releases).\n\nPreferably, you can build ArgumentCatcher by cloning the [Git](https://github.com/itsyourap/ArgumentCatcher)\nrepository:\n\n    git clone https://github.com/itsyourap/ArgumentCatcher.git\n\nYou will need [Java Development Kit (JDK) 8+](https://en.wikipedia.org/wiki/Java_Development_Kit) to build this project and a working [Java Runtime Environment (JRE) 8+](https://en.wikipedia.org/wiki/Java_(software_platform)) to run this program.\n\nAfter building a JAR from the sources, you can use [Launch4j](http://launch4j.sourceforge.net/) to wrap the JAR into an executable. You can find an example of Launch4j configuration in [launch4j folder](https://github.com/itsyourap/ArgumentCatcher/tree/main/launch4j).\n\n## Usage\n\nHere we will be\nsolving [this example situation](#usage-scenario) with\nthe help of ArgumentCatcher.\n\n1. Rename ArgumentCatcher executable to ```Bar.exe``` and put it in place of the original ```Bar.exe```\n2. Now whenever ```Foo.exe``` launches ```Bar.exe``` with some arguments, a folder with name ```.argumentcatcher``` is\n   created in the same folder as the executable is created and a LOG file is written into the folder which contains all\n   the arguments in a readable manner.\n3. The log file is always appended, so don't worry about overwriting.\n\nNow say, you want ArgumentCatcher to return some output to ```Foo.exe``` for a specific argument(s) passed to\nArgumentCatcher so that ```Foo.exe``` may continue its further operations.\n\nTo make ArgumentCatcher return specific outputs for specific arguments, do this:-\n\n1. In the ```.argumentcatcher``` folder, there will be a folder named ```output``` (Create it if not present).\n2. Make a folder with the name of your executable, (here ```Bar.exe```) and open it.\n3. In this folder, put files with the name of the argument and add ```.txt``` as extension and add the desired output in\n   the file.\n\nFor example, say you want ArgumentCatcher to return ```beta``` when argument ```alpha``` is passed to ```Bar.exe```. So,\nwe first rename ArgumentCatcher executable to ```Bar.exe``` and put it in place of the original ```Bar.exe```. Next we\nopen ```.argumentcatcher``` folder and open ```output``` folder in it. Now in the ```output``` folder we create a folder\nwith the name ```Bar.exe``` and open it. In the ```Bar.exe``` folder, we create ```alpha.txt``` file which will contain\nthis:-\n\n    beta\n\nSo now, whenever ```Foo.exe``` tries to pass argument ```alpha``` to ```Bar.exe```, it will get the output contained in\nthe ```alpha.txt``` file, which in this case is ```beta```.\n\n## Contributing\n\nPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.\n\n## License\n\n[GPLv3](https://github.com/itsyourap/ArgumentCatcher/blob/main/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsyourap%2Fargumentcatcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fitsyourap%2Fargumentcatcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsyourap%2Fargumentcatcher/lists"}