<commit_before>swift-mass-x
============

Openstack Swift Mass [Uploader | Lister | Remover]

This is a heavily multi-threaded asynchronous client for openstack swift storage.
It allows you to upload many files in parallel, list huge amount of files or delete ad many.

Just increase the number of **threads** but beware, this can cause the entire swift DDos.
Additionnally, list of files are buffered in ram on the client, so increase the available memory for the program to run (-Xmx)

Build
-----

`javac openstack.java`

Usage
-----

`java [-Xmx2g] -jar openstack.jar [OPTIONS]`

	Options: (* = mandatory)\n\n" +
	-h,  --help      Show the help message
	*-o, --operation Type of operation (DELETE|UPLOAD|LIST)
	-l,  --log-file  Log file name (default: stdout)
	-t,  --threads   Number of parallel threads (default: 2)
	-v,  --verbose   (1|0) Log more than exceptions (default: 0)
	*-d, --directory The local directory to upload or remote directory 
	                 to delete (if not set, the container will be dropped)
	*-u, --username  The openstack username
	*-p, --password  The openstack password
	*-s, --server    The openstack server (https://...)
	*-c, --container The openstack container name
<commit_msg>typo in readme<commit_after>swift-mass-x
============

Openstack Swift Mass [Uploader | Lister | Remover]

This is a heavily multi-threaded asynchronous client for openstack swift storage.
It allows you to upload many files in parallel, list huge amount of files or delete as many.

Just increase the number of **threads** but beware, this can cause the entire swift to DDoS.
Additionnally, list of files are buffered in ram on the client, so increase the available memory for the program to run (-Xmx)

Build
-----

`javac openstack.java`

Usage
-----

`java [-Xmx2g] -jar openstack.jar [OPTIONS]`

	Options: (* = mandatory)
		-h,  --help      Show the help message
		*-o, --operation Type of operation (DELETE|UPLOAD|LIST)
		-l,  --log-file  Log file name (default: stdout)
		-t,  --threads   Number of parallel threads (default: 2)
		-v,  --verbose   (1|0) Log more than exceptions (default: 0)
		*-d, --directory The local directory to upload or remote directory 
						 to delete (if not set, the container will be dropped)
		*-u, --username  The openstack username
		*-p, --password  The openstack password
		*-s, --server    The openstack server (https://...)
		*-c, --container The openstack container name

{'fraction_non_alphanumeric': 0.114215283483977, 'fraction_numerical': 0.004108463434675432, 'mean_word_length': 3.256993006993007, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4165367', 'n_tokens_mistral': 743, 'n_tokens_neox': 709, 'n_words': 327}