# Debugging options for the org.eclipse.ecf plug-in

# Turn on general debugging for the org.eclipse.ecf plug-in
org.eclipse.ecf/debug=true
org.eclipse.ecf/debug/filter = *
org.eclipse.ecf/debug/flag = true

# Trace when exceptions are caught
org.eclipse.ecf/debug/exceptions/catching=false
# Trace when exceptions are thrown
org.eclipse.ecf/debug/exceptions/throwing=false

# Trace when methods are entered
org.eclipse.ecf/debug/methods/entering=false
# Trace when methods are exited
org.eclipse.ecf/debug/methods/exiting=false
