API for java-utils (master branch)

by Stuart Halloway, Stephen C. Gilardi, Shawn Hoover, Perry Trolard, Stuart Sierra

Usage:
(ns your-namespace
  (:require clojure.contrib.java-utils))

Overview

A set of utilties for dealing with Java stuff like files and properties.

Design goals:

(1) Ease-of-use. These APIs should be convenient. Performance is secondary.

(2) Duck typing. I hate having to think about the difference between
    a string that names a file, and a File. Ditto for a ton of other 
    wrapper classes in the Java world (URL, InternetAddress). With these
    APIs you should be able to think about domain equivalence, not type
    equivalence.

(3) No bossiness. I am not marking any of these functions as private
    the docstrings will tell you the intended usage but do what works for you. 					

Feedback welcome!

If something in this module violates the principle of least surprise, please 
let me (Stu) and the Clojure community know via the mailing list.

Public Variables and Functions



as-file

multimethod
No usage documentation available
Interpret a String or a java.io.File as a File. Building block
for clojure.contrib.java-utils/file, which you should prefer
in most cases.


as-properties

function
Usage: (as-properties m)
Convert any seq of pairs to a java.utils.Properties instance.
Uses as-str to convert both keys and values into strings.


as-str

function
Usage: (as-str)
       (as-str x)
       (as-str x & ys)
Like clojure.core/str, but if an argument is a keyword or symbol,
its name will be used instead of its literal representation.

Example:
   (str :foo :bar)     ;;=> ":foo:bar"
   (as-str :foo :bar)  ;;=> "foobar" 

Note that this does not apply to keywords or symbols nested within
data structures; they will be rendered as with str.

Example:
   (str {:foo :bar})     ;;=> "{:foo :bar}"
   (as-str {:foo :bar})  ;;=> "{:foo :bar}" 


as-url

multimethod
Usage: (as-url arg)
Coerces argument (URL, URI, or String) to a java.net.URL.


delete-file

function
Usage: (delete-file f & [silently])
Delete file f. Raise an exception if it fails unless silently is true.


delete-file-recursively

function
Usage: (delete-file-recursively f & [silently])
Delete file f. If it's a directory, recursively delete all its contents.
Raise an exception if any deletion fails unless silently is true.


file

function
Usage: (file arg)
       (file parent child)
       (file parent child & more)
Returns a java.io.File from string or file args.


get-system-property

function
Usage: (get-system-property stringable)
       (get-system-property stringable default)
Get a system property.


read-properties

function
Usage: (read-properties file-able)
Read properties from file-able.


relative-path-string

multimethod
No usage documentation available
Interpret a String or java.io.File as a relative path string. 
Building block for clojure.contrib.java-utils/file.


set-system-properties

function
Usage: (set-system-properties settings)
Set some system properties. Nil clears a property.


wall-hack-field

function
Usage: (wall-hack-field class-name field-name obj)
Access to private or protected field.


wall-hack-method

function
Usage: (wall-hack-method class-name method-name params obj & args)
Calls a private or protected method.
params is a vector of class which correspond to the arguments to the method
obj is nil for static methods, the instance object otherwise
the method name is given as a symbol or a keyword (something Named)


with-system-properties

macro
Usage: (with-system-properties settings & body)
setting => property-name value

Sets the system properties to the supplied values, executes the body, and
sets the properties back to their original values. Values of nil are
translated to a clearing of the property.


write-properties

function
Usage: (write-properties m file-able)
       (write-properties m file-able comments)
Write properties to file-able.
Logo & site design by Tom Hickey.
Clojure auto-documentation system by Tom Faulhaber.