]> granicus.if.org Git - php/commitdiff
tidy up repository for merging
authorkrakjoe <joe.watkins@live.co.uk>
Fri, 20 Dec 2013 12:51:24 +0000 (12:51 +0000)
committerkrakjoe <joe.watkins@live.co.uk>
Fri, 20 Dec 2013 12:51:24 +0000 (12:51 +0000)
34 files changed:
test.php [deleted file]
tutorials/break-at.png [deleted file]
tutorials/help-break.png [deleted file]
tutorials/help.png [deleted file]
tutorials/initializing.md [deleted file]
tutorials/intro.md [deleted file]
tutorials/java-example.png [deleted file]
tutorials/java/build.xml [deleted file]
tutorials/java/dist/README.TXT [deleted file]
tutorials/java/dist/phpdbg-ui.jar [deleted file]
tutorials/java/manifest.mf [deleted file]
tutorials/java/nbproject/build-impl.xml [deleted file]
tutorials/java/nbproject/genfiles.properties [deleted file]
tutorials/java/nbproject/private/config.properties [deleted file]
tutorials/java/nbproject/private/private.properties [deleted file]
tutorials/java/nbproject/project.properties [deleted file]
tutorials/java/nbproject/project.xml [deleted file]
tutorials/java/src/phpdbg/ui/CommandHistory.java [deleted file]
tutorials/java/src/phpdbg/ui/DebugSocket.java [deleted file]
tutorials/java/src/phpdbg/ui/JConsole.form [deleted file]
tutorials/java/src/phpdbg/ui/JConsole.java [deleted file]
tutorials/java/src/phpdbg/ui/JTerminalPane.java [deleted file]
tutorials/java/src/phpdbg/ui/logo-dbg.png [deleted file]
tutorials/java/src/phpdbg/ui/logo-small.png [deleted file]
tutorials/phpdbg.png [deleted file]
tutorials/remote.md [deleted file]
tutorials/session.png [deleted file]
tutorials/show-broken.png [deleted file]
tutorials/show-conditionals.png [deleted file]
tutorials/show-printing.png [deleted file]
tutorials/show-verbose.png [deleted file]
tutorials/simples.md [deleted file]
tutorials/welcome.png [deleted file]
tutorials/windows-preview.png [deleted file]

diff --git a/test.php b/test.php
deleted file mode 100644 (file)
index faea3c2..0000000
--- a/test.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-if (isset($include)) {
-       include (sprintf("%s/web-bootstrap.php", dirname(__FILE__)));
-}
-
-$stdout = fopen("php://stdout", "w+");
-
-class phpdbg {
-    public function isGreat($greeting = null) {
-        printf(
-            "%s: %s\n", __METHOD__, $greeting);
-        return $this;
-    }
-}
-
-function test($x, $y = 0) {
-       $var = $x + 1;
-       $var += 2;
-       $var <<= 3;
-
-       $foo = function () {
-               echo "bar!\n";
-       };
-
-       $foo();
-
-       yield $var;
-}
-
-$dbg = new phpdbg();
-
-var_dump(
-    $dbg->isGreat("PHP Rocks!!"));
-
-foreach (test(1,2) as $gen)
-       continue;
-
-echo "it works!\n";
-
-if (isset($dump))
-       var_dump($_SERVER);
-
-function phpdbg_test_ob()
-{
-       echo 'Start';
-       ob_start();
-       echo 'Hello';
-       $b = ob_get_clean();
-       echo 'End';
-       echo $b;
-}
-
-
-?>
diff --git a/tutorials/break-at.png b/tutorials/break-at.png
deleted file mode 100644 (file)
index 7767f22..0000000
Binary files a/tutorials/break-at.png and /dev/null differ
diff --git a/tutorials/help-break.png b/tutorials/help-break.png
deleted file mode 100644 (file)
index bc1400f..0000000
Binary files a/tutorials/help-break.png and /dev/null differ
diff --git a/tutorials/help.png b/tutorials/help.png
deleted file mode 100644 (file)
index 2e8904f..0000000
Binary files a/tutorials/help.png and /dev/null differ
diff --git a/tutorials/initializing.md b/tutorials/initializing.md
deleted file mode 100644 (file)
index de01bb2..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-phpdbginit
-==========
-*Setting up your debugging session automatically*
-
-By default, phpdbg looks for *.phpdbginit* in the current working directory, this location can be overrideen on the command line:
-
-```
-phpdbg -imy.phpdbginit
-```
-
-An init file should contain one command per line, any phpdbg command is supported during init.
-
-In addition, *.phpdbginit* can contain embedded code, allowing, for example 
-
- - the setup of auto completion
- - the registration of functions
- - the acquisition and pre-compilation of code
- - bootstrapping a web application
-
-It is common for C projects (PHP included) to include an init file for the GDB debugger; this would be a clever practice to adopt
-for those distributing PHP library code.
-
-The default .phpdbginit
-=======================
-
-We distribute the following init file by default, it should be copied to any directory you commonly execute in:
-
-```
-##########################################################
-# .phpdbginit
-#
-# Lines starting with # are ignored
-# Code must start and end with <: and :> respectively
-##########################################################
-# Place initialization commands one per line
-##########################################################
-# exec sapi/phpdbg/test.php
-
-##########################################################
-# Embedding code in .phpdbginit
-##########################################################
-<:
-/*
- If readline is loaded, you might want to setup completion:
-*/
-if (function_exists('readline_completion_function')) {
-       readline_completion_function(function(){
-               return array_merge(
-                       get_defined_functions()['user'],
-                       array_keys(get_defined_constants())
-               );
-       });
-}
-:>
-##########################################################
-# Now carry on initializing phpdbg ...
-##########################################################
-# R my_debugging_function
-
-##########################################################
-# PHP has many functions that might be useful
-# ... you choose ...
-##########################################################
-# R touch
-# R unlink
-# R scandir
-# R glob
-
-##########################################################
-# Remember: *you have access to the shell*
-##########################################################
-# The output of registered function calls is not,
-# by default, very pretty (unless you implement
-# and register a new implementation for phpdbg)
-# The output of shell commands will usually be more
-# readable on the console
-##########################################################
-# TLDR; if you have a good shell, use it ...
-##########################################################
-```
-
-
diff --git a/tutorials/intro.md b/tutorials/intro.md
deleted file mode 100644 (file)
index 34ec1b2..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-Getting started with phpdbg
-===========================
-*An introduction to debugging PHP code with phpdbg*
-
-phpdbg provides an interactive environment to debug PHP; it is implemented and distributed as a SAPI module - just as the CLI interface.
-
-```
-cd /usr/src/php-src/sapi/phpdbg
-./phpdbg -e test.php
-```
-
-![Welcome to phpdbg](https://raw.github.com/krakjoe/phpdbg/master/tutorials/welcome.png)
-
-phpdbg integrates with, and initializes, the Zend environment; from the moment the console is open you can start to manipulate the environment in order to prepare your debugging session. If you have used other debuggers, phpdbg should hopefully feel familiar, but you can always ask for `help`:
-
-![phpdbg help menu](https://raw.github.com/krakjoe/phpdbg/master/tutorials/phpdbg.png)
-
-phpdbg provides help for all of the supported commands.
-
-Breaking execution
-==================
-*Telling phpdbg when to stop ...*
-
-In order to debug your code, execution must be interrupted at very specific points during execution, and allow access to, and inspection of, the execution environment. phpdbg can step through the execution of your script, showing you information about every opcode the VM executes, including the address (in case you need to break at that specific point on the next execution).
-
-phpdbg provides many options for specifying breakpoints:
-
-![phpdbg help menu](https://raw.github.com/krakjoe/phpdbg/master/tutorials/help-break.png)
-
-phpdbg also includes a userland API to enable working with breakpoints from within your PHP code:
-
-```php
-/**
-* If no parameters are recieved sets a breakpoint at the next opcode address
-* @param type           a constant PHPDBG_ type
-* @param expression     the expression for the break command
-* @return void
-*/
-proto void phpdbg_break([integer type, string expression]);
-```
-
-The following type constants are registered by phpdbg:
-
- - PHPDBG_FILE
- - PHPDBG_METHOD
- - PHPDBG_LINENO
- - PHPDBG_FUNC
-
-```php
-/**
-* Clear breakpoints before continuing execution
-* @return void
-*/
-proto void phpdbg_clear(void);
-```
-
-Inspecting the environment
-==========================
-*Finding out what went wrong*
-
-When a breakpoint is reached, control is passed back to the phpdbg console, execution will not continue until the *next* command is issued, a breakpoint being reached looks something like:
-
-![phpdbg broken](https://raw.github.com/krakjoe/phpdbg/master/tutorials/show-broken.png)
-
-Now is the time to get down to some serious `evil()`, er, I mean `eval()`.
-
-Direct access to `eval()` allows you to change _anything_ at _any_ time during execution. Helpful printing and listing commands help you to make sense of addresses and remind you of the names of the variables you want to `var_dump()`!
-
-Library code for this section:
-
-```php
-<?php
-class phpdbg {
-    public function isGreat($greeting = null) {
-        printf(
-            "%s: %s\n", __METHOD__, $greeting);
-        return $this;
-    }
-}
-
-$dbg = new phpdbg();
-
-var_dump($dbg->isGreat("PHP Rocks!!"));
-?>
-```
-
-Being precise
-=============
-*Don't be sloppy, ever ... true story*
-
-The ability to break at function entry, or even on a single statement, is not always exact enough. A single statement may have many opcodes and it could be any of those instructions that are ruining your day. phpdbg allows you to specify an exact opcode address and provides the ability to view the instructions of any method or function before execution occurs.
-
-Looking up addresses is made easy by the `print` command
-
-![phpdbg verbose](https://raw.github.com/krakjoe/phpdbg/master/tutorials/show-printing.png)
-
-For simple scripts, like the library code in the last section, and times when you want as much detail as possible, the `quiet` flag can be changed to `0` (default is `1`):
-
-![phpdbg verbose](https://raw.github.com/krakjoe/phpdbg/master/tutorials/show-verbose.png)
-
-Mocking a server
-================
-*Mocking is easy!*
-
-Mocking a specific environment is child's play; simply include a bootstrap file before you run, or have your code include it. 
-
-An example of such a file can be found in the repository:
-
-https://github.com/krakjoe/phpdbg/blob/master/web-bootstrap.php
-
-Advice you can keep
-===================
-*The reason for all the images...*
-
-The best thing about this tutorial is you take all of the help with you when you install phpdbg. Don't be afraid to ask for `help`! :)
-
-Happy PHPing. :)
diff --git a/tutorials/java-example.png b/tutorials/java-example.png
deleted file mode 100644 (file)
index 6a15972..0000000
Binary files a/tutorials/java-example.png and /dev/null differ
diff --git a/tutorials/java/build.xml b/tutorials/java/build.xml
deleted file mode 100644 (file)
index b8895fa..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- You may freely edit this file. See commented blocks below for -->
-<!-- some examples of how to customize the build. -->
-<!-- (If you delete it and reopen the project it will be recreated.) -->
-<!-- By default, only the Clean and Build commands use this build script. -->
-<!-- Commands such as Run, Debug, and Test only use this build script if -->
-<!-- the Compile on Save feature is turned off for the project. -->
-<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
-<!-- in the project's Project Properties dialog box.-->
-<project name="phpdbg-ui" default="default" basedir=".">
-    <description>Builds, tests, and runs the project phpdbg-ui.</description>
-    <import file="nbproject/build-impl.xml"/>
-    <!--
-
-    There exist several targets which are by default empty and which can be 
-    used for execution of your tasks. These targets are usually executed 
-    before and after some main targets. They are: 
-
-      -pre-init:                 called before initialization of project properties
-      -post-init:                called after initialization of project properties
-      -pre-compile:              called before javac compilation
-      -post-compile:             called after javac compilation
-      -pre-compile-single:       called before javac compilation of single file
-      -post-compile-single:      called after javac compilation of single file
-      -pre-compile-test:         called before javac compilation of JUnit tests
-      -post-compile-test:        called after javac compilation of JUnit tests
-      -pre-compile-test-single:  called before javac compilation of single JUnit test
-      -post-compile-test-single: called after javac compilation of single JUunit test
-      -pre-jar:                  called before JAR building
-      -post-jar:                 called after JAR building
-      -post-clean:               called after cleaning build products
-
-    (Targets beginning with '-' are not intended to be called on their own.)
-
-    Example of inserting an obfuscator after compilation could look like this:
-
-        <target name="-post-compile">
-            <obfuscate>
-                <fileset dir="${build.classes.dir}"/>
-            </obfuscate>
-        </target>
-
-    For list of available properties check the imported 
-    nbproject/build-impl.xml file. 
-
-
-    Another way to customize the build is by overriding existing main targets.
-    The targets of interest are: 
-
-      -init-macrodef-javac:     defines macro for javac compilation
-      -init-macrodef-junit:     defines macro for junit execution
-      -init-macrodef-debug:     defines macro for class debugging
-      -init-macrodef-java:      defines macro for class execution
-      -do-jar:                  JAR building
-      run:                      execution of project 
-      -javadoc-build:           Javadoc generation
-      test-report:              JUnit report generation
-
-    An example of overriding the target for project execution could look like this:
-
-        <target name="run" depends="phpdbg-ui-impl.jar">
-            <exec dir="bin" executable="launcher.exe">
-                <arg file="${dist.jar}"/>
-            </exec>
-        </target>
-
-    Notice that the overridden target depends on the jar target and not only on 
-    the compile target as the regular run target does. Again, for a list of available 
-    properties which you can use, check the target you are overriding in the
-    nbproject/build-impl.xml file. 
-
-    -->
-</project>
diff --git a/tutorials/java/dist/README.TXT b/tutorials/java/dist/README.TXT
deleted file mode 100644 (file)
index 74e385c..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-========================
-BUILD OUTPUT DESCRIPTION
-========================
-
-When you build an Java application project that has a main class, the IDE
-automatically copies all of the JAR
-files on the projects classpath to your projects dist/lib folder. The IDE
-also adds each of the JAR files to the Class-Path element in the application
-JAR files manifest file (MANIFEST.MF).
-
-To run the project from the command line, go to the dist folder and
-type the following:
-
-java -jar "phpdbg-ui.jar" 
-
-To distribute this project, zip up the dist folder (including the lib folder)
-and distribute the ZIP file.
-
-Notes:
-
-* If two JAR files on the project classpath have the same name, only the first
-JAR file is copied to the lib folder.
-* Only JAR files are copied to the lib folder.
-If the classpath contains other types of files or folders, these files (folders)
-are not copied.
-* If a library on the projects classpath also has a Class-Path element
-specified in the manifest,the content of the Class-Path element has to be on
-the projects runtime path.
-* To set a main class in a standard Java project, right-click the project node
-in the Projects window and choose Properties. Then click Run and enter the
-class name in the Main Class field. Alternatively, you can manually type the
-class name in the manifest Main-Class element.
diff --git a/tutorials/java/dist/phpdbg-ui.jar b/tutorials/java/dist/phpdbg-ui.jar
deleted file mode 100644 (file)
index 0de3d09..0000000
Binary files a/tutorials/java/dist/phpdbg-ui.jar and /dev/null differ
diff --git a/tutorials/java/manifest.mf b/tutorials/java/manifest.mf
deleted file mode 100644 (file)
index 328e8e5..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Manifest-Version: 1.0
-X-COMMENT: Main-Class will be added automatically by build
-
diff --git a/tutorials/java/nbproject/build-impl.xml b/tutorials/java/nbproject/build-impl.xml
deleted file mode 100644 (file)
index f937ce8..0000000
+++ /dev/null
@@ -1,1407 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-*** GENERATED FROM project.xml - DO NOT EDIT  ***
-***         EDIT ../build.xml INSTEAD         ***
-
-For the purpose of easier reading the script
-is divided into following sections:
-
-  - initialization
-  - compilation
-  - jar
-  - execution
-  - debugging
-  - javadoc
-  - test compilation
-  - test execution
-  - test debugging
-  - applet
-  - cleanup
-
-        -->
-<project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="phpdbg-ui-impl">
-    <fail message="Please build using Ant 1.8.0 or higher.">
-        <condition>
-            <not>
-                <antversion atleast="1.8.0"/>
-            </not>
-        </condition>
-    </fail>
-    <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
-    <!-- 
-                ======================
-                INITIALIZATION SECTION 
-                ======================
-            -->
-    <target name="-pre-init">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="-pre-init" name="-init-private">
-        <property file="nbproject/private/config.properties"/>
-        <property file="nbproject/private/configs/${config}.properties"/>
-        <property file="nbproject/private/private.properties"/>
-    </target>
-    <target depends="-pre-init,-init-private" name="-init-user">
-        <property file="${user.properties.file}"/>
-        <!-- The two properties below are usually overridden -->
-        <!-- by the active platform. Just a fallback. -->
-        <property name="default.javac.source" value="1.4"/>
-        <property name="default.javac.target" value="1.4"/>
-    </target>
-    <target depends="-pre-init,-init-private,-init-user" name="-init-project">
-        <property file="nbproject/configs/${config}.properties"/>
-        <property file="nbproject/project.properties"/>
-    </target>
-    <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
-        <property name="platform.java" value="${java.home}/bin/java"/>
-        <available file="${manifest.file}" property="manifest.available"/>
-        <condition property="splashscreen.available">
-            <and>
-                <not>
-                    <equals arg1="${application.splash}" arg2="" trim="true"/>
-                </not>
-                <available file="${application.splash}"/>
-            </and>
-        </condition>
-        <condition property="main.class.available">
-            <and>
-                <isset property="main.class"/>
-                <not>
-                    <equals arg1="${main.class}" arg2="" trim="true"/>
-                </not>
-            </and>
-        </condition>
-        <condition property="profile.available">
-            <and>
-                <isset property="javac.profile"/>
-                <length length="0" string="${javac.profile}" when="greater"/>
-                <matches pattern="1\.[89](\..*)?" string="${javac.source}"/>
-            </and>
-        </condition>
-        <condition property="do.archive">
-            <not>
-                <istrue value="${jar.archive.disabled}"/>
-            </not>
-        </condition>
-        <condition property="do.mkdist">
-            <and>
-                <isset property="do.archive"/>
-                <isset property="libs.CopyLibs.classpath"/>
-                <not>
-                    <istrue value="${mkdist.disabled}"/>
-                </not>
-            </and>
-        </condition>
-        <condition property="do.archive+manifest.available">
-            <and>
-                <isset property="manifest.available"/>
-                <istrue value="${do.archive}"/>
-            </and>
-        </condition>
-        <condition property="do.archive+main.class.available">
-            <and>
-                <isset property="main.class.available"/>
-                <istrue value="${do.archive}"/>
-            </and>
-        </condition>
-        <condition property="do.archive+splashscreen.available">
-            <and>
-                <isset property="splashscreen.available"/>
-                <istrue value="${do.archive}"/>
-            </and>
-        </condition>
-        <condition property="do.archive+profile.available">
-            <and>
-                <isset property="profile.available"/>
-                <istrue value="${do.archive}"/>
-            </and>
-        </condition>
-        <condition property="have.tests">
-            <or>
-                <available file="${test.src.dir}"/>
-            </or>
-        </condition>
-        <condition property="have.sources">
-            <or>
-                <available file="${src.dir}"/>
-            </or>
-        </condition>
-        <condition property="netbeans.home+have.tests">
-            <and>
-                <isset property="netbeans.home"/>
-                <isset property="have.tests"/>
-            </and>
-        </condition>
-        <condition property="no.javadoc.preview">
-            <and>
-                <isset property="javadoc.preview"/>
-                <isfalse value="${javadoc.preview}"/>
-            </and>
-        </condition>
-        <property name="run.jvmargs" value=""/>
-        <property name="run.jvmargs.ide" value=""/>
-        <property name="javac.compilerargs" value=""/>
-        <property name="work.dir" value="${basedir}"/>
-        <condition property="no.deps">
-            <and>
-                <istrue value="${no.dependencies}"/>
-            </and>
-        </condition>
-        <property name="javac.debug" value="true"/>
-        <property name="javadoc.preview" value="true"/>
-        <property name="application.args" value=""/>
-        <property name="source.encoding" value="${file.encoding}"/>
-        <property name="runtime.encoding" value="${source.encoding}"/>
-        <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
-            <and>
-                <isset property="javadoc.encoding"/>
-                <not>
-                    <equals arg1="${javadoc.encoding}" arg2=""/>
-                </not>
-            </and>
-        </condition>
-        <property name="javadoc.encoding.used" value="${source.encoding}"/>
-        <property name="includes" value="**"/>
-        <property name="excludes" value=""/>
-        <property name="do.depend" value="false"/>
-        <condition property="do.depend.true">
-            <istrue value="${do.depend}"/>
-        </condition>
-        <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
-        <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
-            <and>
-                <isset property="endorsed.classpath"/>
-                <not>
-                    <equals arg1="${endorsed.classpath}" arg2="" trim="true"/>
-                </not>
-            </and>
-        </condition>
-        <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}">
-            <isset property="profile.available"/>
-        </condition>
-        <condition else="false" property="jdkBug6558476">
-            <and>
-                <matches pattern="1\.[56]" string="${java.specification.version}"/>
-                <not>
-                    <os family="unix"/>
-                </not>
-            </and>
-        </condition>
-        <property name="javac.fork" value="${jdkBug6558476}"/>
-        <property name="jar.index" value="false"/>
-        <property name="jar.index.metainf" value="${jar.index}"/>
-        <property name="copylibs.rebase" value="true"/>
-        <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>
-        <condition property="junit.available">
-            <or>
-                <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
-                <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
-            </or>
-        </condition>
-        <condition property="testng.available">
-            <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
-        </condition>
-        <condition property="junit+testng.available">
-            <and>
-                <istrue value="${junit.available}"/>
-                <istrue value="${testng.available}"/>
-            </and>
-        </condition>
-        <condition else="testng" property="testng.mode" value="mixed">
-            <istrue value="${junit+testng.available}"/>
-        </condition>
-        <condition else="" property="testng.debug.mode" value="-mixed">
-            <istrue value="${junit+testng.available}"/>
-        </condition>
-    </target>
-    <target name="-post-init">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
-        <fail unless="src.dir">Must set src.dir</fail>
-        <fail unless="test.src.dir">Must set test.src.dir</fail>
-        <fail unless="build.dir">Must set build.dir</fail>
-        <fail unless="dist.dir">Must set dist.dir</fail>
-        <fail unless="build.classes.dir">Must set build.classes.dir</fail>
-        <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
-        <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
-        <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
-        <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
-        <fail unless="dist.jar">Must set dist.jar</fail>
-    </target>
-    <target name="-init-macrodef-property">
-        <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1">
-            <attribute name="name"/>
-            <attribute name="value"/>
-            <sequential>
-                <property name="@{name}" value="${@{value}}"/>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
-        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.dir}" name="srcdir"/>
-            <attribute default="${build.classes.dir}" name="destdir"/>
-            <attribute default="${javac.classpath}" name="classpath"/>
-            <attribute default="${javac.processorpath}" name="processorpath"/>
-            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="${javac.debug}" name="debug"/>
-            <attribute default="${empty.dir}" name="sourcepath"/>
-            <attribute default="${empty.dir}" name="gensrcdir"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property location="${build.dir}/empty" name="empty.dir"/>
-                <mkdir dir="${empty.dir}"/>
-                <mkdir dir="@{apgeneratedsrcdir}"/>
-                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
-                    <src>
-                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
-                            <include name="*"/>
-                        </dirset>
-                    </src>
-                    <classpath>
-                        <path path="@{classpath}"/>
-                    </classpath>
-                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
-                    <compilerarg line="${javac.profile.cmd.line.arg}"/>
-                    <compilerarg line="${javac.compilerargs}"/>
-                    <compilerarg value="-processorpath"/>
-                    <compilerarg path="@{processorpath}:${empty.dir}"/>
-                    <compilerarg line="${ap.processors.internal}"/>
-                    <compilerarg line="${annotation.processing.processor.options}"/>
-                    <compilerarg value="-s"/>
-                    <compilerarg path="@{apgeneratedsrcdir}"/>
-                    <compilerarg line="${ap.proc.none.internal}"/>
-                    <customize/>
-                </javac>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
-        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.dir}" name="srcdir"/>
-            <attribute default="${build.classes.dir}" name="destdir"/>
-            <attribute default="${javac.classpath}" name="classpath"/>
-            <attribute default="${javac.processorpath}" name="processorpath"/>
-            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="${javac.debug}" name="debug"/>
-            <attribute default="${empty.dir}" name="sourcepath"/>
-            <attribute default="${empty.dir}" name="gensrcdir"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property location="${build.dir}/empty" name="empty.dir"/>
-                <mkdir dir="${empty.dir}"/>
-                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
-                    <src>
-                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
-                            <include name="*"/>
-                        </dirset>
-                    </src>
-                    <classpath>
-                        <path path="@{classpath}"/>
-                    </classpath>
-                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
-                    <compilerarg line="${javac.profile.cmd.line.arg}"/>
-                    <compilerarg line="${javac.compilerargs}"/>
-                    <customize/>
-                </javac>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
-        <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.dir}" name="srcdir"/>
-            <attribute default="${build.classes.dir}" name="destdir"/>
-            <attribute default="${javac.classpath}" name="classpath"/>
-            <sequential>
-                <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
-                    <classpath>
-                        <path path="@{classpath}"/>
-                    </classpath>
-                </depend>
-            </sequential>
-        </macrodef>
-        <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${build.classes.dir}" name="destdir"/>
-            <sequential>
-                <fail unless="javac.includes">Must set javac.includes</fail>
-                <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
-                    <path>
-                        <filelist dir="@{destdir}" files="${javac.includes}"/>
-                    </path>
-                    <globmapper from="*.java" to="*.class"/>
-                </pathconvert>
-                <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
-                <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
-                <delete>
-                    <files includesfile="${javac.includesfile.binary}"/>
-                </delete>
-                <delete>
-                    <fileset file="${javac.includesfile.binary}"/>
-                </delete>
-            </sequential>
-        </macrodef>
-    </target>
-    <target if="${junit.available}" name="-init-macrodef-junit-init">
-        <condition else="false" property="nb.junit.batch" value="true">
-            <and>
-                <istrue value="${junit.available}"/>
-                <not>
-                    <isset property="test.method"/>
-                </not>
-            </and>
-        </condition>
-        <condition else="false" property="nb.junit.single" value="true">
-            <and>
-                <istrue value="${junit.available}"/>
-                <isset property="test.method"/>
-            </and>
-        </condition>
-    </target>
-    <target name="-init-test-properties">
-        <property name="test.binaryincludes" value="&lt;nothing&gt;"/>
-        <property name="test.binarytestincludes" value=""/>
-        <property name="test.binaryexcludes" value=""/>
-    </target>
-    <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
-        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
-                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
-                    <syspropertyset>
-                        <propertyref prefix="test-sys-prop."/>
-                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <formatter type="brief" usefile="false"/>
-                    <formatter type="xml"/>
-                    <jvmarg value="-ea"/>
-                    <customize/>
-                </junit>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
-        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
-                    <batchtest todir="${build.test.results.dir}">
-                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
-                            <filename name="${test.binarytestincludes}"/>
-                        </fileset>
-                    </batchtest>
-                    <syspropertyset>
-                        <propertyref prefix="test-sys-prop."/>
-                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <formatter type="brief" usefile="false"/>
-                    <formatter type="xml"/>
-                    <jvmarg value="-ea"/>
-                    <customize/>
-                </junit>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
-    <target if="${testng.available}" name="-init-macrodef-testng">
-        <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
-                    <isset property="test.method"/>
-                </condition>
-                <union id="test.set">
-                    <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
-                        <filename name="@{testincludes}"/>
-                    </fileset>
-                </union>
-                <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
-                <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="phpdbg-ui" testname="TestNG tests" workingDir="${work.dir}">
-                    <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
-                    <propertyset>
-                        <propertyref prefix="test-sys-prop."/>
-                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                    </propertyset>
-                    <customize/>
-                </testng>
-            </sequential>
-        </macrodef>
-    </target>
-    <target name="-init-macrodef-test-impl">
-        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element implicit="true" name="customize" optional="true"/>
-            <sequential>
-                <echo>No tests executed.</echo>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
-        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element implicit="true" name="customize" optional="true"/>
-            <sequential>
-                <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
-                    <customize/>
-                </j2seproject3:junit>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
-        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element implicit="true" name="customize" optional="true"/>
-            <sequential>
-                <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
-                    <customize/>
-                </j2seproject3:testng>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
-        <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <sequential>
-                <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
-                    <customize>
-                        <classpath>
-                            <path path="${run.test.classpath}"/>
-                        </classpath>
-                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
-                        <jvmarg line="${run.jvmargs}"/>
-                        <jvmarg line="${run.jvmargs.ide}"/>
-                    </customize>
-                </j2seproject3:test-impl>
-            </sequential>
-        </macrodef>
-    </target>
-    <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
-        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
-                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
-                    <syspropertyset>
-                        <propertyref prefix="test-sys-prop."/>
-                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <formatter type="brief" usefile="false"/>
-                    <formatter type="xml"/>
-                    <jvmarg value="-ea"/>
-                    <jvmarg line="${debug-args-line}"/>
-                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
-                    <customize/>
-                </junit>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
-        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
-                    <batchtest todir="${build.test.results.dir}">
-                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
-                            <filename name="${test.binarytestincludes}"/>
-                        </fileset>
-                    </batchtest>
-                    <syspropertyset>
-                        <propertyref prefix="test-sys-prop."/>
-                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <formatter type="brief" usefile="false"/>
-                    <formatter type="xml"/>
-                    <jvmarg value="-ea"/>
-                    <jvmarg line="${debug-args-line}"/>
-                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
-                    <customize/>
-                </junit>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
-        <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element implicit="true" name="customize" optional="true"/>
-            <sequential>
-                <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
-                    <customize/>
-                </j2seproject3:junit-debug>
-            </sequential>
-        </macrodef>
-    </target>
-    <target if="${testng.available}" name="-init-macrodef-testng-debug">
-        <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${main.class}" name="testClass"/>
-            <attribute default="" name="testMethod"/>
-            <element name="customize2" optional="true"/>
-            <sequential>
-                <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
-                    <isset property="test.method"/>
-                </condition>
-                <condition else="-suitename phpdbg-ui -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
-                    <matches pattern=".*\.xml" string="@{testClass}"/>
-                </condition>
-                <delete dir="${build.test.results.dir}" quiet="true"/>
-                <mkdir dir="${build.test.results.dir}"/>
-                <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}">
-                    <customize>
-                        <customize2/>
-                        <jvmarg value="-ea"/>
-                        <arg line="${testng.debug.mode}"/>
-                        <arg line="-d ${build.test.results.dir}"/>
-                        <arg line="-listener org.testng.reporters.VerboseReporter"/>
-                        <arg line="${testng.cmd.args}"/>
-                    </customize>
-                </j2seproject3:debug>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
-        <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${main.class}" name="testClass"/>
-            <attribute default="" name="testMethod"/>
-            <element implicit="true" name="customize2" optional="true"/>
-            <sequential>
-                <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
-                    <customize2/>
-                </j2seproject3:testng-debug>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
-        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <attribute default="${main.class}" name="testClass"/>
-            <attribute default="" name="testMethod"/>
-            <sequential>
-                <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
-                    <customize>
-                        <classpath>
-                            <path path="${run.test.classpath}"/>
-                        </classpath>
-                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
-                        <jvmarg line="${run.jvmargs}"/>
-                        <jvmarg line="${run.jvmargs.ide}"/>
-                    </customize>
-                </j2seproject3:test-debug-impl>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
-        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <attribute default="${main.class}" name="testClass"/>
-            <attribute default="" name="testMethod"/>
-            <sequential>
-                <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
-                    <customize2>
-                        <syspropertyset>
-                            <propertyref prefix="test-sys-prop."/>
-                            <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                        </syspropertyset>
-                    </customize2>
-                </j2seproject3:testng-debug-impl>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
-    <!--
-                pre NB7.2 profiling section; consider it deprecated
-            -->
-    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
-    <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile">
-        <macrodef name="resolve">
-            <attribute name="name"/>
-            <attribute name="value"/>
-            <sequential>
-                <property name="@{name}" value="${env.@{value}}"/>
-            </sequential>
-        </macrodef>
-        <macrodef name="profile">
-            <attribute default="${main.class}" name="classname"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property environment="env"/>
-                <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>
-                <java classname="@{classname}" dir="${profiler.info.dir}" fork="true" jvm="${profiler.info.jvm}">
-                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
-                    <jvmarg value="${profiler.info.jvmargs.agent}"/>
-                    <jvmarg line="${profiler.info.jvmargs}"/>
-                    <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
-                    <arg line="${application.args}"/>
-                    <classpath>
-                        <path path="${run.classpath}"/>
-                    </classpath>
-                    <syspropertyset>
-                        <propertyref prefix="run-sys-prop."/>
-                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <customize/>
-                </java>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check">
-        <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
-        <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
-    </target>
-    <!--
-                end of pre NB7.2 profiling section
-            -->
-    <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
-        <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
-            <attribute default="${main.class}" name="name"/>
-            <attribute default="${debug.classpath}" name="classpath"/>
-            <attribute default="" name="stopclassname"/>
-            <sequential>
-                <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}">
-                    <classpath>
-                        <path path="@{classpath}"/>
-                    </classpath>
-                </nbjpdastart>
-            </sequential>
-        </macrodef>
-        <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1">
-            <attribute default="${build.classes.dir}" name="dir"/>
-            <sequential>
-                <nbjpdareload>
-                    <fileset dir="@{dir}" includes="${fix.classes}">
-                        <include name="${fix.includes}*.class"/>
-                    </fileset>
-                </nbjpdareload>
-            </sequential>
-        </macrodef>
-    </target>
-    <target name="-init-debug-args">
-        <property name="version-output" value="java version &quot;${ant.java.version}"/>
-        <condition property="have-jdk-older-than-1.4">
-            <or>
-                <contains string="${version-output}" substring="java version &quot;1.0"/>
-                <contains string="${version-output}" substring="java version &quot;1.1"/>
-                <contains string="${version-output}" substring="java version &quot;1.2"/>
-                <contains string="${version-output}" substring="java version &quot;1.3"/>
-            </or>
-        </condition>
-        <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
-            <istrue value="${have-jdk-older-than-1.4}"/>
-        </condition>
-        <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
-            <os family="windows"/>
-        </condition>
-        <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
-            <isset property="debug.transport"/>
-        </condition>
-    </target>
-    <target depends="-init-debug-args" name="-init-macrodef-debug">
-        <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${main.class}" name="classname"/>
-            <attribute default="${debug.classpath}" name="classpath"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <java classname="@{classname}" dir="${work.dir}" fork="true">
-                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
-                    <jvmarg line="${debug-args-line}"/>
-                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
-                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
-                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
-                    <jvmarg line="${run.jvmargs}"/>
-                    <jvmarg line="${run.jvmargs.ide}"/>
-                    <classpath>
-                        <path path="@{classpath}"/>
-                    </classpath>
-                    <syspropertyset>
-                        <propertyref prefix="run-sys-prop."/>
-                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <customize/>
-                </java>
-            </sequential>
-        </macrodef>
-    </target>
-    <target name="-init-macrodef-java">
-        <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
-            <attribute default="${main.class}" name="classname"/>
-            <attribute default="${run.classpath}" name="classpath"/>
-            <attribute default="jvm" name="jvm"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <java classname="@{classname}" dir="${work.dir}" fork="true">
-                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
-                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
-                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
-                    <jvmarg line="${run.jvmargs}"/>
-                    <jvmarg line="${run.jvmargs.ide}"/>
-                    <classpath>
-                        <path path="@{classpath}"/>
-                    </classpath>
-                    <syspropertyset>
-                        <propertyref prefix="run-sys-prop."/>
-                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <customize/>
-                </java>
-            </sequential>
-        </macrodef>
-    </target>
-    <target name="-init-macrodef-copylibs">
-        <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${manifest.file}" name="manifest"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
-                <pathconvert property="run.classpath.without.build.classes.dir">
-                    <path path="${run.classpath}"/>
-                    <map from="${build.classes.dir.resolved}" to=""/>
-                </pathconvert>
-                <pathconvert pathsep=" " property="jar.classpath">
-                    <path path="${run.classpath.without.build.classes.dir}"/>
-                    <chainedmapper>
-                        <flattenmapper/>
-                        <filtermapper>
-                            <replacestring from=" " to="%20"/>
-                        </filtermapper>
-                        <globmapper from="*" to="lib/*"/>
-                    </chainedmapper>
-                </pathconvert>
-                <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
-                <copylibs compress="${jar.compress}" excludeFromCopy="${copylibs.excludes}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
-                    <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>
-                    <manifest>
-                        <attribute name="Class-Path" value="${jar.classpath}"/>
-                        <customize/>
-                    </manifest>
-                </copylibs>
-            </sequential>
-        </macrodef>
-    </target>
-    <target name="-init-presetdef-jar">
-        <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">
-            <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}">
-                <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>
-            </jar>
-        </presetdef>
-    </target>
-    <target name="-init-ap-cmdline-properties">
-        <property name="annotation.processing.enabled" value="true"/>
-        <property name="annotation.processing.processors.list" value=""/>
-        <property name="annotation.processing.processor.options" value=""/>
-        <property name="annotation.processing.run.all.processors" value="true"/>
-        <property name="javac.processorpath" value="${javac.classpath}"/>
-        <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
-        <condition property="ap.supported.internal" value="true">
-            <not>
-                <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
-            </not>
-        </condition>
-    </target>
-    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
-        <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
-            <isfalse value="${annotation.processing.run.all.processors}"/>
-        </condition>
-        <condition else="" property="ap.proc.none.internal" value="-proc:none">
-            <isfalse value="${annotation.processing.enabled}"/>
-        </condition>
-    </target>
-    <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
-        <property name="ap.cmd.line.internal" value=""/>
-    </target>
-    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/>
-    <!--
-                ===================
-                COMPILATION SECTION
-                ===================
-            -->
-    <target name="-deps-jar-init" unless="built-jar.properties">
-        <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/>
-        <delete file="${built-jar.properties}" quiet="true"/>
-    </target>
-    <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
-        <echo level="warn" message="Cycle detected: phpdbg-ui was already built"/>
-    </target>
-    <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
-        <mkdir dir="${build.dir}"/>
-        <touch file="${built-jar.properties}" verbose="false"/>
-        <property file="${built-jar.properties}" prefix="already.built.jar."/>
-        <antcall target="-warn-already-built-jar"/>
-        <propertyfile file="${built-jar.properties}">
-            <entry key="${basedir}" value=""/>
-        </propertyfile>
-    </target>
-    <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
-    <target depends="init" name="-check-automatic-build">
-        <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/>
-    </target>
-    <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build">
-        <antcall target="clean"/>
-    </target>
-    <target depends="init,deps-jar" name="-pre-pre-compile">
-        <mkdir dir="${build.classes.dir}"/>
-    </target>
-    <target name="-pre-compile">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target if="do.depend.true" name="-compile-depend">
-        <pathconvert property="build.generated.subdirs">
-            <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false">
-                <include name="*"/>
-            </dirset>
-        </pathconvert>
-        <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/>
-    </target>
-    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
-        <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
-        <copy todir="${build.classes.dir}">
-            <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
-        </copy>
-    </target>
-    <target if="has.persistence.xml" name="-copy-persistence-xml">
-        <mkdir dir="${build.classes.dir}/META-INF"/>
-        <copy todir="${build.classes.dir}/META-INF">
-            <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/>
-        </copy>
-    </target>
-    <target name="-post-compile">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
-    <target name="-pre-compile-single">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
-        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
-        <j2seproject3:force-recompile/>
-        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}"/>
-    </target>
-    <target name="-post-compile-single">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
-    <!--
-                ====================
-                JAR BUILDING SECTION
-                ====================
-            -->
-    <target depends="init" name="-pre-pre-jar">
-        <dirname file="${dist.jar}" property="dist.jar.dir"/>
-        <mkdir dir="${dist.jar.dir}"/>
-    </target>
-    <target name="-pre-jar">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available">
-        <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
-        <touch file="${tmp.manifest.file}" verbose="false"/>
-    </target>
-    <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest">
-        <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
-        <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/>
-    </target>
-    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass">
-        <manifest file="${tmp.manifest.file}" mode="update">
-            <attribute name="Main-Class" value="${main.class}"/>
-        </manifest>
-    </target>
-    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile">
-        <manifest file="${tmp.manifest.file}" mode="update">
-            <attribute name="Profile" value="${javac.profile}"/>
-        </manifest>
-    </target>
-    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen">
-        <basename file="${application.splash}" property="splashscreen.basename"/>
-        <mkdir dir="${build.classes.dir}/META-INF"/>
-        <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/>
-        <manifest file="${tmp.manifest.file}" mode="update">
-            <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/>
-        </manifest>
-    </target>
-    <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.mkdist" name="-do-jar-copylibs">
-        <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
-        <echo level="info">To run this application from the command line without Ant, try:</echo>
-        <property location="${dist.jar}" name="dist.jar.resolved"/>
-        <echo level="info">java -jar "${dist.jar.resolved}"</echo>
-    </target>
-    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.archive" name="-do-jar-jar" unless="do.mkdist">
-        <j2seproject1:jar manifest="${tmp.manifest.file}"/>
-        <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
-        <property location="${dist.jar}" name="dist.jar.resolved"/>
-        <pathconvert property="run.classpath.with.dist.jar">
-            <path path="${run.classpath}"/>
-            <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>
-        </pathconvert>
-        <condition else="" property="jar.usage.message" value="To run this application from the command line without Ant, try:${line.separator}${platform.java} -cp ${run.classpath.with.dist.jar} ${main.class}">
-            <isset property="main.class.available"/>
-        </condition>
-        <condition else="debug" property="jar.usage.level" value="info">
-            <isset property="main.class.available"/>
-        </condition>
-        <echo level="${jar.usage.level}" message="${jar.usage.message}"/>
-    </target>
-    <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest">
-        <delete>
-            <fileset file="${tmp.manifest.file}"/>
-        </delete>
-    </target>
-    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-jar,-do-jar-delete-manifest" name="-do-jar-without-libraries"/>
-    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-copylibs,-do-jar-delete-manifest" name="-do-jar-with-libraries"/>
-    <target name="-post-jar">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,compile,-pre-jar,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/>
-    <target depends="init,compile,-pre-jar,-do-jar,-post-jar" description="Build JAR." name="jar"/>
-    <!--
-                =================
-                EXECUTION SECTION
-                =================
-            -->
-    <target depends="init,compile" description="Run a main class." name="run">
-        <j2seproject1:java>
-            <customize>
-                <arg line="${application.args}"/>
-            </customize>
-        </j2seproject1:java>
-    </target>
-    <target name="-do-not-recompile">
-        <property name="javac.includes.binary" value=""/>
-    </target>
-    <target depends="init,compile-single" name="run-single">
-        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
-        <j2seproject1:java classname="${run.class}"/>
-    </target>
-    <target depends="init,compile-test-single" name="run-test-with-main">
-        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
-        <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
-    </target>
-    <!--
-                =================
-                DEBUGGING SECTION
-                =================
-            -->
-    <target depends="init" if="netbeans.home" name="-debug-start-debugger">
-        <j2seproject1:nbjpdastart name="${debug.class}"/>
-    </target>
-    <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
-        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
-    </target>
-    <target depends="init,compile" name="-debug-start-debuggee">
-        <j2seproject3:debug>
-            <customize>
-                <arg line="${application.args}"/>
-            </customize>
-        </j2seproject3:debug>
-    </target>
-    <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/>
-    <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto">
-        <j2seproject1:nbjpdastart stopclassname="${main.class}"/>
-    </target>
-    <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/>
-    <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
-        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
-        <j2seproject3:debug classname="${debug.class}"/>
-    </target>
-    <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
-    <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
-        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
-        <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
-    </target>
-    <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
-    <target depends="init" name="-pre-debug-fix">
-        <fail unless="fix.includes">Must set fix.includes</fail>
-        <property name="javac.includes" value="${fix.includes}.java"/>
-    </target>
-    <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
-        <j2seproject1:nbjpdareload/>
-    </target>
-    <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
-    <!--
-                =================
-                PROFILING SECTION
-                =================
-            -->
-    <!--
-                pre NB7.2 profiler integration
-            -->
-    <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
-        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
-        <nbprofiledirect>
-            <classpath>
-                <path path="${run.classpath}"/>
-            </classpath>
-        </nbprofiledirect>
-        <profile/>
-    </target>
-    <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72">
-        <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>
-        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
-        <nbprofiledirect>
-            <classpath>
-                <path path="${run.classpath}"/>
-            </classpath>
-        </nbprofiledirect>
-        <profile classname="${profile.class}"/>
-    </target>
-    <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72">
-        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
-        <nbprofiledirect>
-            <classpath>
-                <path path="${run.classpath}"/>
-            </classpath>
-        </nbprofiledirect>
-        <profile classname="sun.applet.AppletViewer">
-            <customize>
-                <arg value="${applet.url}"/>
-            </customize>
-        </profile>
-    </target>
-    <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
-        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
-        <nbprofiledirect>
-            <classpath>
-                <path path="${run.test.classpath}"/>
-            </classpath>
-        </nbprofiledirect>
-        <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
-            <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
-            <jvmarg value="${profiler.info.jvmargs.agent}"/>
-            <jvmarg line="${profiler.info.jvmargs}"/>
-            <test name="${profile.class}"/>
-            <classpath>
-                <path path="${run.test.classpath}"/>
-            </classpath>
-            <syspropertyset>
-                <propertyref prefix="test-sys-prop."/>
-                <mapper from="test-sys-prop.*" to="*" type="glob"/>
-            </syspropertyset>
-            <formatter type="brief" usefile="false"/>
-            <formatter type="xml"/>
-        </junit>
-    </target>
-    <!--
-                end of pre NB72 profiling section
-            -->
-    <target if="netbeans.home" name="-profile-check">
-        <condition property="profiler.configured">
-            <or>
-                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
-                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
-            </or>
-        </condition>
-    </target>
-    <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
-        <startprofiler/>
-        <antcall target="run"/>
-    </target>
-    <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent">
-        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
-        <startprofiler/>
-        <antcall target="run-single"/>
-    </target>
-    <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/>
-    <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs">
-        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
-        <startprofiler/>
-        <antcall target="test-single"/>
-    </target>
-    <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main">
-        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
-        <startprofiler/>
-        <antcal target="run-test-with-main"/>
-    </target>
-    <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent">
-        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
-        <startprofiler/>
-        <antcall target="run-applet"/>
-    </target>
-    <!--
-                ===============
-                JAVADOC SECTION
-                ===============
-            -->
-    <target depends="init" if="have.sources" name="-javadoc-build">
-        <mkdir dir="${dist.javadoc.dir}"/>
-        <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}">
-            <and>
-                <isset property="endorsed.classpath.cmd.line.arg"/>
-                <not>
-                    <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/>
-                </not>
-            </and>
-        </condition>
-        <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
-            <classpath>
-                <path path="${javac.classpath}"/>
-            </classpath>
-            <fileset dir="${src.dir}" excludes="*.java,${excludes}" includes="${includes}">
-                <filename name="**/*.java"/>
-            </fileset>
-            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
-                <include name="**/*.java"/>
-                <exclude name="*.java"/>
-            </fileset>
-            <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>
-        </javadoc>
-        <copy todir="${dist.javadoc.dir}">
-            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
-                <filename name="**/doc-files/**"/>
-            </fileset>
-            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
-                <include name="**/doc-files/**"/>
-            </fileset>
-        </copy>
-    </target>
-    <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview">
-        <nbbrowse file="${dist.javadoc.dir}/index.html"/>
-    </target>
-    <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
-    <!--
-                =========================
-                TEST COMPILATION SECTION
-                =========================
-            -->
-    <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
-        <mkdir dir="${build.test.classes.dir}"/>
-    </target>
-    <target name="-pre-compile-test">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target if="do.depend.true" name="-compile-test-depend">
-        <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
-    </target>
-    <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
-        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.src.dir}"/>
-        <copy todir="${build.test.classes.dir}">
-            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
-        </copy>
-    </target>
-    <target name="-post-compile-test">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
-    <target name="-pre-compile-test-single">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
-        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
-        <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
-        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/>
-        <copy todir="${build.test.classes.dir}">
-            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
-        </copy>
-    </target>
-    <target name="-post-compile-test-single">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
-    <!--
-                =======================
-                TEST EXECUTION SECTION
-                =======================
-            -->
-    <target depends="init" if="have.tests" name="-pre-test-run">
-        <mkdir dir="${build.test.results.dir}"/>
-    </target>
-    <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
-        <j2seproject3:test testincludes="**/*Test.java"/>
-    </target>
-    <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
-        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
-    </target>
-    <target depends="init" if="have.tests" name="test-report"/>
-    <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
-    <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
-    <target depends="init" if="have.tests" name="-pre-test-run-single">
-        <mkdir dir="${build.test.results.dir}"/>
-    </target>
-    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
-        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
-        <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
-    </target>
-    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
-        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
-    </target>
-    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
-    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
-        <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
-        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
-        <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
-    </target>
-    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
-        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
-    </target>
-    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/>
-    <!--
-                =======================
-                TEST DEBUGGING SECTION
-                =======================
-            -->
-    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
-        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
-        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
-    </target>
-    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
-        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
-        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
-        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
-    </target>
-    <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
-        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
-    </target>
-    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
-    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
-    <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
-        <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
-    </target>
-    <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
-    <!--
-                =========================
-                APPLET EXECUTION SECTION
-                =========================
-            -->
-    <target depends="init,compile-single" name="run-applet">
-        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
-        <j2seproject1:java classname="sun.applet.AppletViewer">
-            <customize>
-                <arg value="${applet.url}"/>
-            </customize>
-        </j2seproject1:java>
-    </target>
-    <!--
-                =========================
-                APPLET DEBUGGING  SECTION
-                =========================
-            -->
-    <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet">
-        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
-        <j2seproject3:debug classname="sun.applet.AppletViewer">
-            <customize>
-                <arg value="${applet.url}"/>
-            </customize>
-        </j2seproject3:debug>
-    </target>
-    <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/>
-    <!--
-                ===============
-                CLEANUP SECTION
-                ===============
-            -->
-    <target name="-deps-clean-init" unless="built-clean.properties">
-        <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/>
-        <delete file="${built-clean.properties}" quiet="true"/>
-    </target>
-    <target if="already.built.clean.${basedir}" name="-warn-already-built-clean">
-        <echo level="warn" message="Cycle detected: phpdbg-ui was already built"/>
-    </target>
-    <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
-        <mkdir dir="${build.dir}"/>
-        <touch file="${built-clean.properties}" verbose="false"/>
-        <property file="${built-clean.properties}" prefix="already.built.clean."/>
-        <antcall target="-warn-already-built-clean"/>
-        <propertyfile file="${built-clean.properties}">
-            <entry key="${basedir}" value=""/>
-        </propertyfile>
-    </target>
-    <target depends="init" name="-do-clean">
-        <delete dir="${build.dir}"/>
-        <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/>
-    </target>
-    <target name="-post-clean">
-        <!-- Empty placeholder for easier customization. -->
-        <!-- You can override this target in the ../build.xml file. -->
-    </target>
-    <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
-    <target name="-check-call-dep">
-        <property file="${call.built.properties}" prefix="already.built."/>
-        <condition property="should.call.dep">
-            <and>
-                <not>
-                    <isset property="already.built.${call.subproject}"/>
-                </not>
-                <available file="${call.script}"/>
-            </and>
-        </condition>
-    </target>
-    <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
-        <ant antfile="${call.script}" inheritall="false" target="${call.target}">
-            <propertyset>
-                <propertyref prefix="transfer."/>
-                <mapper from="transfer.*" to="*" type="glob"/>
-            </propertyset>
-        </ant>
-    </target>
-</project>
diff --git a/tutorials/java/nbproject/genfiles.properties b/tutorials/java/nbproject/genfiles.properties
deleted file mode 100644 (file)
index 0b6d3d0..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-build.xml.data.CRC32=ed67686a
-build.xml.script.CRC32=8c03bdb5
-build.xml.stylesheet.CRC32=8064a381@1.68.1.46
-# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
-# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
-nbproject/build-impl.xml.data.CRC32=ed67686a
-nbproject/build-impl.xml.script.CRC32=ea01fe36
-nbproject/build-impl.xml.stylesheet.CRC32=5a01deb7@1.68.1.46
diff --git a/tutorials/java/nbproject/private/config.properties b/tutorials/java/nbproject/private/config.properties
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/tutorials/java/nbproject/private/private.properties b/tutorials/java/nbproject/private/private.properties
deleted file mode 100644 (file)
index 9595bd6..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-compile.on.save=true
-do.depend=false
-do.jar=true
-javac.debug=true
-javadoc.preview=true
-user.properties.file=/home/joe/.netbeans/7.4/build.properties
diff --git a/tutorials/java/nbproject/project.properties b/tutorials/java/nbproject/project.properties
deleted file mode 100644 (file)
index df42d35..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-annotation.processing.enabled=true
-annotation.processing.enabled.in.editor=false
-annotation.processing.processors.list=
-annotation.processing.run.all.processors=true
-annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
-application.title=phpdbg-ui
-application.vendor=joe
-build.classes.dir=${build.dir}/classes
-build.classes.excludes=**/*.java,**/*.form
-# This directory is removed when the project is cleaned:
-build.dir=build
-build.generated.dir=${build.dir}/generated
-build.generated.sources.dir=${build.dir}/generated-sources
-# Only compile against the classpath explicitly listed here:
-build.sysclasspath=ignore
-build.test.classes.dir=${build.dir}/test/classes
-build.test.results.dir=${build.dir}/test/results
-# Uncomment to specify the preferred debugger connection transport:
-#debug.transport=dt_socket
-debug.classpath=\
-    ${run.classpath}
-debug.test.classpath=\
-    ${run.test.classpath}
-# Files in build.classes.dir which should be excluded from distribution jar
-dist.archive.excludes=
-# This directory is removed when the project is cleaned:
-dist.dir=dist
-dist.jar=${dist.dir}/phpdbg-ui.jar
-dist.javadoc.dir=${dist.dir}/javadoc
-endorsed.classpath=
-excludes=
-includes=**
-jar.compress=false
-javac.classpath=\
-    ${libs.eclipselink.classpath}
-# Space-separated list of extra javac options
-javac.compilerargs=
-javac.deprecation=false
-javac.processorpath=\
-    ${javac.classpath}
-javac.source=1.7
-javac.target=1.7
-javac.test.classpath=\
-    ${javac.classpath}:\
-    ${build.classes.dir}
-javac.test.processorpath=\
-    ${javac.test.classpath}
-javadoc.additionalparam=
-javadoc.author=false
-javadoc.encoding=${source.encoding}
-javadoc.noindex=false
-javadoc.nonavbar=false
-javadoc.notree=false
-javadoc.private=false
-javadoc.splitindex=true
-javadoc.use=true
-javadoc.version=false
-javadoc.windowtitle=
-main.class=phpdbg.ui.JConsole
-manifest.file=manifest.mf
-meta.inf.dir=${src.dir}/META-INF
-mkdist.disabled=false
-platform.active=default_platform
-run.classpath=\
-    ${javac.classpath}:\
-    ${build.classes.dir}
-# Space-separated list of JVM arguments used when running the project.
-# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value.
-# To set system properties for unit tests define test-sys-prop.name=value:
-run.jvmargs=
-run.test.classpath=\
-    ${javac.test.classpath}:\
-    ${build.test.classes.dir}
-source.encoding=UTF-8
-src.dir=src
-test.src.dir=test
diff --git a/tutorials/java/nbproject/project.xml b/tutorials/java/nbproject/project.xml
deleted file mode 100644 (file)
index 0c410ae..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://www.netbeans.org/ns/project/1">
-    <type>org.netbeans.modules.java.j2seproject</type>
-    <configuration>
-        <data xmlns="http://www.netbeans.org/ns/j2se-project/3">
-            <name>phpdbg-ui</name>
-            <source-roots>
-                <root id="src.dir"/>
-            </source-roots>
-            <test-roots>
-                <root id="test.src.dir"/>
-            </test-roots>
-        </data>
-    </configuration>
-</project>
diff --git a/tutorials/java/src/phpdbg/ui/CommandHistory.java b/tutorials/java/src/phpdbg/ui/CommandHistory.java
deleted file mode 100644 (file)
index b8a3b0f..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-package phpdbg.ui;
-
-
-import java.util.ArrayList;
-
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-
-/**
- * Implement a simple history list for command input
- * @author krakjoe
- */
-public class CommandHistory extends ArrayList<String> {
-    private Integer position = new Integer(0);
-    
-    public CommandHistory() {
-        super();
-    }
-    
-    @Override public boolean add(String text) {
-        String last = last();
-        if (text != null) {
-           if (last == null || !last.equals(text)) {
-               if (super.add(text)) {
-                   position = size();
-                   return true;
-               }
-           }
-        }
-        return false;
-    }
-    
-    public String last() {
-        if (position >= 1) {
-            position--;
-            return get(position);
-        } else return new String();
-    }
-    
-    public String next() {
-        if (position+1 < size()) {
-            position++;
-            return get(position);
-        } else return new String();
-    }
-}
\ No newline at end of file
diff --git a/tutorials/java/src/phpdbg/ui/DebugSocket.java b/tutorials/java/src/phpdbg/ui/DebugSocket.java
deleted file mode 100644 (file)
index 8e811e9..0000000
+++ /dev/null
@@ -1,157 +0,0 @@
-package phpdbg.ui;
-
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.InetSocketAddress;
-import java.net.Socket;
-import java.nio.ByteBuffer;
-import java.nio.channels.SelectionKey;
-import static java.nio.channels.SelectionKey.OP_READ;
-import java.nio.channels.Selector;
-import java.nio.channels.ServerSocketChannel;
-import java.nio.channels.SocketChannel;
-import java.nio.channels.spi.SelectorProvider;
-import java.util.Iterator;
-import java.util.Set;
-import phpdbg.ui.JConsole.MessageType;
-
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-
-/**
- * Manage input and output data
- * @author krakjoe
- */
-public class DebugSocket implements Runnable {
-    private final String host;
-    private final Integer port;
-    private final Boolean reader;
-    private final JConsole main;
-    private final Thread thread;
-
-    private volatile Boolean quit;
-    private volatile Boolean started;
-    
-    public DebugSocket(final String host, final Integer port, final JConsole main, Boolean reader) throws IOException {
-        this.host = host;
-        this.port = port;
-        this.main = main;
-        this.reader = reader;
-        this.quit = false;
-        this.started = false;
-        this.thread = new Thread(this);
-    }
-    
-    public void start() {
-        synchronized(this) {
-            if (!started) {
-               quit = false;
-               started = true;
-               thread.start(); 
-            }
-        }
-    }
-    
-    public void quit() {
-        synchronized(this) {
-            quit = true;
-            started = false;
-            notifyAll();
-        }
-    }
-    
-    @Override public void run() {
-        try {
-            synchronized(main) {
-                if (!main.isConnected()) {
-                    main.setConnected(true);
-                }
-            }
-            
-            if (reader) {
-                /* The reader thread will wait() until there is input */
-                Socket socket = new Socket(this.host, this.port);
-                String command;
-                OutputStream output = socket.getOutputStream();
-                
-                do {
-                    synchronized(this) {
-                        wait();
-
-                        if (!quit) {
-                            command = main.getInputField().getText();
-                            /* send command to stdin socket */
-                            if (command != null) {
-                                if (main.isEchoing()) {
-                                    main.getOutputField()
-                                           .appendANSI(
-                                                   String.format("remote> %s\n", command));
-                                }
-                                output.write(
-                                   command.getBytes());
-                                output.write("\n".getBytes());
-                                output.flush();
-                            }
-                            main.getInputField().setText(null);
-                        }
-                    }
-                } while (!quit);
-                
-                socket.close();
-            } else {
-                /*
-                * The writer thread will use non-blocking i/o consuming
-                * resources only when there is data to read
-                */
-                Selector selector = Selector.open();
-                SocketChannel channel = SocketChannel.open();
-                
-                channel.connect(
-                        new InetSocketAddress(this.host, this.port));
-                channel.configureBlocking(false);
-                channel.register(selector, OP_READ);
-
-                while (!quit) {
-                    selector.select();
-
-                    Iterator<SelectionKey> iter = selector.selectedKeys().iterator();
-
-                    while (iter.hasNext()) {
-                        if (!quit) {
-                            SocketChannel ready = (SocketChannel) (iter.next().channel());
-                            ByteBuffer bytes = ByteBuffer.allocate(128);
-                            
-                            if (ready != null) {
-                                if (ready.read(bytes) != -1) {
-                                    bytes.flip();
-                                    
-                                    main.getOutputField()
-                                        .appendANSI(new String(bytes.array()));
-                                    
-                                }
-                            }
-
-                            iter.remove();
-                        }
-                    }
-                }
-                channel.close();
-            }
-        } catch (IOException | InterruptedException ex) {
-            if (!quit) {
-                main.messageBox(ex.getMessage(), MessageType.ERROR);
-            }
-        } finally {
-            synchronized(main) {
-                if (main.isConnected()) {
-                    main.setConnected(false);
-                }
-            }
-        }
-    }
-}
diff --git a/tutorials/java/src/phpdbg/ui/JConsole.form b/tutorials/java/src/phpdbg/ui/JConsole.form
deleted file mode 100644 (file)
index d280894..0000000
+++ /dev/null
@@ -1,225 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JDialogFormInfo">
-  <NonVisualComponents>
-    <Container class="javax.swing.JPopupMenu" name="stdoutPopupMenu">
-
-      <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout">
-        <Property name="useNullLayout" type="boolean" value="true"/>
-      </Layout>
-      <SubComponents>
-        <MenuItem class="javax.swing.JMenuItem" name="resetStdout">
-          <Properties>
-            <Property name="text" type="java.lang.String" value="Clear"/>
-          </Properties>
-          <Events>
-            <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="resetStdoutActionPerformed"/>
-          </Events>
-        </MenuItem>
-      </SubComponents>
-    </Container>
-    <Menu class="java.awt.PopupMenu" name="systrayMenu">
-      <Properties>
-        <Property name="label" type="java.lang.String" value="phpdbg"/>
-        <Property name="name" type="java.lang.String" value=""/>
-      </Properties>
-      <Events>
-        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="systrayMenuActionPerformed"/>
-      </Events>
-      <AuxValues>
-        <AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="10"/>
-      </AuxValues>
-      <SubComponents>
-        <MenuItem class="java.awt.MenuItem" name="systrayExitMenuItem">
-          <Properties>
-            <Property name="label" type="java.lang.String" value="Exit"/>
-          </Properties>
-          <Events>
-            <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="systrayExitMenuItemActionPerformed"/>
-          </Events>
-        </MenuItem>
-      </SubComponents>
-    </Menu>
-  </NonVisualComponents>
-  <Properties>
-    <Property name="defaultCloseOperation" type="int" value="2"/>
-    <Property name="title" type="java.lang.String" value="phpdbg jui"/>
-    <Property name="iconImage" type="java.awt.Image" editor="org.netbeans.modules.form.ComponentChooserEditor">
-      <ComponentRef name="default"/>
-    </Property>
-  </Properties>
-  <SyntheticProperties>
-    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
-    <SyntheticProperty name="generateCenter" type="boolean" value="false"/>
-  </SyntheticProperties>
-  <AuxValues>
-    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
-    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
-    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
-    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
-    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
-    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
-    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
-    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
-    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
-  </AuxValues>
-
-  <Layout>
-    <DimensionLayout dim="0">
-      <Group type="103" groupAlignment="0" attributes="0">
-          <Group type="102" alignment="0" attributes="0">
-              <EmptySpace max="-2" attributes="0"/>
-              <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="outputScrollPane" max="32767" attributes="0"/>
-                  <Group type="102" alignment="0" attributes="0">
-                      <Group type="103" groupAlignment="0" attributes="0">
-                          <Component id="hostnameLabel" min="-2" max="-2" attributes="0"/>
-                          <Component id="commandLabel" alignment="0" min="-2" max="-2" attributes="0"/>
-                      </Group>
-                      <EmptySpace max="-2" attributes="0"/>
-                      <Group type="103" groupAlignment="0" attributes="0">
-                          <Group type="102" alignment="1" attributes="0">
-                              <Component id="input" max="32767" attributes="0"/>
-                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
-                              <Component id="echoCheckBox" min="-2" max="-2" attributes="0"/>
-                          </Group>
-                          <Group type="102" alignment="1" attributes="0">
-                              <Component id="host" pref="345" max="32767" attributes="0"/>
-                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
-                              <Component id="stdinCheckBox" min="-2" max="-2" attributes="0"/>
-                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
-                              <Component id="stdinPort" min="-2" pref="60" max="-2" attributes="0"/>
-                              <EmptySpace type="separate" max="-2" attributes="0"/>
-                              <Component id="stdoutCheckBox" min="-2" max="-2" attributes="0"/>
-                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
-                              <Component id="stdoutPort" min="-2" pref="60" max="-2" attributes="0"/>
-                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
-                              <Component id="openButton" min="-2" pref="100" max="-2" attributes="0"/>
-                          </Group>
-                      </Group>
-                  </Group>
-              </Group>
-              <EmptySpace max="-2" attributes="0"/>
-          </Group>
-      </Group>
-    </DimensionLayout>
-    <DimensionLayout dim="1">
-      <Group type="103" groupAlignment="0" attributes="0">
-          <Group type="102" alignment="0" attributes="0">
-              <EmptySpace max="-2" attributes="0"/>
-              <Component id="outputScrollPane" pref="403" max="32767" attributes="0"/>
-              <EmptySpace type="unrelated" max="-2" attributes="0"/>
-              <Group type="103" groupAlignment="3" attributes="0">
-                  <Component id="input" alignment="3" min="-2" max="-2" attributes="0"/>
-                  <Component id="echoCheckBox" alignment="3" max="-2" attributes="0"/>
-                  <Component id="commandLabel" alignment="3" min="-2" max="-2" attributes="0"/>
-              </Group>
-              <EmptySpace max="-2" attributes="0"/>
-              <Group type="103" groupAlignment="0" attributes="0">
-                  <Group type="103" groupAlignment="3" attributes="0">
-                      <Component id="stdoutPort" alignment="3" min="-2" max="-2" attributes="0"/>
-                      <Component id="stdinCheckBox" alignment="3" min="-2" max="-2" attributes="0"/>
-                      <Component id="stdoutCheckBox" alignment="3" min="-2" max="-2" attributes="0"/>
-                      <Component id="stdinPort" alignment="3" min="-2" max="-2" attributes="0"/>
-                      <Component id="hostnameLabel" alignment="3" min="-2" max="-2" attributes="0"/>
-                      <Component id="host" alignment="3" min="-2" max="-2" attributes="0"/>
-                  </Group>
-                  <Component id="openButton" min="-2" max="-2" attributes="0"/>
-              </Group>
-              <EmptySpace max="-2" attributes="0"/>
-          </Group>
-      </Group>
-    </DimensionLayout>
-  </Layout>
-  <SubComponents>
-    <Component class="javax.swing.JTextField" name="host">
-      <Properties>
-        <Property name="text" type="java.lang.String" value="127.0.0.1"/>
-        <Property name="toolTipText" type="java.lang.String" value="Set the hostname, or IPv4 address of the machine running the phpdbg remote console server"/>
-      </Properties>
-    </Component>
-    <Component class="javax.swing.JTextField" name="stdoutPort">
-      <Properties>
-        <Property name="text" type="java.lang.String" value="8000"/>
-        <Property name="toolTipText" type="java.lang.String" value="By default, stdin * 2"/>
-      </Properties>
-    </Component>
-    <Component class="javax.swing.JCheckBox" name="stdinCheckBox">
-      <Properties>
-        <Property name="selected" type="boolean" value="true"/>
-        <Property name="text" type="java.lang.String" value="stdin:"/>
-        <Property name="toolTipText" type="java.lang.String" value="Set the port for stdin, or uncheck to disable stdin"/>
-      </Properties>
-    </Component>
-    <Component class="javax.swing.JCheckBox" name="stdoutCheckBox">
-      <Properties>
-        <Property name="selected" type="boolean" value="true"/>
-        <Property name="text" type="java.lang.String" value="stdout:"/>
-        <Property name="toolTipText" type="java.lang.String" value="Set the port for stdout, or unset to disable stdout"/>
-      </Properties>
-    </Component>
-    <Component class="javax.swing.JButton" name="openButton">
-      <Properties>
-        <Property name="text" type="java.lang.String" value="Connect"/>
-        <Property name="actionCommand" type="java.lang.String" value="open"/>
-      </Properties>
-      <Events>
-        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="openButtonActionPerformed"/>
-      </Events>
-    </Component>
-    <Component class="javax.swing.JTextField" name="stdinPort">
-      <Properties>
-        <Property name="text" type="java.lang.String" value="4000"/>
-        <Property name="toolTipText" type="java.lang.String" value="The listen port passed to phpdbg (-l option)"/>
-      </Properties>
-    </Component>
-    <Component class="javax.swing.JLabel" name="hostnameLabel">
-      <Properties>
-        <Property name="text" type="java.lang.String" value="Hostname:"/>
-      </Properties>
-    </Component>
-    <Component class="javax.swing.JTextField" name="input">
-      <Properties>
-        <Property name="toolTipText" type="java.lang.String" value="Enter phpdbg commands here!"/>
-        <Property name="enabled" type="boolean" value="false"/>
-      </Properties>
-      <Events>
-        <EventHandler event="keyReleased" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="inputKeyReleased"/>
-      </Events>
-    </Component>
-    <Container class="javax.swing.JScrollPane" name="outputScrollPane">
-      <AuxValues>
-        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
-      </AuxValues>
-
-      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
-      <SubComponents>
-        <Component class="phpdbg.ui.JTerminalPane" name="output">
-          <Properties>
-            <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
-              <Font name="DialogInput" size="12" style="0"/>
-            </Property>
-            <Property name="componentPopupMenu" type="javax.swing.JPopupMenu" editor="org.netbeans.modules.form.ComponentChooserEditor">
-              <ComponentRef name="stdoutPopupMenu"/>
-            </Property>
-          </Properties>
-        </Component>
-      </SubComponents>
-    </Container>
-    <Component class="javax.swing.JCheckBox" name="echoCheckBox">
-      <Properties>
-        <Property name="selected" type="boolean" value="true"/>
-        <Property name="toolTipText" type="java.lang.String" value="Check to echo sent commands in output"/>
-        <Property name="enabled" type="boolean" value="false"/>
-        <Property name="horizontalAlignment" type="int" value="2"/>
-        <Property name="label" type="java.lang.String" value="echo"/>
-      </Properties>
-    </Component>
-    <Component class="javax.swing.JLabel" name="commandLabel">
-      <Properties>
-        <Property name="text" type="java.lang.String" value="Command:"/>
-        <Property name="enabled" type="boolean" value="false"/>
-      </Properties>
-    </Component>
-  </SubComponents>
-</Form>
diff --git a/tutorials/java/src/phpdbg/ui/JConsole.java b/tutorials/java/src/phpdbg/ui/JConsole.java
deleted file mode 100644 (file)
index 6c8cfb3..0000000
+++ /dev/null
@@ -1,471 +0,0 @@
-package phpdbg.ui;
-
-
-import java.awt.AWTException;
-import java.awt.Frame;
-import java.awt.Image;
-import java.awt.SystemTray;
-import java.awt.TrayIcon;
-import static java.awt.event.KeyEvent.VK_DOWN;
-import static java.awt.event.KeyEvent.VK_ENTER;
-import static java.awt.event.KeyEvent.VK_UP;
-import java.awt.event.WindowEvent;
-import java.io.IOException;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import javax.imageio.ImageIO;
-import javax.swing.JOptionPane;
-import javax.swing.JScrollPane;
-import javax.swing.JTextField;
-import javax.swing.UIManager;
-import javax.swing.UnsupportedLookAndFeelException;
-
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-
-/**
- *
- * @author krakjoe
- */
-public class JConsole extends javax.swing.JDialog {
-    /**
-     * Creates user interface
-     * @param parent
-     * @param modal
-     */
-    public JConsole(java.awt.Frame parent, boolean modal) {
-        super(parent, modal);
-        initComponents();
-    }
-
-    /**
-     * This method is called from within the constructor to initialize the form.
-     * WARNING: Do NOT modify this code. The content of this method is always
-     * regenerated by the Form Editor.
-     */
-    @SuppressWarnings("unchecked")
-    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
-    private void initComponents() {
-
-        stdoutPopupMenu = new javax.swing.JPopupMenu();
-        resetStdout = new javax.swing.JMenuItem();
-        systrayMenu = new java.awt.PopupMenu();
-        systrayExitMenuItem = new java.awt.MenuItem();
-        host = new javax.swing.JTextField();
-        stdoutPort = new javax.swing.JTextField();
-        stdinCheckBox = new javax.swing.JCheckBox();
-        stdoutCheckBox = new javax.swing.JCheckBox();
-        openButton = new javax.swing.JButton();
-        stdinPort = new javax.swing.JTextField();
-        hostnameLabel = new javax.swing.JLabel();
-        input = new javax.swing.JTextField();
-        outputScrollPane = new javax.swing.JScrollPane();
-        output = new phpdbg.ui.JTerminalPane();
-        echoCheckBox = new javax.swing.JCheckBox();
-        commandLabel = new javax.swing.JLabel();
-
-        resetStdout.setText("Clear");
-        resetStdout.addActionListener(new java.awt.event.ActionListener() {
-            public void actionPerformed(java.awt.event.ActionEvent evt) {
-                resetStdoutActionPerformed(evt);
-            }
-        });
-        stdoutPopupMenu.add(resetStdout);
-
-        systrayMenu.setLabel("phpdbg");
-        systrayMenu.setName("");
-        systrayMenu.addActionListener(new java.awt.event.ActionListener() {
-            public void actionPerformed(java.awt.event.ActionEvent evt) {
-                systrayMenuActionPerformed(evt);
-            }
-        });
-
-        systrayExitMenuItem.setLabel("Exit");
-        systrayExitMenuItem.addActionListener(new java.awt.event.ActionListener() {
-            public void actionPerformed(java.awt.event.ActionEvent evt) {
-                systrayExitMenuItemActionPerformed(evt);
-            }
-        });
-        systrayMenu.add(systrayExitMenuItem);
-
-        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
-        setTitle("phpdbg jui");
-
-        host.setText("127.0.0.1");
-        host.setToolTipText("Set the hostname, or IPv4 address of the machine running the phpdbg remote console server");
-
-        stdoutPort.setText("8000");
-        stdoutPort.setToolTipText("By default, stdin * 2");
-
-        stdinCheckBox.setSelected(true);
-        stdinCheckBox.setText("stdin:");
-        stdinCheckBox.setToolTipText("Set the port for stdin, or uncheck to disable stdin");
-
-        stdoutCheckBox.setSelected(true);
-        stdoutCheckBox.setText("stdout:");
-        stdoutCheckBox.setToolTipText("Set the port for stdout, or unset to disable stdout");
-
-        openButton.setText("Connect");
-        openButton.setActionCommand("open");
-        openButton.addActionListener(new java.awt.event.ActionListener() {
-            public void actionPerformed(java.awt.event.ActionEvent evt) {
-                openButtonActionPerformed(evt);
-            }
-        });
-
-        stdinPort.setText("4000");
-        stdinPort.setToolTipText("The listen port passed to phpdbg (-l option)");
-
-        hostnameLabel.setText("Hostname:");
-
-        input.setToolTipText("Enter phpdbg commands here!");
-        input.setEnabled(false);
-        input.addKeyListener(new java.awt.event.KeyAdapter() {
-            public void keyReleased(java.awt.event.KeyEvent evt) {
-                inputKeyReleased(evt);
-            }
-        });
-
-        output.setFont(new java.awt.Font("DialogInput", 0, 12)); // NOI18N
-        output.setComponentPopupMenu(stdoutPopupMenu);
-        outputScrollPane.setViewportView(output);
-
-        echoCheckBox.setSelected(true);
-        echoCheckBox.setToolTipText("Check to echo sent commands in output");
-        echoCheckBox.setEnabled(false);
-        echoCheckBox.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
-        echoCheckBox.setLabel("echo");
-
-        commandLabel.setText("Command:");
-        commandLabel.setEnabled(false);
-
-        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
-        getContentPane().setLayout(layout);
-        layout.setHorizontalGroup(
-            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addGroup(layout.createSequentialGroup()
-                .addContainerGap()
-                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                    .addComponent(outputScrollPane)
-                    .addGroup(layout.createSequentialGroup()
-                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                            .addComponent(hostnameLabel)
-                            .addComponent(commandLabel))
-                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
-                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
-                                .addComponent(input)
-                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
-                                .addComponent(echoCheckBox))
-                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
-                                .addComponent(host, javax.swing.GroupLayout.DEFAULT_SIZE, 345, Short.MAX_VALUE)
-                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
-                                .addComponent(stdinCheckBox)
-                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
-                                .addComponent(stdinPort, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE)
-                                .addGap(18, 18, 18)
-                                .addComponent(stdoutCheckBox)
-                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
-                                .addComponent(stdoutPort, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE)
-                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
-                                .addComponent(openButton, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)))))
-                .addContainerGap())
-        );
-        layout.setVerticalGroup(
-            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addGroup(layout.createSequentialGroup()
-                .addContainerGap()
-                .addComponent(outputScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 403, Short.MAX_VALUE)
-                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
-                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
-                    .addComponent(input, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
-                    .addComponent(echoCheckBox)
-                    .addComponent(commandLabel))
-                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
-                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
-                        .addComponent(stdoutPort, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
-                        .addComponent(stdinCheckBox)
-                        .addComponent(stdoutCheckBox)
-                        .addComponent(stdinPort, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
-                        .addComponent(hostnameLabel)
-                        .addComponent(host, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
-                    .addComponent(openButton))
-                .addContainerGap())
-        );
-
-        pack();
-    }// </editor-fold>//GEN-END:initComponents
-
-    private void inputKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_inputKeyReleased
-        switch (evt.getKeyCode()) {
-            case VK_ENTER: {
-                if (in != null) {
-                    history.add(input.getText());
-                    synchronized(in) {
-                        in.notifyAll();
-                    }
-                }
-            } break;
-            case VK_UP: {
-                String last = history.last();
-                if (last.length() > 0) {
-                    input.setText(last);
-                }
-            } break;
-                
-            case VK_DOWN: {
-                String next = history.next();
-                if (next.length() > 0) {
-                    input.setText(next);
-                }
-            } break;
-        }
-    }//GEN-LAST:event_inputKeyReleased
-
-    private void openButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_openButtonActionPerformed
-        try {
-            if (!connected) {
-                connect();
-            } else {
-                disconnect();
-            }
-        } catch (IOException ex) {
-            messageBox(ex.getMessage(), MessageType.ERROR);
-        }
-    }//GEN-LAST:event_openButtonActionPerformed
-
-    private void resetStdoutActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_resetStdoutActionPerformed
-        // TODO add your handling code here:
-        output.setText(null);
-    }//GEN-LAST:event_resetStdoutActionPerformed
-
-    private void systrayExitMenuItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_systrayExitMenuItemActionPerformed
-        // TODO add your handling code here:
-        dialog.disconnect();
-        System.exit(0);
-    }//GEN-LAST:event_systrayExitMenuItemActionPerformed
-
-    private void systrayMenuActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_systrayMenuActionPerformed
-        // TODO add your handling code here:
-    }//GEN-LAST:event_systrayMenuActionPerformed
-    
-    private void disconnect() {
-        if (in != null) {
-            in.quit();
-        }
-        if (out != null) {
-            out.quit();
-        }
-    }
-    
-    private void connect() throws IOException {
-        Integer ports[] = new Integer[2];
-        String address = getHost();
-
-        if (address != null) {
-            ports[0] = stdinCheckBox.isSelected() ? getStdinPort() : -1;
-            ports[1] = stdoutCheckBox.isSelected() ? getStdoutPort() : -1;
-
-            if (ports[0] != 0 && ports[1] != 0) {
-                if (stdinCheckBox.isSelected()) {
-                    if (ports[0] > 0) {
-                        in = new DebugSocket(
-                                address, ports[0], this, true);
-                        in.start();
-                    }
-                }
-
-                if (stdoutCheckBox.isSelected()) {
-                    if (ports[1] > 0) {
-                        out = new DebugSocket(
-                               address, ports[1], this, false);
-                        out.start();
-                    }
-                }
-            }
-        }
-    }
-    
-    public Boolean isConnected() {
-        return connected;
-    }
-    
-    public Boolean isEchoing() {
-        return echoCheckBox.isSelected();
-    }
-    
-    public void setConnected(Boolean isConnected) {
-        synchronized(this) {
-            if (isConnected) {
-                connected = true;
-                openButton.setText("Disconnect");
-                host.setEnabled(false);
-                stdinPort.setEnabled(false);
-                stdinCheckBox.setEnabled(false);
-                if (stdinCheckBox.isSelected()) {
-                    input.setEnabled(true);
-                    commandLabel.setEnabled(true);
-                    echoCheckBox.setEnabled(true);
-                } else {
-                    input.setEnabled(false);
-                    commandLabel.setEnabled(false);
-                    echoCheckBox.setEnabled(false);
-                }
-                stdoutPort.setEnabled(false);
-                stdoutCheckBox.setEnabled(false);
-                hostnameLabel.setEnabled(false);
-                commandLabel.setEnabled(true);
-            } else {
-                connected = false;
-                openButton.setText("Connect");
-                host.setEnabled(true);
-                stdinPort.setEnabled(true);
-                input.setEnabled(false);
-                commandLabel.setEnabled(false);
-                echoCheckBox.setEnabled(false);
-                stdinCheckBox.setEnabled(true);
-                stdoutPort.setEnabled(true);
-                stdoutCheckBox.setEnabled(true);
-                hostnameLabel.setEnabled(true);
-            }
-        }
-    }
-    
-    public JTextField getInputField() { return input; }
-    public JTerminalPane getOutputField() { return output; }
-    
-    public String getHost() { 
-        String address = host.getText();
-        if (address != null && address.length() > 0) {
-            return address;
-        } else {
-            messageBox("Invalid hostname provided!", MessageType.WARN);
-        }
-        
-        return null;
-    }
-    
-    public Integer getStdinPort() { 
-        try {
-            return Integer.parseInt(stdinPort.getText()); 
-        } catch (NumberFormatException ex) {
-            messageBox("Invalid stdin port provided!", MessageType.WARN);
-        }
-        return 0;
-    }
-    
-    public Integer getStdoutPort() { 
-        try {
-            return Integer.parseInt(stdoutPort.getText()); 
-        } catch (NumberFormatException ex) {
-            messageBox("Invalid stdout port provided!", MessageType.WARN);
-        }
-        return 0;
-    }
-    
-    public JScrollPane getOutputScrollPane() {
-        return outputScrollPane;
-    }
-    
-    public synchronized void messageBox(String message) {
-        messageBox(message, MessageType.INFO);
-    }
-    
-    public synchronized void messageBox(String message, MessageType type) {
-        JOptionPane.showMessageDialog(this, message, "phpdbg jui", type.getType());
-    }
-    /**
-     * @param args the command line arguments
-     */
-    public static void main(final String args[]) {
-        for (UIManager.LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
-            if (info.getName().equals("Nimbus")) {
-                try {
-                    UIManager.setLookAndFeel(
-                            info.getClassName());
-                    break;
-                } catch (ClassNotFoundException | 
-                        InstantiationException | 
-                        IllegalAccessException | 
-                        UnsupportedLookAndFeelException ex) {
-                    Logger.getLogger(JConsole.class.getName()).log(Level.SEVERE, null, ex);
-                }
-            }
-        }
-        
-        /* Create and display the dialog */
-        java.awt.EventQueue.invokeLater(new Runnable() {
-            @Override public void run() {
-                dialog = new JConsole(new javax.swing.JFrame(), true);
-                dialog.addWindowListener(new java.awt.event.WindowAdapter() {
-                    @Override
-                    public void windowClosing(java.awt.event.WindowEvent e) {
-                        dialog.disconnect();
-                        System.exit(0);
-                    }
-                });
-                try {
-                    if (tray == null) {
-                        Image trayIconImage = ImageIO.read(
-                            JConsole.class.getResource("logo-dbg.png"));
-                        dialog.setIconImage(trayIconImage);
-
-                        tray = new TrayIcon(trayIconImage);
-                        tray.setPopupMenu(systrayMenu);
-                        tray.setToolTip("phpdbg - The Interactive PHP Debugger");
-
-                        SystemTray.getSystemTray().add(tray);
-                    } 
-                } catch ( AWTException | IOException ex) {
-                    dialog.messageBox(ex.getMessage(), MessageType.ERROR);
-                }
-                dialog.setVisible(true);
-            }
-        });
-    }
-    
-    private static DebugSocket in;
-    private static DebugSocket out;
-    private static JConsole dialog;
-    private static Boolean connected = false;
-    private static CommandHistory history = new CommandHistory();
-    private static TrayIcon tray;
-    
-    // Variables declaration - do not modify//GEN-BEGIN:variables
-    private javax.swing.JLabel commandLabel;
-    private javax.swing.JCheckBox echoCheckBox;
-    private javax.swing.JTextField host;
-    private javax.swing.JLabel hostnameLabel;
-    private javax.swing.JTextField input;
-    private javax.swing.JButton openButton;
-    private phpdbg.ui.JTerminalPane output;
-    private javax.swing.JScrollPane outputScrollPane;
-    private javax.swing.JMenuItem resetStdout;
-    private javax.swing.JCheckBox stdinCheckBox;
-    private javax.swing.JTextField stdinPort;
-    private javax.swing.JCheckBox stdoutCheckBox;
-    private javax.swing.JPopupMenu stdoutPopupMenu;
-    private javax.swing.JTextField stdoutPort;
-    private java.awt.MenuItem systrayExitMenuItem;
-    private static java.awt.PopupMenu systrayMenu;
-    // End of variables declaration//GEN-END:variables
-    public enum MessageType {
-        INFO (JOptionPane.INFORMATION_MESSAGE),
-        WARN (JOptionPane.WARNING_MESSAGE),
-        ERROR (JOptionPane.ERROR_MESSAGE);
-        
-        private final Integer type;
-        private MessageType(Integer type) {
-            this.type = type;
-        }
-        public Integer getType() { return this.type; }
-        public Boolean equals(Integer other)  { return this.type.equals(other); }
-        public Boolean equals(MessageType other)  { return this.type.equals(other.getType()); }
-    }
-}
diff --git a/tutorials/java/src/phpdbg/ui/JTerminalPane.java b/tutorials/java/src/phpdbg/ui/JTerminalPane.java
deleted file mode 100644 (file)
index a08be44..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-
-package phpdbg.ui;
-
-/**
- *
- * @author krakjoe
- */
-import javax.swing.*;
-import javax.swing.text.*;
-import java.awt.Color;
-import java.awt.Graphics;
-import java.awt.Image;
-import java.io.IOException;
-import java.util.HashMap;
-import javax.imageio.ImageIO;
-
-public class JTerminalPane extends JTextPane {
-    private static class JTerminalColor {
-        private final Color color;
-        private final Boolean bold;
-        private final Boolean underline;
-
-        public JTerminalColor(Float h, Float s, Float b, Boolean bold, Boolean underline) {
-            this.color = Color.getHSBColor(h, s, b);
-            this.bold = bold;
-            this.underline = underline;
-        }
-        
-        public JTerminalColor(Float h, Float s, Float b, Boolean bold) {
-            this(h, s, b, bold, false);
-        }
-        
-        public JTerminalColor(Float h, Float s, Float b) {
-            this(h, s, b, false, false);
-        }
-
-        public Boolean      isUnderlined()  { return this.underline; }
-        public Boolean      isBold()        { return this.bold; }
-        public Color        getColor()      { return this.color; }
-    }
-
-    private static class JTerminalColors extends HashMap<String, JTerminalColor> {
-        public JTerminalColors() {
-            put("\u001B[0;30m", new JTerminalColor(0.000f, 0.000f, 0.502f));
-            put("\u001B[0;31m", new JTerminalColor(0.000f, 1.000f, 1.000f));
-            put("\u001B[0;32m", new JTerminalColor(0.333f, 1.000f, 1.000f));
-            put("\u001B[0;33m", new JTerminalColor(0.167f, 1.000f, 1.000f));
-            put("\u001B[0;34m", new JTerminalColor(0.667f, 1.000f, 1.000f));
-            put("\u001B[0;35m", new JTerminalColor(0.833f, 1.000f, 1.000f));
-            put("\u001B[0;36m", new JTerminalColor(0.500f, 1.000f, 1.000f));
-            put("\u001B[0;37m", new JTerminalColor(0.000f, 0.000f, 1.000f));
-            put("\u001B[0;64m", new JTerminalColor(0.000f, 0.000f, 1.000f));
-            put("\u001B[1;30m", new JTerminalColor(0.000f, 0.000f, 0.502f, true));
-            put("\u001B[1;31m", new JTerminalColor(0.000f, 1.000f, 1.000f, true));
-            put("\u001B[1;32m", new JTerminalColor(0.333f, 1.000f, 1.000f, true));
-            put("\u001B[1;33m", new JTerminalColor(0.167f, 1.000f, 1.000f, true));
-            put("\u001B[1;34m", new JTerminalColor(0.667f, 1.000f, 1.000f, true));
-            put("\u001B[1;35m", new JTerminalColor(0.833f, 1.000f, 1.000f, true));
-            put("\u001B[1;36m", new JTerminalColor(0.500f, 1.000f, 1.000f, true));
-            put("\u001B[1;37m", new JTerminalColor(0.000f, 0.000f, 1.000f, true));
-            put("\u001B[1;64m", new JTerminalColor(0.000f, 0.000f, 1.000f, true));
-            put("\u001B[4;30m", new JTerminalColor(0.000f, 0.000f, 0.502f, false, true));
-            put("\u001B[4;31m", new JTerminalColor(0.000f, 1.000f, 1.000f, false, true));
-            put("\u001B[4;32m", new JTerminalColor(0.333f, 1.000f, 1.000f, false, true));
-            put("\u001B[4;33m", new JTerminalColor(0.167f, 1.000f, 1.000f, false, true));
-            put("\u001B[4;34m", new JTerminalColor(0.667f, 1.000f, 1.000f, false, true));
-            put("\u001B[4;35m", new JTerminalColor(0.833f, 1.000f, 1.000f, false, true));
-            put("\u001B[4;36m", new JTerminalColor(0.500f, 1.000f, 1.000f, false, true));
-            put("\u001B[4;37m", new JTerminalColor(0.000f, 0.000f, 1.000f, false, true));
-            put("\u001B[4;64m", new JTerminalColor(0.000f, 0.000f, 1.000f, false, true));
-            
-            put("reset", new JTerminalColor(0.000f, 0.000f, 1.000f));
-        }
-        
-        public JTerminalColor find(String ANSIColor) {
-            if (containsKey(ANSIColor)) {
-                return get(ANSIColor);
-            } else return get("reset");
-        }
-    }
-    
-    public JTerminalPane() {
-        super();
-        setOpaque(false);
-        setBackground(new Color(0, 0, 0, 0));
-        colorCurrent = colors.find("reset");
-    }
-
-    @Override public void paintComponent(Graphics g) {
-        g.setColor(Color.BLACK);
-        g.fillRect(0, 0, getWidth(), getHeight());
-
-        try {
-            Image image = ImageIO.read(
-                    JTerminalPane.class.getResource("logo-small.png"));
-
-            g.drawImage(
-                    image, 
-                    getWidth() - image.getWidth(this) - 10, 
-                    getHeight() - image.getHeight(this) - 10, 
-                    image.getWidth(this), image.getHeight(this), this);
-
-        } catch (IOException | NullPointerException | IllegalArgumentException ex) {}
-
-        super.paintComponent(g);
-    }
-
-    private void append(JTerminalColor c, String s) {
-        StyleContext sc = StyleContext.getDefaultStyleContext();
-        AttributeSet aset = sc.addAttribute(
-                SimpleAttributeSet.EMPTY, StyleConstants.Foreground, c.getColor());
-        
-        aset = sc.addAttribute(aset, StyleConstants.Underline, c.isUnderlined());
-        aset = sc.addAttribute(aset, StyleConstants.Bold, c.isBold());
-
-        setCharacterAttributes(aset, false);
-        replaceSelection(s);
-        setCaretPosition(getDocument().getLength());
-    }
-
-    public synchronized void appendANSI(String s) {
-        int aPos = 0;
-        int aIndex;
-        int mIndex;
-        String tmpString;
-        boolean stillSearching;
-
-        String addString = remaining + s;
-
-        remaining = "";
-
-        if (addString.length() > 0) {
-            aIndex = addString.indexOf("\u001B");
-            if (aIndex == -1) {
-              append(colorCurrent,addString);
-              return;
-            }
-
-            if (aIndex > 0) {
-              tmpString = addString.substring(0,aIndex);
-              append(colorCurrent, tmpString);
-              aPos = aIndex;
-            }
-
-            stillSearching = true;
-            while (stillSearching) {
-                mIndex = addString.indexOf("m",aPos);
-                if (mIndex < 0) {
-                    remaining = addString.substring(aPos,addString.length());
-                    stillSearching = false;
-                    continue;
-                }
-                else {
-                    tmpString = addString.substring(aPos,mIndex+1);
-                    colorCurrent = colors.find(tmpString);
-                }
-                aPos = mIndex + 1;
-
-                aIndex = addString.indexOf("\u001B", aPos);
-
-                if (aIndex == -1) {
-                    tmpString = addString.substring(aPos,addString.length());
-                    append(colorCurrent, tmpString);
-                    stillSearching = false;
-                    continue; 
-                }
-                tmpString = addString.substring(aPos,aIndex);
-                aPos = aIndex;
-                append(colorCurrent, tmpString);
-            }
-        }
-    }
-    
-    private static JTerminalColors colors = new JTerminalColors();
-    private JTerminalColor colorCurrent;
-    private String remaining = "";
-}
diff --git a/tutorials/java/src/phpdbg/ui/logo-dbg.png b/tutorials/java/src/phpdbg/ui/logo-dbg.png
deleted file mode 100644 (file)
index 621f29b..0000000
Binary files a/tutorials/java/src/phpdbg/ui/logo-dbg.png and /dev/null differ
diff --git a/tutorials/java/src/phpdbg/ui/logo-small.png b/tutorials/java/src/phpdbg/ui/logo-small.png
deleted file mode 100644 (file)
index 1792379..0000000
Binary files a/tutorials/java/src/phpdbg/ui/logo-small.png and /dev/null differ
diff --git a/tutorials/phpdbg.png b/tutorials/phpdbg.png
deleted file mode 100644 (file)
index 8e8df1e..0000000
Binary files a/tutorials/phpdbg.png and /dev/null differ
diff --git a/tutorials/remote.md b/tutorials/remote.md
deleted file mode 100644 (file)
index 72bac6e..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-Remote Debugging
-================
-*Using phpdbg across the network*
-
-It is sometimes useful to execute some code in the environment that exhibits some bugs; while there is a pretty good chance of being able to mock the environment that exhibited the bug on another machine, it is sometimes impossible or impractical.
-
-Remote debugging allows you to start an instance of phpdbg on any machine, and connect to it from any machine, bundled is a remote client implemented in Java:
-
-![phpdbg jui](https://raw.github.com/krakjoe/phpdbg/master/tutorials/java-example.png)
-
-
-Starting phpdbg in Remote Console Mode
-======================================
-*Starting the server ...*
-
-Simply open a terminal on the target machine and issue the command
-
-```
-./phpdbg -l4000
-```
-
-This will initialize phpdbg in Remote Console Mode, using port 4000 for stdin and port 8000 for stdout.
-
-To stop the service, send *SIGINT* to the phpdbg process, this will force it to bailout, as gracefully as it ever does.
-
-Specific Ports
---------------
-
-To listen on specific ports, the -l flag will accept a pair of ports in the following way:
-
-```
-./phpdbg -l4000/8000
-```
-
-Specific Interfaces
--------------------
-
-To bind to a specific interface, or all interfaces use the -a flag:
-
-```
-./phpdbg -l4000 -a192.168.0.3
-```
-
-Will bind the Remote Console to the interface with the specified address, while:
-
-```
-./phpdbg -l4000 -a
-```
-
-Will bind the Remote Console to all available addresses.
-
-Starting phpdbg-jui Anywhere
-============================
-*Java is everywhere, so is phpdbg ...*
-
-A JRE is needed for the bundled remote client, given any operating system with a working installation of Java:
-
-```
-java -jar /path/to/phpdbg-ui.jar
-```
-
-Will initialize the bundled client, simply configure the settings accordingly and press *Connect*
-
-If disconnection is normal, the environment persists - another team member can pick up the session where it is left off.
-
-Debugging remotely is no different to debugging locally, all of the same functionality is provided remotely.
diff --git a/tutorials/session.png b/tutorials/session.png
deleted file mode 100644 (file)
index 9146230..0000000
Binary files a/tutorials/session.png and /dev/null differ
diff --git a/tutorials/show-broken.png b/tutorials/show-broken.png
deleted file mode 100644 (file)
index 92e5b58..0000000
Binary files a/tutorials/show-broken.png and /dev/null differ
diff --git a/tutorials/show-conditionals.png b/tutorials/show-conditionals.png
deleted file mode 100644 (file)
index 1decbcc..0000000
Binary files a/tutorials/show-conditionals.png and /dev/null differ
diff --git a/tutorials/show-printing.png b/tutorials/show-printing.png
deleted file mode 100644 (file)
index 1783fe0..0000000
Binary files a/tutorials/show-printing.png and /dev/null differ
diff --git a/tutorials/show-verbose.png b/tutorials/show-verbose.png
deleted file mode 100644 (file)
index 858be5b..0000000
Binary files a/tutorials/show-verbose.png and /dev/null differ
diff --git a/tutorials/simples.md b/tutorials/simples.md
deleted file mode 100644 (file)
index 18d0a01..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-Simples
-=======
-*Everything is simple ...*
-
-It is easy to imagine that debugging a whole web application might be difficult, in a console program, in fact this is not the case:
-A web application is just an instance of the PHP interpreter with some very specific super globals set.
-
-With everything in the correct place, your web application has no clue that it being served not to a client, but to you, probably in your underwear.
-
-With the facts established, you can use phpdbg to debug anything that is PHP, with a bit of cleverness in the right places.
-
-Very Simple
-===========
-*A good starting place ...*
-
-``` 
-phpdbg -e/path/to/my/script.php
-```
-
-The command above will result in a phpdbg console that has executed *.phpdbginit* (if it exists) and is ready to compile, inspect, step through
-and execute the code contained in */path/to/my/script.php*
-
-The first thing to do upon being presented with the console, is decide what to break for ...
-
-Many options exist for choosing (and setting) breakpoints:
-
-```
-phpdbg> b phpdbg::isGreat
-phpdbg> b phpdbg_is_great
-```
-
-The commands above will be the most common for most developers; that is, specifying the entry point of a function or method on which to break execution.
-
-Introspection of code is supported on the console, for anything that is compiled, if help is required remembering the name of a particular method then issue:
-
-```
-phpdbg> compile
-phpdbg> print class myClassName
-```
-
-Introspection doesn't only provide you with names, but the addresses of every opcode in every statement, which you may use to specify with as much precision as 
-is possible where to break execution.
-
-**There is a print command for particular methods, useful if a class is very large and your screen is not!**
-
-At this point, break points are set; the next thing to do is issue the run command:
-
-```
-phpdbg> run
-```
-
-This will cause execution of the context, if a breakpoint is reached, the interactive console returns such that more commands can be issued.
-
-When a breakpoint is reached, several options for continuation exist:
-
- - step through every instruction
- - run past the end of the stack
- - run to the end of the stack
-
-*Q: WTF is a stack?*
-
-*A: Generally the current codepath, more precisely: current function, method or file*
-
-Just quickly; an explanation of what "to" and "past" the end of a "stack" means:
-
-Assuming there is a break set for *my_function_somewhere* in the following code:
-
-```
-function my_function_somewhere($input = array()) /* break here on entry to the function */
-{              
-       /* ... the stack ... */
-       
-       if (count($input)) 
-       {
-               /* to -> */     return $input[1];
-       } 
-       else
-       {
-               /* to -> */ return rand(1, 100);
-       }
-}
-
-/* past -> */ $result = my_function_somewhere();
-if ($result) 
-{
-       /* and so on */
-       var_dump($result);
-}
-```
-
-The commands *finish* and *leave*, run *past* and *to* the end of the stack respecitively.
-
-**Note: the finish command does not automatically break; to break past the end of the stack enable stepping before issuing finish, the leave command breaks implicitly**
-
-On with execution ...
-=====================
-*Stepping, slowly, is sometimes the way forward ...*
-
-Should you want to inspect what happens during the execution of the stack, enable stepping:
-
-```
-phpdbg> step 1
-```
-
-In case it wasn't obvious, the next thing to do is nearly always *next*:
-
-```
-phpdbg> next
-```
-
-Which will cause the vm to assume control and continue execution until the next break point, or completion.
-
-Stepping through every single instruction is not usually beneficial, issue:
-
-```
-phpdbg> step 0
-```
-
-To disable stepping again, and only interrupt execution for breakpoints.
-
-As hard as it gets ...
-======================
-*Web Applications*
-
-As mentioned, a web application is only a script executing with some specific super globals set; 
-
-**The mocking of any web request just requires that you set the super globals of the script accordingly**
-
-We refer to this as "bootstrapping", mostly because I have always wanted a genuine reason to use that word.
-
-See the example, for help with bootstrapping ...
diff --git a/tutorials/welcome.png b/tutorials/welcome.png
deleted file mode 100644 (file)
index 9df72c6..0000000
Binary files a/tutorials/welcome.png and /dev/null differ
diff --git a/tutorials/windows-preview.png b/tutorials/windows-preview.png
deleted file mode 100644 (file)
index 037d89f..0000000
Binary files a/tutorials/windows-preview.png and /dev/null differ