<commit_before>====
    Licensed to Apereo under one or more contributor license
    agreements. See the NOTICE file distributed with this work
    for additional information regarding copyright ownership.
    Apereo licenses this file to you under the Apache License,
    Version 2.0 (the "License"); you may not use this file
    except in compliance with the License.  You may obtain a
    copy of the License at the following location:

      http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
====

Introduction:
--------------------------------------------------------------------------------
This file, /docs/antHelp.txt, provides some default help text for the uPortal
ant build. The build.xml is configured to print this file by default in the
case where no other specific target is specified.


Other help with our build file:
--------------------------------------------------------------------------------
Type "ant -p" to see a list of ant targets and the descriptions of those targets
as recorded directly in the build.xml file.


Running the targets:
--------------------------------------------------------------------------------
Your run the targets by specifying the specific target to the GUI in which you
are running Ant (Eclipse is highly recommended) or by invoking ant with the name
of the desired task as the first argument.

Example: ant compile


Available targets:
--------------------------------------------------------------------------------
"help" - The target that prints this file

Deployment Targets:
------------------

"initportal" - The target that will deploy uPortal and load your database, but
    you must first set up the JDBC properties in rdbm.properties and set up the
    path to your servlet container in build.properties.
    
    The "initportal" target runs all the targets necessary to deploy the portal
    and prepare the portal database: bootstrap, deploy-ear, db, pubchan, i18n-db.

    *IMPORTANT* Do not run this task against a database the contents of which
    you care about, as it initializes the database by first dropping all tables.

"deploy-war" - The "deploy-war" target first makes sure everything is compiled
    and up-to-date and then copies the extracted uPortal Web Application Archive
    (WAR) to the location required by your servlet container as specified in
    build.properties.
    
"deploy-ear" - The "deploy-ear" target first makes sure everything is compiled
    and up-to-date and builds an Enterprise Application Archive (EAR) composed
    of the uPortal WAR and the WARs of all the portlets being deployed. The EAR
    is then extracted to the location required by your servlet container as
    specified in build.properties.

"deployPortletApp" - The "deployPortletApp" target runs the portlet Deployer
    tool. This tool takes a portlet WAR file, rewrites the web.xml file and
    deploys the results to the servlet container.

    Example:
        ant deployPortletApp -DportletApp=C:/TEMP/myPortlet.war

Database Targets:
----------------

"db" - The "db" target runs uPortal's DbLoader program to load the database.
    WARNING: THIS MAY ERASE EXISTING uPORTAL TABLES!!!

    The "db" target accepts command line arguments which override values
    read from the dbloader.xml file:
    
    Options:
        To use /properties/db/mytables.xml instead of the tables file specified
        in dbloader.xml:
        ant db -Dusetable=-t -Dtablefile=/properties/db/mytables.xml

        To use /properties/db/mydata.xml instead of the data file specified in
        dbloader.xml:
        ant db -Dusedata=-d -Ddatafile=/properties/db/mydata.xml

        Note: the tables and data files can both be overridden by combining the
        arguments.  The usetable and tablefile must be used in tandem and
        sequentially on the command line. Similarly, usedata and datafile must but
        used in tandem.

        To set createScript=true
        ant db -Dcreatescript=-c
        
        To set createScript=false
        ant db -Dcreatescript=-nc
        
        To set dropTables=true
        ant db -Ddroptables=-D
        
        To set dropTables=false
        ant db -Ddroptables=-nD
        
        To set createTables=true
        ant db -Dcreatetables=-C
        
        To set createTables=false
        ant db -Dcreatetables=-nC
        
        To set populateTables=true
        ant db -Dpopulatetables=-P
        
        To set populateTables=false
        ant db -Dpopulatetables=-nP
        
        The -c, -nc, -D, -nD, -C, -nC, -P, -nP arguements may all be used
        independantly or in any combination although it would not make sense to,
        for example, use both -c and -nc.

User Targets:
------------

"md5passwd" -  The "md5passwd" target runs uPortal's md5passwd program to create
    an entry for a user in the UP_PERSON_DIR table. To run this target, you must
    specify the username parameter in the command line.  For example:

    Example:
        ant md5passwd -Dusername=ken

"deluser" - The "deluser" target runs uPortal's DeleteUser program to delete all
    traces of a uportal user from the uPortal database.
    
    Examples:
        ant deluser -Duser=username

Import/Export Targets:
---------------------

"data-list" - With no arguments lists all supported portal data types and
    the operations (export, delete) supported for each.  Otherwise list all
    of the data currently in the database for a specific type.

    ant data-list -Dtype={entity-type}

"data-import" - Adds to or updates the portal database for the entities
    defined in the specified XML file(s).

    ant data-import -Dfile={path-to-file}
    ant data-import -Ddir={path-to-directory} [-Dpattern={ant-pattern}]

"data-export" - Creates XML files representing the requested entities and
    writes them to the specified file system location.

    ant data-export -Ddir={path-to-directory} -Dtype={entity-type} [-Dsysid={entity-identifier}]

Misc Targets:
------------

"hsql" -  The "hsql" target starts an HSQLDB server instance on the current
    machine consistent with the default rdbm.properties data access
    configuration of uPortal. Note that this Ant target does not return in
    a normal execution.  It starts the database server without forking so
    you'll need to kill the HSQLDB Server manually, e.g. via control-C or
    via a stop build control in your IDE.

    Used in a local development environment.
	
	GRADLE VERSION IS AVAILABLE
	to start the hsql server use 
	gradle startHsql
	
	to stop the hsql 
	gradle stopHsql

Maven Build Options:
-------------------

Options you can pass to maven for building:

    -Dmaven.test.skip=true - Don't run tests in the maven build process.

    -Dmaven.quiet=true - Run maven with -q to produce less output (see
        https://issues.jasig.org/browse/UP-4372 for examples).

    -Dmaven.offline=true - Run maven in offline mode (won't download artifacts).

    -Dmaven.threads.per.cpu=# - Run maven with -T #C to multithread # threads per core.
 

********** Run 'ant help | less' to make this document easier to read **********
<commit_msg>Added docs for gradle startHsql and gradle stopHsql<commit_after>====
    Licensed to Apereo under one or more contributor license
    agreements. See the NOTICE file distributed with this work
    for additional information regarding copyright ownership.
    Apereo licenses this file to you under the Apache License,
    Version 2.0 (the "License"); you may not use this file
    except in compliance with the License.  You may obtain a
    copy of the License at the following location:

      http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
====

Introduction:
--------------------------------------------------------------------------------
This file, /docs/antHelp.txt, provides some default help text for the uPortal
ant build. The build.xml is configured to print this file by default in the
case where no other specific target is specified.


Other help with our build file:
--------------------------------------------------------------------------------
Type "ant -p" to see a list of ant targets and the descriptions of those targets
as recorded directly in the build.xml file.


Running the targets:
--------------------------------------------------------------------------------
Your run the targets by specifying the specific target to the GUI in which you
are running Ant (Eclipse is highly recommended) or by invoking ant with the name
of the desired task as the first argument.

Example: ant compile


Available targets:
--------------------------------------------------------------------------------
"help" - The target that prints this file

Deployment Targets:
------------------

"initportal" - The target that will deploy uPortal and load your database, but
    you must first set up the JDBC properties in rdbm.properties and set up the
    path to your servlet container in build.properties.
    
    The "initportal" target runs all the targets necessary to deploy the portal
    and prepare the portal database: bootstrap, deploy-ear, db, pubchan, i18n-db.

    *IMPORTANT* Do not run this task against a database the contents of which
    you care about, as it initializes the database by first dropping all tables.

"deploy-war" - The "deploy-war" target first makes sure everything is compiled
    and up-to-date and then copies the extracted uPortal Web Application Archive
    (WAR) to the location required by your servlet container as specified in
    build.properties.
    
"deploy-ear" - The "deploy-ear" target first makes sure everything is compiled
    and up-to-date and builds an Enterprise Application Archive (EAR) composed
    of the uPortal WAR and the WARs of all the portlets being deployed. The EAR
    is then extracted to the location required by your servlet container as
    specified in build.properties.

"deployPortletApp" - The "deployPortletApp" target runs the portlet Deployer
    tool. This tool takes a portlet WAR file, rewrites the web.xml file and
    deploys the results to the servlet container.

    Example:
        ant deployPortletApp -DportletApp=C:/TEMP/myPortlet.war

Database Targets:
----------------

"db" - The "db" target runs uPortal's DbLoader program to load the database.
    WARNING: THIS MAY ERASE EXISTING uPORTAL TABLES!!!

    The "db" target accepts command line arguments which override values
    read from the dbloader.xml file:
    
    Options:
        To use /properties/db/mytables.xml instead of the tables file specified
        in dbloader.xml:
        ant db -Dusetable=-t -Dtablefile=/properties/db/mytables.xml

        To use /properties/db/mydata.xml instead of the data file specified in
        dbloader.xml:
        ant db -Dusedata=-d -Ddatafile=/properties/db/mydata.xml

        Note: the tables and data files can both be overridden by combining the
        arguments.  The usetable and tablefile must be used in tandem and
        sequentially on the command line. Similarly, usedata and datafile must but
        used in tandem.

        To set createScript=true
        ant db -Dcreatescript=-c
        
        To set createScript=false
        ant db -Dcreatescript=-nc
        
        To set dropTables=true
        ant db -Ddroptables=-D
        
        To set dropTables=false
        ant db -Ddroptables=-nD
        
        To set createTables=true
        ant db -Dcreatetables=-C
        
        To set createTables=false
        ant db -Dcreatetables=-nC
        
        To set populateTables=true
        ant db -Dpopulatetables=-P
        
        To set populateTables=false
        ant db -Dpopulatetables=-nP
        
        The -c, -nc, -D, -nD, -C, -nC, -P, -nP arguements may all be used
        independantly or in any combination although it would not make sense to,
        for example, use both -c and -nc.

User Targets:
------------

"md5passwd" -  The "md5passwd" target runs uPortal's md5passwd program to create
    an entry for a user in the UP_PERSON_DIR table. To run this target, you must
    specify the username parameter in the command line.  For example:

    Example:
        ant md5passwd -Dusername=ken

"deluser" - The "deluser" target runs uPortal's DeleteUser program to delete all
    traces of a uportal user from the uPortal database.
    
    Examples:
        ant deluser -Duser=username

Import/Export Targets:
---------------------

"data-list" - With no arguments lists all supported portal data types and
    the operations (export, delete) supported for each.  Otherwise list all
    of the data currently in the database for a specific type.

    ant data-list -Dtype={entity-type}

"data-import" - Adds to or updates the portal database for the entities
    defined in the specified XML file(s).

    ant data-import -Dfile={path-to-file}
    ant data-import -Ddir={path-to-directory} [-Dpattern={ant-pattern}]

"data-export" - Creates XML files representing the requested entities and
    writes them to the specified file system location.

    ant data-export -Ddir={path-to-directory} -Dtype={entity-type} [-Dsysid={entity-identifier}]

Misc Targets:
------------

"hsql" -  The "hsql" target starts an HSQLDB server instance on the current
    machine consistent with the default rdbm.properties data access
    configuration of uPortal. Note that this Ant target does not return in
    a normal execution.  It starts the database server without forking so
    you'll need to kill the HSQLDB Server manually, e.g. via control-C or
    via a stop build control in your IDE.

    Used in a local development environment.
	
	GRADLE VERSION IS AVAILABLE
	To start the hsql server use:
	gradle startHsql
	
	To stop the hsql:
	gradle stopHsql

Maven Build Options:
-------------------

Options you can pass to maven for building:

    -Dmaven.test.skip=true - Don't run tests in the maven build process.

    -Dmaven.quiet=true - Run maven with -q to produce less output (see
        https://issues.jasig.org/browse/UP-4372 for examples).

    -Dmaven.offline=true - Run maven in offline mode (won't download artifacts).

    -Dmaven.threads.per.cpu=# - Run maven with -T #C to multithread # threads per core.
 

********** Run 'ant help | less' to make this document easier to read **********

{'fraction_non_alphanumeric': 0.11053124581827914, 'fraction_numerical': 0.0018734109460725277, 'mean_word_length': 2.3924194280526554, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 20}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2527325', 'n_tokens_mistral': 3949, 'n_tokens_neox': 3845, 'n_words': 1831}