You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by nd...@apache.org on 2015/05/01 23:33:01 UTC

[14/57] [partial] airavata-php-gateway git commit: AIRAVATA 1632 + Job Description for Admin Dashboard

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SQLiteGrammar.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SQLiteGrammar.php b/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SQLiteGrammar.php
new file mode 100755
index 0000000..dfda9af
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SQLiteGrammar.php
@@ -0,0 +1,553 @@
+<?php namespace Illuminate\Database\Schema\Grammars;
+
+use Illuminate\Support\Fluent;
+use Illuminate\Database\Connection;
+use Illuminate\Database\Schema\Blueprint;
+
+class SQLiteGrammar extends Grammar {
+
+	/**
+	 * The possible column modifiers.
+	 *
+	 * @var array
+	 */
+	protected $modifiers = array('Nullable', 'Default', 'Increment');
+
+	/**
+	 * The columns available as serials.
+	 *
+	 * @var array
+	 */
+	protected $serials = array('bigInteger', 'integer');
+
+	/**
+	 * Compile the query to determine if a table exists.
+	 *
+	 * @return string
+	 */
+	public function compileTableExists()
+	{
+		return "select * from sqlite_master where type = 'table' and name = ?";
+	}
+
+	/**
+	 * Compile the query to determine the list of columns.
+	 *
+	 * @param  string  $table
+	 * @return string
+	 */
+	public function compileColumnExists($table)
+	{
+		return 'pragma table_info('.str_replace('.', '__', $table).')';
+	}
+
+	/**
+	 * Compile a create table command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileCreate(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = implode(', ', $this->getColumns($blueprint));
+
+		$sql = 'create table '.$this->wrapTable($blueprint)." ($columns";
+
+		// SQLite forces primary keys to be added when the table is initially created
+		// so we will need to check for a primary key commands and add the columns
+		// to the table's declaration here so they can be created on the tables.
+		$sql .= (string) $this->addForeignKeys($blueprint);
+
+		$sql .= (string) $this->addPrimaryKeys($blueprint);
+
+		return $sql .= ')';
+	}
+
+	/**
+	 * Get the foreign key syntax for a table creation statement.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @return string|null
+	 */
+	protected function addForeignKeys(Blueprint $blueprint)
+	{
+		$sql = '';
+
+		$foreigns = $this->getCommandsByName($blueprint, 'foreign');
+
+		// Once we have all the foreign key commands for the table creation statement
+		// we'll loop through each of them and add them to the create table SQL we
+		// are building, since SQLite needs foreign keys on the tables creation.
+		foreach ($foreigns as $foreign)
+		{
+			$sql .= $this->getForeignKey($foreign);
+
+			if ( ! is_null($foreign->onDelete))
+			{
+				$sql .= " on delete {$foreign->onDelete}";
+			}
+
+			if ( ! is_null($foreign->onUpdate))
+			{
+				$sql .= " on update {$foreign->onUpdate}";
+			}
+		}
+
+		return $sql;
+	}
+
+	/**
+	 * Get the SQL for the foreign key.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $foreign
+	 * @return string
+	 */
+	protected function getForeignKey($foreign)
+	{
+		$on = $this->wrapTable($foreign->on);
+
+		// We need to columnize the columns that the foreign key is being defined for
+		// so that it is a properly formatted list. Once we have done this, we can
+		// return the foreign key SQL declaration to the calling method for use.
+		$columns = $this->columnize($foreign->columns);
+
+		$onColumns = $this->columnize((array) $foreign->references);
+
+		return ", foreign key($columns) references $on($onColumns)";
+	}
+
+	/**
+	 * Get the primary key syntax for a table creation statement.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @return string|null
+	 */
+	protected function addPrimaryKeys(Blueprint $blueprint)
+	{
+		$primary = $this->getCommandByName($blueprint, 'primary');
+
+		if ( ! is_null($primary))
+		{
+			$columns = $this->columnize($primary->columns);
+
+			return ", primary key ({$columns})";
+		}
+	}
+
+	/**
+	 * Compile alter table commands for adding columns
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return array
+	 */
+	public function compileAdd(Blueprint $blueprint, Fluent $command)
+	{
+		$table = $this->wrapTable($blueprint);
+
+		$columns = $this->prefixArray('add column', $this->getColumns($blueprint));
+
+		$statements = array();
+
+		foreach ($columns as $column)
+		{
+			$statements[] = 'alter table '.$table.' '.$column;
+		}
+
+		return $statements;
+	}
+
+	/**
+	 * Compile a unique key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileUnique(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = $this->columnize($command->columns);
+
+		$table = $this->wrapTable($blueprint);
+
+		return "create unique index {$command->index} on {$table} ({$columns})";
+	}
+
+	/**
+	 * Compile a plain index key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileIndex(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = $this->columnize($command->columns);
+
+		$table = $this->wrapTable($blueprint);
+
+		return "create index {$command->index} on {$table} ({$columns})";
+	}
+
+	/**
+	 * Compile a foreign key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileForeign(Blueprint $blueprint, Fluent $command)
+	{
+		// Handled on table creation...
+	}
+
+	/**
+	 * Compile a drop table command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDrop(Blueprint $blueprint, Fluent $command)
+	{
+		return 'drop table '.$this->wrapTable($blueprint);
+	}
+
+	/**
+	 * Compile a drop table (if exists) command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropIfExists(Blueprint $blueprint, Fluent $command)
+	{
+		return 'drop table if exists '.$this->wrapTable($blueprint);
+	}
+
+	/**
+	 * Compile a drop column command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @param  \Illuminate\Database\Connection  $connection
+	 * @return array
+	 */
+	public function compileDropColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
+	{
+		$schema = $connection->getDoctrineSchemaManager();
+
+		$tableDiff = $this->getDoctrineTableDiff($blueprint, $schema);
+
+		foreach ($command->columns as $name)
+		{
+			$column = $connection->getDoctrineColumn($blueprint->getTable(), $name);
+
+			$tableDiff->removedColumns[$name] = $column;
+		}
+
+		return (array) $schema->getDatabasePlatform()->getAlterTableSQL($tableDiff);
+	}
+
+	/**
+	 * Compile a drop unique key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropUnique(Blueprint $blueprint, Fluent $command)
+	{
+		return "drop index {$command->index}";
+	}
+
+	/**
+	 * Compile a drop index command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropIndex(Blueprint $blueprint, Fluent $command)
+	{
+		return "drop index {$command->index}";
+	}
+
+	/**
+	 * Compile a rename table command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileRename(Blueprint $blueprint, Fluent $command)
+	{
+		$from = $this->wrapTable($blueprint);
+
+		return "alter table {$from} rename to ".$this->wrapTable($command->to);
+	}
+
+	/**
+	 * Create the column definition for a char type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeChar(Fluent $column)
+	{
+		return 'varchar';
+	}
+
+	/**
+	 * Create the column definition for a string type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeString(Fluent $column)
+	{
+		return 'varchar';
+	}
+
+	/**
+	 * Create the column definition for a text type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeText(Fluent $column)
+	{
+		return 'text';
+	}
+
+	/**
+	 * Create the column definition for a medium text type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeMediumText(Fluent $column)
+	{
+		return 'text';
+	}
+
+	/**
+	 * Create the column definition for a long text type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeLongText(Fluent $column)
+	{
+		return 'text';
+	}
+
+	/**
+	 * Create the column definition for a integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeInteger(Fluent $column)
+	{
+		return 'integer';
+	}
+
+	/**
+	 * Create the column definition for a big integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeBigInteger(Fluent $column)
+	{
+		return 'integer';
+	}
+
+	/**
+	 * Create the column definition for a medium integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeMediumInteger(Fluent $column)
+	{
+		return 'integer';
+	}
+
+	/**
+	 * Create the column definition for a tiny integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeTinyInteger(Fluent $column)
+	{
+		return 'integer';
+	}
+
+	/**
+	 * Create the column definition for a small integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeSmallInteger(Fluent $column)
+	{
+		return 'integer';
+	}
+
+	/**
+	 * Create the column definition for a float type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeFloat(Fluent $column)
+	{
+		return 'float';
+	}
+
+	/**
+	 * Create the column definition for a double type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDouble(Fluent $column)
+	{
+		return 'float';
+	}
+
+	/**
+	 * Create the column definition for a decimal type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDecimal(Fluent $column)
+	{
+		return 'float';
+	}
+
+	/**
+	 * Create the column definition for a boolean type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeBoolean(Fluent $column)
+	{
+		return 'tinyint';
+	}
+
+	/**
+	 * Create the column definition for an enum type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeEnum(Fluent $column)
+	{
+		return 'varchar';
+	}
+
+	/**
+	 * Create the column definition for a date type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDate(Fluent $column)
+	{
+		return 'date';
+	}
+
+	/**
+	 * Create the column definition for a date-time type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDateTime(Fluent $column)
+	{
+		return 'datetime';
+	}
+
+	/**
+	 * Create the column definition for a time type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeTime(Fluent $column)
+	{
+		return 'time';
+	}
+
+	/**
+	 * Create the column definition for a timestamp type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeTimestamp(Fluent $column)
+	{
+		return 'datetime';
+	}
+
+	/**
+	 * Create the column definition for a binary type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeBinary(Fluent $column)
+	{
+		return 'blob';
+	}
+
+	/**
+	 * Get the SQL for a nullable column modifier.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string|null
+	 */
+	protected function modifyNullable(Blueprint $blueprint, Fluent $column)
+	{
+		return $column->nullable ? ' null' : ' not null';
+	}
+
+	/**
+	 * Get the SQL for a default column modifier.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string|null
+	 */
+	protected function modifyDefault(Blueprint $blueprint, Fluent $column)
+	{
+		if ( ! is_null($column->default))
+		{
+			return " default ".$this->getDefaultValue($column->default);
+		}
+	}
+
+	/**
+	 * Get the SQL for an auto-increment column modifier.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string|null
+	 */
+	protected function modifyIncrement(Blueprint $blueprint, Fluent $column)
+	{
+		if (in_array($column->type, $this->serials) && $column->autoIncrement)
+		{
+			return ' primary key autoincrement';
+		}
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SqlServerGrammar.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SqlServerGrammar.php b/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SqlServerGrammar.php
new file mode 100755
index 0000000..3e32903
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/SqlServerGrammar.php
@@ -0,0 +1,483 @@
+<?php namespace Illuminate\Database\Schema\Grammars;
+
+use Illuminate\Support\Fluent;
+use Illuminate\Database\Schema\Blueprint;
+
+class SqlServerGrammar extends Grammar {
+
+	/**
+	 * The possible column modifiers.
+	 *
+	 * @var array
+	 */
+	protected $modifiers = array('Increment', 'Nullable', 'Default');
+
+	/**
+	 * The columns available as serials.
+	 *
+	 * @var array
+	 */
+	protected $serials = array('bigInteger', 'integer');
+
+	/**
+	 * Compile the query to determine if a table exists.
+	 *
+	 * @return string
+	 */
+	public function compileTableExists()
+	{
+		return "select * from sysobjects where type = 'U' and name = ?";
+	}
+
+	/**
+	 * Compile the query to determine the list of columns.
+	 *
+	 * @param  string  $table
+	 * @return string
+	 */
+	public function compileColumnExists($table)
+	{
+		return "select col.name from sys.columns as col
+                join sys.objects as obj on col.object_id = obj.object_id
+                where obj.type = 'U' and obj.name = '$table'";
+	}
+
+	/**
+	 * Compile a create table command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileCreate(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = implode(', ', $this->getColumns($blueprint));
+
+		return 'create table '.$this->wrapTable($blueprint)." ($columns)";
+	}
+
+	/**
+	 * Compile a create table command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileAdd(Blueprint $blueprint, Fluent $command)
+	{
+		$table = $this->wrapTable($blueprint);
+
+		$columns = $this->getColumns($blueprint);
+
+		return 'alter table '.$table.' add '.implode(', ', $columns);
+	}
+
+	/**
+	 * Compile a primary key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compilePrimary(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = $this->columnize($command->columns);
+
+		$table = $this->wrapTable($blueprint);
+
+		return "alter table {$table} add constraint {$command->index} primary key ({$columns})";
+	}
+
+	/**
+	 * Compile a unique key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileUnique(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = $this->columnize($command->columns);
+
+		$table = $this->wrapTable($blueprint);
+
+		return "create unique index {$command->index} on {$table} ({$columns})";
+	}
+
+	/**
+	 * Compile a plain index key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileIndex(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = $this->columnize($command->columns);
+
+		$table = $this->wrapTable($blueprint);
+
+		return "create index {$command->index} on {$table} ({$columns})";
+	}
+
+	/**
+	 * Compile a drop table command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDrop(Blueprint $blueprint, Fluent $command)
+	{
+		return 'drop table '.$this->wrapTable($blueprint);
+	}
+
+	/**
+	 * Compile a drop column command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropColumn(Blueprint $blueprint, Fluent $command)
+	{
+		$columns = $this->wrapArray($command->columns);
+
+		$table = $this->wrapTable($blueprint);
+
+		return 'alter table '.$table.' drop column '.implode(', ', $columns);
+	}
+
+	/**
+	 * Compile a drop primary key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropPrimary(Blueprint $blueprint, Fluent $command)
+	{
+		$table = $this->wrapTable($blueprint);
+
+		return "alter table {$table} drop constraint {$command->index}";
+	}
+
+	/**
+	 * Compile a drop unique key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropUnique(Blueprint $blueprint, Fluent $command)
+	{
+		$table = $this->wrapTable($blueprint);
+
+		return "drop index {$command->index} on {$table}";
+	}
+
+	/**
+	 * Compile a drop index command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropIndex(Blueprint $blueprint, Fluent $command)
+	{
+		$table = $this->wrapTable($blueprint);
+
+		return "drop index {$command->index} on {$table}";
+	}
+
+	/**
+	 * Compile a drop foreign key command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileDropForeign(Blueprint $blueprint, Fluent $command)
+	{
+		$table = $this->wrapTable($blueprint);
+
+		return "alter table {$table} drop constraint {$command->index}";
+	}
+
+	/**
+	 * Compile a rename table command.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $command
+	 * @return string
+	 */
+	public function compileRename(Blueprint $blueprint, Fluent $command)
+	{
+		$from = $this->wrapTable($blueprint);
+
+		return "sp_rename {$from}, ".$this->wrapTable($command->to);
+	}
+
+	/**
+	 * Create the column definition for a char type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeChar(Fluent $column)
+	{
+		return "nchar({$column->length})";
+	}
+
+	/**
+	 * Create the column definition for a string type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeString(Fluent $column)
+	{
+		return "nvarchar({$column->length})";
+	}
+
+	/**
+	 * Create the column definition for a text type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeText(Fluent $column)
+	{
+		return 'nvarchar(max)';
+	}
+
+	/**
+	 * Create the column definition for a medium text type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeMediumText(Fluent $column)
+	{
+		return 'nvarchar(max)';
+	}
+
+	/**
+	 * Create the column definition for a long text type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeLongText(Fluent $column)
+	{
+		return 'nvarchar(max)';
+	}
+
+	/**
+	 * Create the column definition for a integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeInteger(Fluent $column)
+	{
+		return 'int';
+	}
+
+	/**
+	 * Create the column definition for a big integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeBigInteger(Fluent $column)
+	{
+		return 'bigint';
+	}
+
+	/**
+	 * Create the column definition for a medium integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeMediumInteger(Fluent $column)
+	{
+		return 'int';
+	}
+
+	/**
+	 * Create the column definition for a tiny integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeTinyInteger(Fluent $column)
+	{
+		return 'tinyint';
+	}
+
+	/**
+	 * Create the column definition for a small integer type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeSmallInteger(Fluent $column)
+	{
+		return 'smallint';
+	}
+
+	/**
+	 * Create the column definition for a float type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeFloat(Fluent $column)
+	{
+		return 'float';
+	}
+
+	/**
+	 * Create the column definition for a double type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDouble(Fluent $column)
+	{
+		return 'float';
+	}
+
+	/**
+	 * Create the column definition for a decimal type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDecimal(Fluent $column)
+	{
+		return "decimal({$column->total}, {$column->places})";
+	}
+
+	/**
+	 * Create the column definition for a boolean type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeBoolean(Fluent $column)
+	{
+		return 'bit';
+	}
+
+	/**
+	 * Create the column definition for an enum type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeEnum(Fluent $column)
+	{
+		return 'nvarchar(255)';
+	}
+
+	/**
+	 * Create the column definition for a date type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDate(Fluent $column)
+	{
+		return 'date';
+	}
+
+	/**
+	 * Create the column definition for a date-time type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeDateTime(Fluent $column)
+	{
+		return 'datetime';
+	}
+
+	/**
+	 * Create the column definition for a time type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeTime(Fluent $column)
+	{
+		return 'time';
+	}
+
+	/**
+	 * Create the column definition for a timestamp type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeTimestamp(Fluent $column)
+	{
+		return 'datetime';
+	}
+
+	/**
+	 * Create the column definition for a binary type.
+	 *
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string
+	 */
+	protected function typeBinary(Fluent $column)
+	{
+		return 'varbinary(max)';
+	}
+
+	/**
+	 * Get the SQL for a nullable column modifier.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string|null
+	 */
+	protected function modifyNullable(Blueprint $blueprint, Fluent $column)
+	{
+		return $column->nullable ? ' null' : ' not null';
+	}
+
+	/**
+	 * Get the SQL for a default column modifier.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string|null
+	 */
+	protected function modifyDefault(Blueprint $blueprint, Fluent $column)
+	{
+		if ( ! is_null($column->default))
+		{
+			return " default ".$this->getDefaultValue($column->default);
+		}
+	}
+
+	/**
+	 * Get the SQL for an auto-increment column modifier.
+	 *
+	 * @param  \Illuminate\Database\Schema\Blueprint  $blueprint
+	 * @param  \Illuminate\Support\Fluent  $column
+	 * @return string|null
+	 */
+	protected function modifyIncrement(Blueprint $blueprint, Fluent $column)
+	{
+		if (in_array($column->type, $this->serials) && $column->autoIncrement)
+		{
+			return ' identity primary key';
+		}
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Database/Schema/MySqlBuilder.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Database/Schema/MySqlBuilder.php b/vendor/laravel/framework/src/Illuminate/Database/Schema/MySqlBuilder.php
new file mode 100755
index 0000000..7472681
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Database/Schema/MySqlBuilder.php
@@ -0,0 +1,41 @@
+<?php namespace Illuminate\Database\Schema;
+
+class MySqlBuilder extends Builder {
+
+	/**
+	 * Determine if the given table exists.
+	 *
+	 * @param  string  $table
+	 * @return bool
+	 */
+	public function hasTable($table)
+	{
+		$sql = $this->grammar->compileTableExists();
+
+		$database = $this->connection->getDatabaseName();
+
+		$table = $this->connection->getTablePrefix().$table;
+
+		return count($this->connection->select($sql, array($database, $table))) > 0;
+	}
+
+	/**
+	 * Get the column listing for a given table.
+	 *
+	 * @param  string  $table
+	 * @return array
+	 */
+	public function getColumnListing($table)
+	{
+		$sql = $this->grammar->compileColumnExists();
+
+		$database = $this->connection->getDatabaseName();
+
+		$table = $this->connection->getTablePrefix().$table;
+
+		$results = $this->connection->select($sql, array($database, $table));
+
+		return $this->connection->getPostProcessor()->processColumnListing($results);
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Database/SeedServiceProvider.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Database/SeedServiceProvider.php b/vendor/laravel/framework/src/Illuminate/Database/SeedServiceProvider.php
new file mode 100755
index 0000000..7b5e6d4
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Database/SeedServiceProvider.php
@@ -0,0 +1,55 @@
+<?php namespace Illuminate\Database;
+
+use Illuminate\Support\ServiceProvider;
+use Illuminate\Database\Console\SeedCommand;
+
+class SeedServiceProvider extends ServiceProvider {
+
+	/**
+	 * Indicates if loading of the provider is deferred.
+	 *
+	 * @var bool
+	 */
+	protected $defer = true;
+
+	/**
+	 * Register the service provider.
+	 *
+	 * @return void
+	 */
+	public function register()
+	{
+		$this->registerSeedCommand();
+
+		$this->app->bindShared('seeder', function()
+		{
+			return new Seeder;
+		});
+
+		$this->commands('command.seed');
+	}
+
+	/**
+	 * Register the seed console command.
+	 *
+	 * @return void
+	 */
+	protected function registerSeedCommand()
+	{
+		$this->app->bindShared('command.seed', function($app)
+		{
+			return new SeedCommand($app['db']);
+		});
+	}
+
+	/**
+	 * Get the services provided by the provider.
+	 *
+	 * @return array
+	 */
+	public function provides()
+	{
+		return array('seeder', 'command.seed');
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Database/Seeder.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Database/Seeder.php b/vendor/laravel/framework/src/Illuminate/Database/Seeder.php
new file mode 100755
index 0000000..9074dce
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Database/Seeder.php
@@ -0,0 +1,98 @@
+<?php namespace Illuminate\Database;
+
+use Illuminate\Console\Command;
+use Illuminate\Container\Container;
+
+class Seeder {
+
+	/**
+	 * The container instance.
+	 *
+	 * @var \Illuminate\Container\Container
+	 */
+	protected $container;
+
+	/**
+	 * The console command instance.
+	 *
+	 * @var \Illuminate\Console\Command
+	 */
+	protected $command;
+
+	/**
+	 * Run the database seeds.
+	 *
+	 * @return void
+	 */
+	public function run() {}
+
+	/**
+	 * Seed the given connection from the given path.
+	 *
+	 * @param  string  $class
+	 * @return void
+	 */
+	public function call($class)
+	{
+		$this->resolve($class)->run();
+
+		if (isset($this->command))
+		{
+			$this->command->getOutput()->writeln("<info>Seeded:</info> $class");
+		}
+	}
+
+	/**
+	 * Resolve an instance of the given seeder class.
+	 *
+	 * @param  string  $class
+	 * @return \Illuminate\Database\Seeder
+	 */
+	protected function resolve($class)
+	{
+		if (isset($this->container))
+		{
+			$instance = $this->container->make($class);
+
+			$instance->setContainer($this->container);
+		}
+		else
+		{
+			$instance = new $class;
+		}
+
+		if (isset($this->command))
+		{
+			$instance->setCommand($this->command);
+		}
+
+		return $instance;
+	}
+
+	/**
+	 * Set the IoC container instance.
+	 *
+	 * @param  \Illuminate\Container\Container  $container
+	 * @return $this
+	 */
+	public function setContainer(Container $container)
+	{
+		$this->container = $container;
+
+		return $this;
+	}
+
+	/**
+	 * Set the console command instance.
+	 *
+	 * @param  \Illuminate\Console\Command  $command
+	 * @return $this
+	 */
+	public function setCommand(Command $command)
+	{
+		$this->command = $command;
+
+		return $this;
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Database/SqlServerConnection.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Database/SqlServerConnection.php b/vendor/laravel/framework/src/Illuminate/Database/SqlServerConnection.php
new file mode 100755
index 0000000..77216c7
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Database/SqlServerConnection.php
@@ -0,0 +1,91 @@
+<?php namespace Illuminate\Database;
+
+use Closure;
+use Doctrine\DBAL\Driver\PDOSqlsrv\Driver as DoctrineDriver;
+use Illuminate\Database\Query\Processors\SqlServerProcessor;
+use Illuminate\Database\Query\Grammars\SqlServerGrammar as QueryGrammar;
+use Illuminate\Database\Schema\Grammars\SqlServerGrammar as SchemaGrammar;
+
+class SqlServerConnection extends Connection {
+
+	/**
+	 * Execute a Closure within a transaction.
+	 *
+	 * @param  \Closure  $callback
+	 * @return mixed
+	 *
+	 * @throws \Exception
+	 */
+	public function transaction(Closure $callback)
+	{
+		if ($this->getDriverName() == 'sqlsrv')
+		{
+			return parent::transaction($callback);
+		}
+
+		$this->pdo->exec('BEGIN TRAN');
+
+		// We'll simply execute the given callback within a try / catch block
+		// and if we catch any exception we can rollback the transaction
+		// so that none of the changes are persisted to the database.
+		try
+		{
+			$result = $callback($this);
+
+			$this->pdo->exec('COMMIT TRAN');
+		}
+
+		// If we catch an exception, we will roll back so nothing gets messed
+		// up in the database. Then we'll re-throw the exception so it can
+		// be handled how the developer sees fit for their applications.
+		catch (\Exception $e)
+		{
+			$this->pdo->exec('ROLLBACK TRAN');
+
+			throw $e;
+		}
+
+		return $result;
+	}
+
+	/**
+	 * Get the default query grammar instance.
+	 *
+	 * @return \Illuminate\Database\Query\Grammars\SqlServerGrammar
+	 */
+	protected function getDefaultQueryGrammar()
+	{
+		return $this->withTablePrefix(new QueryGrammar);
+	}
+
+	/**
+	 * Get the default schema grammar instance.
+	 *
+	 * @return \Illuminate\Database\Schema\Grammars\SqlServerGrammar
+	 */
+	protected function getDefaultSchemaGrammar()
+	{
+		return $this->withTablePrefix(new SchemaGrammar);
+	}
+
+	/**
+	 * Get the default post processor instance.
+	 *
+	 * @return \Illuminate\Database\Query\Processors\Processor
+	 */
+	protected function getDefaultPostProcessor()
+	{
+		return new SqlServerProcessor;
+	}
+
+	/**
+	 * Get the Doctrine DBAL Driver.
+	 *
+	 * @return \Doctrine\DBAL\Driver\PDOSqlsrv\Driver
+	 */
+	protected function getDoctrineDriver()
+	{
+		return new DoctrineDriver;
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Database/composer.json
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Database/composer.json b/vendor/laravel/framework/src/Illuminate/Database/composer.json
new file mode 100755
index 0000000..1c284c0
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Database/composer.json
@@ -0,0 +1,36 @@
+{
+    "name": "illuminate/database",
+    "license": "MIT",
+    "keywords": ["laravel", "database", "sql", "orm"],
+    "authors": [
+        {
+            "name": "Taylor Otwell",
+            "email": "taylorotwell@gmail.com"
+        }
+    ],
+    "require": {
+        "php": ">=5.4.0",
+        "illuminate/container": "4.2.*",
+        "illuminate/events": "4.2.*",
+        "illuminate/support": "4.2.*",
+        "nesbot/carbon": "~1.0"
+    },
+    "require-dev": {
+        "illuminate/cache": "4.2.*",
+        "illuminate/console": "4.2.*",
+        "illuminate/filesystem": "4.2.*",
+        "illuminate/pagination": "4.2.*"
+    },
+    "autoload": {
+        "psr-0": {
+            "Illuminate\\Database": ""
+        }
+    },
+    "target-dir": "Illuminate/Database",
+    "extra": {
+        "branch-alias": {
+            "dev-master": "4.2-dev"
+        }
+    },
+    "minimum-stability": "dev"
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Encryption/DecryptException.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Encryption/DecryptException.php b/vendor/laravel/framework/src/Illuminate/Encryption/DecryptException.php
new file mode 100644
index 0000000..b2e4302
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Encryption/DecryptException.php
@@ -0,0 +1,3 @@
+<?php namespace Illuminate\Encryption;
+
+class DecryptException extends \RuntimeException {}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php b/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php
new file mode 100755
index 0000000..1c663c4
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php
@@ -0,0 +1,308 @@
+<?php namespace Illuminate\Encryption;
+
+use Symfony\Component\Security\Core\Util\StringUtils;
+use Symfony\Component\Security\Core\Util\SecureRandom;
+
+class Encrypter {
+
+	/**
+	 * The encryption key.
+	 *
+	 * @var string
+	 */
+	protected $key;
+
+	/**
+	 * The algorithm used for encryption.
+	 *
+	 * @var string
+	 */
+	protected $cipher = MCRYPT_RIJNDAEL_128;
+
+	/**
+	 * The mode used for encryption.
+	 *
+	 * @var string
+	 */
+	protected $mode = MCRYPT_MODE_CBC;
+
+	/**
+	 * The block size of the cipher.
+	 *
+	 * @var int
+	 */
+	protected $block = 16;
+
+	/**
+	 * Create a new encrypter instance.
+	 *
+	 * @param  string  $key
+	 * @return void
+	 */
+	public function __construct($key)
+	{
+		$this->key = (string) $key;
+	}
+
+	/**
+	 * Encrypt the given value.
+	 *
+	 * @param  string  $value
+	 * @return string
+	 */
+	public function encrypt($value)
+	{
+		$iv = mcrypt_create_iv($this->getIvSize(), $this->getRandomizer());
+
+		$value = base64_encode($this->padAndMcrypt($value, $iv));
+
+		// Once we have the encrypted value we will go ahead base64_encode the input
+		// vector and create the MAC for the encrypted value so we can verify its
+		// authenticity. Then, we'll JSON encode the data in a "payload" array.
+		$mac = $this->hash($iv = base64_encode($iv), $value);
+
+		return base64_encode(json_encode(compact('iv', 'value', 'mac')));
+	}
+
+	/**
+	 * Pad and use mcrypt on the given value and input vector.
+	 *
+	 * @param  string  $value
+	 * @param  string  $iv
+	 * @return string
+	 */
+	protected function padAndMcrypt($value, $iv)
+	{
+		$value = $this->addPadding(serialize($value));
+
+		return mcrypt_encrypt($this->cipher, $this->key, $value, $this->mode, $iv);
+	}
+
+	/**
+	 * Decrypt the given value.
+	 *
+	 * @param  string  $payload
+	 * @return string
+	 */
+	public function decrypt($payload)
+	{
+		$payload = $this->getJsonPayload($payload);
+
+		// We'll go ahead and remove the PKCS7 padding from the encrypted value before
+		// we decrypt it. Once we have the de-padded value, we will grab the vector
+		// and decrypt the data, passing back the unserialized from of the value.
+		$value = base64_decode($payload['value']);
+
+		$iv = base64_decode($payload['iv']);
+
+		return unserialize($this->stripPadding($this->mcryptDecrypt($value, $iv)));
+	}
+
+	/**
+	 * Run the mcrypt decryption routine for the value.
+	 *
+	 * @param  string  $value
+	 * @param  string  $iv
+	 * @return string
+	 *
+	 * @throws \Exception
+	 */
+	protected function mcryptDecrypt($value, $iv)
+	{
+		try
+		{
+			return mcrypt_decrypt($this->cipher, $this->key, $value, $this->mode, $iv);
+		}
+		catch (\Exception $e)
+		{
+			throw new DecryptException($e->getMessage());
+		}
+	}
+
+	/**
+	 * Get the JSON array from the given payload.
+	 *
+	 * @param  string  $payload
+	 * @return array
+	 *
+	 * @throws \Illuminate\Encryption\DecryptException
+	 */
+	protected function getJsonPayload($payload)
+	{
+		$payload = json_decode(base64_decode($payload), true);
+
+		// If the payload is not valid JSON or does not have the proper keys set we will
+		// assume it is invalid and bail out of the routine since we will not be able
+		// to decrypt the given value. We'll also check the MAC for this encryption.
+		if ( ! $payload || $this->invalidPayload($payload))
+		{
+			throw new DecryptException('Invalid data.');
+		}
+
+		if ( ! $this->validMac($payload))
+		{
+			throw new DecryptException('MAC is invalid.');
+		}
+
+		return $payload;
+	}
+
+	/**
+	 * Determine if the MAC for the given payload is valid.
+	 *
+	 * @param  array  $payload
+	 * @return bool
+	 *
+	 * @throws \RuntimeException
+	 */
+	protected function validMac(array $payload)
+	{
+		if ( ! function_exists('openssl_random_pseudo_bytes'))
+		{
+			throw new \RuntimeException('OpenSSL extension is required.');
+		}
+
+		$bytes = (new SecureRandom)->nextBytes(16);
+
+		$calcMac = hash_hmac('sha256', $this->hash($payload['iv'], $payload['value']), $bytes, true);
+
+		return StringUtils::equals(hash_hmac('sha256', $payload['mac'], $bytes, true), $calcMac);
+	}
+
+	/**
+	 * Create a MAC for the given value.
+	 *
+	 * @param  string  $iv
+	 * @param  string  $value
+	 * @return string
+	 */
+	protected function hash($iv, $value)
+	{
+		return hash_hmac('sha256', $iv.$value, $this->key);
+	}
+
+	/**
+	 * Add PKCS7 padding to a given value.
+	 *
+	 * @param  string  $value
+	 * @return string
+	 */
+	protected function addPadding($value)
+	{
+		$pad = $this->block - (strlen($value) % $this->block);
+
+		return $value.str_repeat(chr($pad), $pad);
+	}
+
+	/**
+	 * Remove the padding from the given value.
+	 *
+	 * @param  string  $value
+	 * @return string
+	 */
+	protected function stripPadding($value)
+	{
+		$pad = ord($value[($len = strlen($value)) - 1]);
+
+		return $this->paddingIsValid($pad, $value) ? substr($value, 0, $len - $pad) : $value;
+	}
+
+	/**
+	 * Determine if the given padding for a value is valid.
+	 *
+	 * @param  string  $pad
+	 * @param  string  $value
+	 * @return bool
+	 */
+	protected function paddingIsValid($pad, $value)
+	{
+		$beforePad = strlen($value) - $pad;
+
+		return substr($value, $beforePad) == str_repeat(substr($value, -1), $pad);
+	}
+
+	/**
+	 * Verify that the encryption payload is valid.
+	 *
+	 * @param  array|mixed  $data
+	 * @return bool
+	 */
+	protected function invalidPayload($data)
+	{
+		return ! is_array($data) || ! isset($data['iv']) || ! isset($data['value']) || ! isset($data['mac']);
+	}
+
+	/**
+	 * Get the IV size for the cipher.
+	 *
+	 * @return int
+	 */
+	protected function getIvSize()
+	{
+		return mcrypt_get_iv_size($this->cipher, $this->mode);
+	}
+
+	/**
+	 * Get the random data source available for the OS.
+	 *
+	 * @return int
+	 */
+	protected function getRandomizer()
+	{
+		if (defined('MCRYPT_DEV_URANDOM')) return MCRYPT_DEV_URANDOM;
+
+		if (defined('MCRYPT_DEV_RANDOM')) return MCRYPT_DEV_RANDOM;
+
+		mt_srand();
+
+		return MCRYPT_RAND;
+	}
+
+	/**
+	 * Set the encryption key.
+	 *
+	 * @param  string  $key
+	 * @return void
+	 */
+	public function setKey($key)
+	{
+		$this->key = (string) $key;
+	}
+
+	/**
+	 * Set the encryption cipher.
+	 *
+	 * @param  string  $cipher
+	 * @return void
+	 */
+	public function setCipher($cipher)
+	{
+		$this->cipher = $cipher;
+
+		$this->updateBlockSize();
+	}
+
+	/**
+	 * Set the encryption mode.
+	 *
+	 * @param  string  $mode
+	 * @return void
+	 */
+	public function setMode($mode)
+	{
+		$this->mode = $mode;
+
+		$this->updateBlockSize();
+	}
+
+	/**
+	 * Update the block size for the current cipher and mode.
+	 *
+	 * @return void
+	 */
+	protected function updateBlockSize()
+	{
+		$this->block = mcrypt_get_iv_size($this->cipher, $this->mode);
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php b/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php
new file mode 100755
index 0000000..e7e9421
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php
@@ -0,0 +1,27 @@
+<?php namespace Illuminate\Encryption;
+
+use Illuminate\Support\ServiceProvider;
+
+class EncryptionServiceProvider extends ServiceProvider {
+
+	/**
+	 * Register the service provider.
+	 *
+	 * @return void
+	 */
+	public function register()
+	{
+		$this->app->bindShared('encrypter', function($app)
+		{
+			$encrypter =  new Encrypter($app['config']['app.key']);
+
+			if ($app['config']->has('app.cipher'))
+			{
+				$encrypter->setCipher($app['config']['app.cipher']);
+			}
+
+			return $encrypter;
+		});
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Encryption/InvalidKeyException.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Encryption/InvalidKeyException.php b/vendor/laravel/framework/src/Illuminate/Encryption/InvalidKeyException.php
new file mode 100644
index 0000000..2713218
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Encryption/InvalidKeyException.php
@@ -0,0 +1,3 @@
+<?php namespace Illuminate\Encryption;
+
+class InvalidKeyException extends \InvalidArgumentException {}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Encryption/composer.json
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Encryption/composer.json b/vendor/laravel/framework/src/Illuminate/Encryption/composer.json
new file mode 100755
index 0000000..1a2d473
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Encryption/composer.json
@@ -0,0 +1,27 @@
+{
+    "name": "illuminate/encryption",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Taylor Otwell",
+            "email": "taylorotwell@gmail.com"
+        }
+    ],
+    "require": {
+        "php": ">=5.4.0",
+        "illuminate/support": "4.2.*",
+        "symfony/security-core": "2.5.*"
+    },
+    "autoload": {
+        "psr-0": {
+            "Illuminate\\Encryption": ""
+        }
+    },
+    "target-dir": "Illuminate/Encryption",
+    "extra": {
+        "branch-alias": {
+            "dev-master": "4.2-dev"
+        }
+    },
+    "minimum-stability": "dev"
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php b/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php
new file mode 100755
index 0000000..15dc8ef
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php
@@ -0,0 +1,351 @@
+<?php namespace Illuminate\Events;
+
+use Illuminate\Container\Container;
+
+class Dispatcher {
+
+	/**
+	 * The IoC container instance.
+	 *
+	 * @var \Illuminate\Container\Container
+	 */
+	protected $container;
+
+	/**
+	 * The registered event listeners.
+	 *
+	 * @var array
+	 */
+	protected $listeners = array();
+
+	/**
+	 * The wildcard listeners.
+	 *
+	 * @var array
+	 */
+	protected $wildcards = array();
+
+	/**
+	 * The sorted event listeners.
+	 *
+	 * @var array
+	 */
+	protected $sorted = array();
+
+	/**
+	 * The event firing stack.
+	 *
+	 * @var array
+	 */
+	protected $firing = array();
+
+	/**
+	 * Create a new event dispatcher instance.
+	 *
+	 * @param  \Illuminate\Container\Container  $container
+	 * @return void
+	 */
+	public function __construct(Container $container = null)
+	{
+		$this->container = $container ?: new Container;
+	}
+
+	/**
+	 * Register an event listener with the dispatcher.
+	 *
+	 * @param  string|array  $events
+	 * @param  mixed   $listener
+	 * @param  int     $priority
+	 * @return void
+	 */
+	public function listen($events, $listener, $priority = 0)
+	{
+		foreach ((array) $events as $event)
+		{
+			if (str_contains($event, '*'))
+			{
+				$this->setupWildcardListen($event, $listener);
+			}
+			else
+			{
+				$this->listeners[$event][$priority][] = $this->makeListener($listener);
+
+				unset($this->sorted[$event]);
+			}
+		}
+	}
+
+	/**
+	 * Setup a wildcard listener callback.
+	 *
+	 * @param  string  $event
+	 * @param  mixed   $listener
+	 * @return void
+	 */
+	protected function setupWildcardListen($event, $listener)
+	{
+		$this->wildcards[$event][] = $this->makeListener($listener);
+	}
+
+	/**
+	 * Determine if a given event has listeners.
+	 *
+	 * @param  string  $eventName
+	 * @return bool
+	 */
+	public function hasListeners($eventName)
+	{
+		return isset($this->listeners[$eventName]);
+	}
+
+	/**
+	 * Register a queued event and payload.
+	 *
+	 * @param  string  $event
+	 * @param  array   $payload
+	 * @return void
+	 */
+	public function queue($event, $payload = array())
+	{
+		$this->listen($event.'_queue', function() use ($event, $payload)
+		{
+			$this->fire($event, $payload);
+		});
+	}
+
+	/**
+	 * Register an event subscriber with the dispatcher.
+	 *
+	 * @param  string  $subscriber
+	 * @return void
+	 */
+	public function subscribe($subscriber)
+	{
+		$subscriber = $this->resolveSubscriber($subscriber);
+
+		$subscriber->subscribe($this);
+	}
+
+	/**
+	 * Resolve the subscriber instance.
+	 *
+	 * @param  mixed  $subscriber
+	 * @return mixed
+	 */
+	protected function resolveSubscriber($subscriber)
+	{
+		if (is_string($subscriber))
+		{
+			return $this->container->make($subscriber);
+		}
+
+		return $subscriber;
+	}
+
+	/**
+	 * Fire an event until the first non-null response is returned.
+	 *
+	 * @param  string  $event
+	 * @param  array   $payload
+	 * @return mixed
+	 */
+	public function until($event, $payload = array())
+	{
+		return $this->fire($event, $payload, true);
+	}
+
+	/**
+	 * Flush a set of queued events.
+	 *
+	 * @param  string  $event
+	 * @return void
+	 */
+	public function flush($event)
+	{
+		$this->fire($event.'_queue');
+	}
+
+	/**
+	 * Get the event that is currently firing.
+	 *
+	 * @return string
+	 */
+	public function firing()
+	{
+		return last($this->firing);
+	}
+
+	/**
+	 * Fire an event and call the listeners.
+	 *
+	 * @param  string  $event
+	 * @param  mixed   $payload
+	 * @param  bool    $halt
+	 * @return array|null
+	 */
+	public function fire($event, $payload = array(), $halt = false)
+	{
+		$responses = array();
+
+		// If an array is not given to us as the payload, we will turn it into one so
+		// we can easily use call_user_func_array on the listeners, passing in the
+		// payload to each of them so that they receive each of these arguments.
+		if ( ! is_array($payload)) $payload = array($payload);
+
+		$this->firing[] = $event;
+
+		foreach ($this->getListeners($event) as $listener)
+		{
+			$response = call_user_func_array($listener, $payload);
+
+			// If a response is returned from the listener and event halting is enabled
+			// we will just return this response, and not call the rest of the event
+			// listeners. Otherwise we will add the response on the response list.
+			if ( ! is_null($response) && $halt)
+			{
+				array_pop($this->firing);
+
+				return $response;
+			}
+
+			// If a boolean false is returned from a listener, we will stop propagating
+			// the event to any further listeners down in the chain, else we keep on
+			// looping through the listeners and firing every one in our sequence.
+			if ($response === false) break;
+
+			$responses[] = $response;
+		}
+
+		array_pop($this->firing);
+
+		return $halt ? null : $responses;
+	}
+
+	/**
+	 * Get all of the listeners for a given event name.
+	 *
+	 * @param  string  $eventName
+	 * @return array
+	 */
+	public function getListeners($eventName)
+	{
+		$wildcards = $this->getWildcardListeners($eventName);
+
+		if ( ! isset($this->sorted[$eventName]))
+		{
+			$this->sortListeners($eventName);
+		}
+
+		return array_merge($this->sorted[$eventName], $wildcards);
+	}
+
+	/**
+	 * Get the wildcard listeners for the event.
+	 *
+	 * @param  string  $eventName
+	 * @return array
+	 */
+	protected function getWildcardListeners($eventName)
+	{
+		$wildcards = array();
+
+		foreach ($this->wildcards as $key => $listeners)
+		{
+			if (str_is($key, $eventName)) $wildcards = array_merge($wildcards, $listeners);
+		}
+
+		return $wildcards;
+	}
+
+	/**
+	 * Sort the listeners for a given event by priority.
+	 *
+	 * @param  string  $eventName
+	 * @return array
+	 */
+	protected function sortListeners($eventName)
+	{
+		$this->sorted[$eventName] = array();
+
+		// If listeners exist for the given event, we will sort them by the priority
+		// so that we can call them in the correct order. We will cache off these
+		// sorted event listeners so we do not have to re-sort on every events.
+		if (isset($this->listeners[$eventName]))
+		{
+			krsort($this->listeners[$eventName]);
+
+			$this->sorted[$eventName] = call_user_func_array('array_merge', $this->listeners[$eventName]);
+		}
+	}
+
+	/**
+	 * Register an event listener with the dispatcher.
+	 *
+	 * @param  mixed   $listener
+	 * @return mixed
+	 */
+	public function makeListener($listener)
+	{
+		if (is_string($listener))
+		{
+			$listener = $this->createClassListener($listener);
+		}
+
+		return $listener;
+	}
+
+	/**
+	 * Create a class based listener using the IoC container.
+	 *
+	 * @param  mixed    $listener
+	 * @return \Closure
+	 */
+	public function createClassListener($listener)
+	{
+		$container = $this->container;
+
+		return function() use ($listener, $container)
+		{
+			// If the listener has an @ sign, we will assume it is being used to delimit
+			// the class name from the handle method name. This allows for handlers
+			// to run multiple handler methods in a single class for convenience.
+			$segments = explode('@', $listener);
+
+			$method = count($segments) == 2 ? $segments[1] : 'handle';
+
+			$callable = array($container->make($segments[0]), $method);
+
+			// We will make a callable of the listener instance and a method that should
+			// be called on that instance, then we will pass in the arguments that we
+			// received in this method into this listener class instance's methods.
+			$data = func_get_args();
+
+			return call_user_func_array($callable, $data);
+		};
+	}
+
+	/**
+	 * Remove a set of listeners from the dispatcher.
+	 *
+	 * @param  string  $event
+	 * @return void
+	 */
+	public function forget($event)
+	{
+		unset($this->listeners[$event], $this->sorted[$event]);
+	}
+
+	/**
+	 * Forget all of the queued listeners.
+	 *
+	 * @return void
+	 */
+	public function forgetQueued()
+	{
+		foreach ($this->listeners as $key => $value)
+		{
+			if (ends_with($key, '_queue')) $this->forget($key);
+		}
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Events/EventServiceProvider.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Events/EventServiceProvider.php b/vendor/laravel/framework/src/Illuminate/Events/EventServiceProvider.php
new file mode 100755
index 0000000..94b8e4b
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Events/EventServiceProvider.php
@@ -0,0 +1,20 @@
+<?php namespace Illuminate\Events;
+
+use Illuminate\Support\ServiceProvider;
+
+class EventServiceProvider extends ServiceProvider {
+
+	/**
+	 * Register the service provider.
+	 *
+	 * @return void
+	 */
+	public function register()
+	{
+		$this->app['events'] = $this->app->share(function($app)
+		{
+			return new Dispatcher($app);
+		});
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Events/composer.json
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Events/composer.json b/vendor/laravel/framework/src/Illuminate/Events/composer.json
new file mode 100755
index 0000000..343a0b9
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Events/composer.json
@@ -0,0 +1,27 @@
+{
+    "name": "illuminate/events",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Taylor Otwell",
+            "email": "taylorotwell@gmail.com"
+        }
+    ],
+    "require": {
+        "php": ">=5.4.0",
+        "illuminate/container": "4.2.*",
+        "illuminate/support": "4.2.*"
+    },
+    "autoload": {
+        "psr-0": {
+            "Illuminate\\Events": ""
+        }
+    },
+    "target-dir": "Illuminate/Events",
+    "extra": {
+        "branch-alias": {
+            "dev-master": "4.2-dev"
+        }
+    },
+    "minimum-stability": "dev"
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/ExceptionDisplayerInterface.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/ExceptionDisplayerInterface.php b/vendor/laravel/framework/src/Illuminate/Exception/ExceptionDisplayerInterface.php
new file mode 100755
index 0000000..a976062
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/ExceptionDisplayerInterface.php
@@ -0,0 +1,14 @@
+<?php namespace Illuminate\Exception;
+
+use Exception;
+
+interface ExceptionDisplayerInterface {
+
+	/**
+	 * Display the given exception to the user.
+	 *
+	 * @param  \Exception  $exception
+	 */
+	public function display(Exception $exception);
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/ExceptionServiceProvider.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/ExceptionServiceProvider.php b/vendor/laravel/framework/src/Illuminate/Exception/ExceptionServiceProvider.php
new file mode 100755
index 0000000..c2fa6a6
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/ExceptionServiceProvider.php
@@ -0,0 +1,162 @@
+<?php namespace Illuminate\Exception;
+
+use Whoops\Run;
+use Whoops\Handler\PrettyPageHandler;
+use Whoops\Handler\JsonResponseHandler;
+use Illuminate\Support\ServiceProvider;
+
+class ExceptionServiceProvider extends ServiceProvider {
+
+	/**
+	 * Register the service provider.
+	 *
+	 * @return void
+	 */
+	public function register()
+	{
+		$this->registerDisplayers();
+
+		$this->registerHandler();
+	}
+
+	/**
+	 * Register the exception displayers.
+	 *
+	 * @return void
+	 */
+	protected function registerDisplayers()
+	{
+		$this->registerPlainDisplayer();
+
+		$this->registerDebugDisplayer();
+	}
+
+	/**
+	 * Register the exception handler instance.
+	 *
+	 * @return void
+	 */
+	protected function registerHandler()
+	{
+		$this->app['exception'] = $this->app->share(function($app)
+		{
+			return new Handler($app, $app['exception.plain'], $app['exception.debug']);
+		});
+	}
+
+	/**
+	 * Register the plain exception displayer.
+	 *
+	 * @return void
+	 */
+	protected function registerPlainDisplayer()
+	{
+		$this->app['exception.plain'] = $this->app->share(function($app)
+		{
+			// If the application is running in a console environment, we will just always
+			// use the debug handler as there is no point in the console ever returning
+			// out HTML. This debug handler always returns JSON from the console env.
+			if ($app->runningInConsole())
+			{
+				return $app['exception.debug'];
+			}
+			else
+			{
+				return new PlainDisplayer;
+			}
+		});
+	}
+
+	/**
+	 * Register the Whoops exception displayer.
+	 *
+	 * @return void
+	 */
+	protected function registerDebugDisplayer()
+	{
+		$this->registerWhoops();
+
+		$this->app['exception.debug'] = $this->app->share(function($app)
+		{
+			return new WhoopsDisplayer($app['whoops'], $app->runningInConsole());
+		});
+	}
+
+	/**
+	 * Register the Whoops error display service.
+	 *
+	 * @return void
+	 */
+	protected function registerWhoops()
+	{
+		$this->registerWhoopsHandler();
+
+		$this->app['whoops'] = $this->app->share(function($app)
+		{
+			// We will instruct Whoops to not exit after it displays the exception as it
+			// will otherwise run out before we can do anything else. We just want to
+			// let the framework go ahead and finish a request on this end instead.
+			with($whoops = new Run)->allowQuit(false);
+
+			$whoops->writeToOutput(false);
+
+			return $whoops->pushHandler($app['whoops.handler']);
+		});
+	}
+
+	/**
+	 * Register the Whoops handler for the request.
+	 *
+	 * @return void
+	 */
+	protected function registerWhoopsHandler()
+	{
+		if ($this->shouldReturnJson())
+		{
+			$this->app['whoops.handler'] = $this->app->share(function()
+			{
+				return new JsonResponseHandler;
+			});
+		}
+		else
+		{
+			$this->registerPrettyWhoopsHandler();
+		}
+	}
+
+	/**
+	 * Determine if the error provider should return JSON.
+	 *
+	 * @return bool
+	 */
+	protected function shouldReturnJson()
+	{
+		return $this->app->runningInConsole() || $this->requestWantsJson();
+	}
+
+	/**
+	 * Determine if the request warrants a JSON response.
+	 *
+	 * @return bool
+	 */
+	protected function requestWantsJson()
+	{
+		return $this->app['request']->ajax() || $this->app['request']->wantsJson();
+	}
+
+	/**
+	 * Register the "pretty" Whoops handler.
+	 *
+	 * @return void
+	 */
+	protected function registerPrettyWhoopsHandler()
+	{
+		$this->app['whoops.handler'] = $this->app->share(function()
+		{
+			with($handler = new PrettyPageHandler)->setEditor('sublime');
+
+			return $handler;
+		});
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/Handler.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/Handler.php b/vendor/laravel/framework/src/Illuminate/Exception/Handler.php
new file mode 100755
index 0000000..bac2dfd
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/Handler.php
@@ -0,0 +1,385 @@
+<?php namespace Illuminate\Exception;
+
+use Closure;
+use ErrorException;
+use ReflectionFunction;
+use Illuminate\Support\Contracts\ResponsePreparerInterface;
+use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;
+use Symfony\Component\Debug\Exception\FatalErrorException as FatalError;
+
+class Handler {
+
+	/**
+	 * The response preparer implementation.
+	 *
+	 * @var \Illuminate\Support\Contracts\ResponsePreparerInterface
+	 */
+	protected $responsePreparer;
+
+	/**
+	 * The plain exception displayer.
+	 *
+	 * @var \Illuminate\Exception\ExceptionDisplayerInterface
+	 */
+	protected $plainDisplayer;
+
+	/**
+	 * The debug exception displayer.
+	 *
+	 * @var \Illuminate\Exception\ExceptionDisplayerInterface
+	 */
+	protected $debugDisplayer;
+
+	/**
+	 * Indicates if the application is in debug mode.
+	 *
+	 * @var bool
+	 */
+	protected $debug;
+
+	/**
+	 * All of the register exception handlers.
+	 *
+	 * @var array
+	 */
+	protected $handlers = array();
+
+	/**
+	 * All of the handled error messages.
+	 *
+	 * @var array
+	 */
+	protected $handled = array();
+
+	/**
+	 * Create a new error handler instance.
+	 *
+	 * @param  \Illuminate\Support\Contracts\ResponsePreparerInterface  $responsePreparer
+	 * @param  \Illuminate\Exception\ExceptionDisplayerInterface  $plainDisplayer
+	 * @param  \Illuminate\Exception\ExceptionDisplayerInterface  $debugDisplayer
+	 * @param  bool  $debug
+	 * @return void
+	 */
+	public function __construct(ResponsePreparerInterface $responsePreparer,
+                                ExceptionDisplayerInterface $plainDisplayer,
+                                ExceptionDisplayerInterface $debugDisplayer,
+                                $debug = true)
+	{
+		$this->debug = $debug;
+		$this->plainDisplayer = $plainDisplayer;
+		$this->debugDisplayer = $debugDisplayer;
+		$this->responsePreparer = $responsePreparer;
+	}
+
+	/**
+	 * Register the exception / error handlers for the application.
+	 *
+	 * @param  string  $environment
+	 * @return void
+	 */
+	public function register($environment)
+	{
+		$this->registerErrorHandler();
+
+		$this->registerExceptionHandler();
+
+		if ($environment != 'testing') $this->registerShutdownHandler();
+	}
+
+	/**
+	 * Register the PHP error handler.
+	 *
+	 * @return void
+	 */
+	protected function registerErrorHandler()
+	{
+		set_error_handler(array($this, 'handleError'));
+	}
+
+	/**
+	 * Register the PHP exception handler.
+	 *
+	 * @return void
+	 */
+	protected function registerExceptionHandler()
+	{
+		set_exception_handler(array($this, 'handleUncaughtException'));
+	}
+
+	/**
+	 * Register the PHP shutdown handler.
+	 *
+	 * @return void
+	 */
+	protected function registerShutdownHandler()
+	{
+		register_shutdown_function(array($this, 'handleShutdown'));
+	}
+
+	/**
+	 * Handle a PHP error for the application.
+	 *
+	 * @param  int     $level
+	 * @param  string  $message
+	 * @param  string  $file
+	 * @param  int     $line
+	 * @param  array   $context
+	 *
+	 * @throws \ErrorException
+	 */
+	public function handleError($level, $message, $file = '', $line = 0, $context = array())
+	{
+		if (error_reporting() & $level)
+		{
+			throw new ErrorException($message, 0, $level, $file, $line);
+		}
+	}
+
+	/**
+	 * Handle an exception for the application.
+	 *
+	 * @param  \Exception  $exception
+	 * @return \Symfony\Component\HttpFoundation\Response
+	 */
+	public function handleException($exception)
+	{
+		$response = $this->callCustomHandlers($exception);
+
+		// If one of the custom error handlers returned a response, we will send that
+		// response back to the client after preparing it. This allows a specific
+		// type of exceptions to handled by a Closure giving great flexibility.
+		if ( ! is_null($response))
+		{
+			return $this->prepareResponse($response);
+		}
+
+		// If no response was sent by this custom exception handler, we will call the
+		// default exception displayer for the current application context and let
+		// it show the exception to the user / developer based on the situation.
+		return $this->displayException($exception);
+	}
+
+	/**
+	 * Handle an uncaught exception.
+	 *
+	 * @param  \Exception  $exception
+	 * @return void
+	 */
+	public function handleUncaughtException($exception)
+	{
+		$this->handleException($exception)->send();
+	}
+
+	/**
+	 * Handle the PHP shutdown event.
+	 *
+	 * @return void
+	 */
+	public function handleShutdown()
+	{
+		$error = error_get_last();
+
+		// If an error has occurred that has not been displayed, we will create a fatal
+		// error exception instance and pass it into the regular exception handling
+		// code so it can be displayed back out to the developer for information.
+		if ( ! is_null($error))
+		{
+			extract($error);
+
+			if ( ! $this->isFatal($type)) return;
+
+			$this->handleException(new FatalError($message, $type, 0, $file, $line))->send();
+		}
+	}
+
+	/**
+	 * Determine if the error type is fatal.
+	 *
+	 * @param  int   $type
+	 * @return bool
+	 */
+	protected function isFatal($type)
+	{
+		return in_array($type, array(E_ERROR, E_CORE_ERROR, E_COMPILE_ERROR, E_PARSE));
+	}
+
+	/**
+	 * Handle a console exception.
+	 *
+	 * @param  \Exception  $exception
+	 * @return void
+	 */
+	public function handleConsole($exception)
+	{
+		return $this->callCustomHandlers($exception, true);
+	}
+
+	/**
+	 * Handle the given exception.
+	 *
+	 * @param  \Exception  $exception
+	 * @param  bool  $fromConsole
+	 * @return void
+	 */
+	protected function callCustomHandlers($exception, $fromConsole = false)
+	{
+		foreach ($this->handlers as $handler)
+		{
+			// If this exception handler does not handle the given exception, we will just
+			// go the next one. A handler may type-hint an exception that it handles so
+			//  we can have more granularity on the error handling for the developer.
+			if ( ! $this->handlesException($handler, $exception))
+			{
+				continue;
+			}
+			elseif ($exception instanceof HttpExceptionInterface)
+			{
+				$code = $exception->getStatusCode();
+			}
+
+			// If the exception doesn't implement the HttpExceptionInterface, we will just
+			// use the generic 500 error code for a server side error. If it implements
+			// the HttpException interfaces we'll grab the error code from the class.
+			else
+			{
+				$code = 500;
+			}
+
+			// We will wrap this handler in a try / catch and avoid white screens of death
+			// if any exceptions are thrown from a handler itself. This way we will get
+			// at least some errors, and avoid errors with no data or not log writes.
+			try
+			{
+				$response = $handler($exception, $code, $fromConsole);
+			}
+			catch (\Exception $e)
+			{
+				$response = $this->formatException($e);
+			}
+
+			// If this handler returns a "non-null" response, we will return it so it will
+			// get sent back to the browsers. Once the handler returns a valid response
+			// we will cease iterating through them and calling these other handlers.
+			if (isset($response) && ! is_null($response))
+			{
+				return $response;
+			}
+		}
+	}
+
+	/**
+	 * Display the given exception to the user.
+	 *
+	 * @param  \Exception  $exception
+	 * @return void
+	 */
+	protected function displayException($exception)
+	{
+		$displayer = $this->debug ? $this->debugDisplayer : $this->plainDisplayer;
+
+		return $displayer->display($exception);
+	}
+
+	/**
+	 * Determine if the given handler handles this exception.
+	 *
+	 * @param  \Closure    $handler
+	 * @param  \Exception  $exception
+	 * @return bool
+	 */
+	protected function handlesException(Closure $handler, $exception)
+	{
+		$reflection = new ReflectionFunction($handler);
+
+		return $reflection->getNumberOfParameters() == 0 || $this->hints($reflection, $exception);
+	}
+
+	/**
+	 * Determine if the given handler type hints the exception.
+	 *
+	 * @param  \ReflectionFunction  $reflection
+	 * @param  \Exception  $exception
+	 * @return bool
+	 */
+	protected function hints(ReflectionFunction $reflection, $exception)
+	{
+		$parameters = $reflection->getParameters();
+
+		$expected = $parameters[0];
+
+		return ! $expected->getClass() || $expected->getClass()->isInstance($exception);
+	}
+
+	/**
+	 * Format an exception thrown by a handler.
+	 *
+	 * @param  \Exception  $e
+	 * @return string
+	 */
+	protected function formatException(\Exception $e)
+	{
+		if ($this->debug)
+		{
+			$location = $e->getMessage().' in '.$e->getFile().':'.$e->getLine();
+
+			return 'Error in exception handler: '.$location;
+		}
+
+		return 'Error in exception handler.';
+	}
+
+	/**
+	 * Register an application error handler.
+	 *
+	 * @param  \Closure  $callback
+	 * @return void
+	 */
+	public function error(Closure $callback)
+	{
+		array_unshift($this->handlers, $callback);
+	}
+
+	/**
+	 * Register an application error handler at the bottom of the stack.
+	 *
+	 * @param  \Closure  $callback
+	 * @return void
+	 */
+	public function pushError(Closure $callback)
+	{
+		$this->handlers[] = $callback;
+	}
+
+	/**
+	 * Prepare the given response.
+	 *
+	 * @param  mixed  $response
+	 * @return \Illuminate\Http\Response
+	 */
+	protected function prepareResponse($response)
+	{
+		return $this->responsePreparer->prepareResponse($response);
+	}
+
+	/**
+	 * Determine if we are running in the console.
+	 *
+	 * @return bool
+	 */
+	public function runningInConsole()
+	{
+		return php_sapi_name() == 'cli';
+	}
+
+	/**
+	 * Set the debug level for the handler.
+	 *
+	 * @param  bool  $debug
+	 * @return void
+	 */
+	public function setDebug($debug)
+	{
+		$this->debug = $debug;
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/PlainDisplayer.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/PlainDisplayer.php b/vendor/laravel/framework/src/Illuminate/Exception/PlainDisplayer.php
new file mode 100755
index 0000000..7c53ad7
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/PlainDisplayer.php
@@ -0,0 +1,24 @@
+<?php namespace Illuminate\Exception;
+
+use Exception;
+use Symfony\Component\HttpFoundation\Response;
+use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;
+
+class PlainDisplayer implements ExceptionDisplayerInterface {
+
+	/**
+	 * Display the given exception to the user.
+	 *
+	 * @param  \Exception  $exception
+	 * @return \Symfony\Component\HttpFoundation\Response
+	 */
+	public function display(Exception $exception)
+	{
+		$status = $exception instanceof HttpExceptionInterface ? $exception->getStatusCode() : 500;
+
+		$headers = $exception instanceof HttpExceptionInterface ? $exception->getHeaders() : array();
+
+		return new Response(file_get_contents(__DIR__.'/resources/plain.html'), $status, $headers);
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/SymfonyDisplayer.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/SymfonyDisplayer.php b/vendor/laravel/framework/src/Illuminate/Exception/SymfonyDisplayer.php
new file mode 100755
index 0000000..6f358ea
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/SymfonyDisplayer.php
@@ -0,0 +1,56 @@
+<?php namespace Illuminate\Exception;
+
+use Exception;
+use Symfony\Component\Debug\ExceptionHandler;
+use Symfony\Component\HttpFoundation\JsonResponse;
+
+class SymfonyDisplayer implements ExceptionDisplayerInterface {
+
+	/**
+	 * The Symfony exception handler.
+	 *
+	 * @var \Symfony\Component\Debug\ExceptionHandler
+	 */
+	protected $symfony;
+
+	/**
+	 * Indicates if JSON should be returned.
+	 *
+	 * @var bool
+	 */
+	protected $returnJson;
+
+	/**
+	 * Create a new Symfony exception displayer.
+	 *
+	 * @param  \Symfony\Component\Debug\ExceptionHandler  $symfony
+	 * @param  bool  $returnJson
+	 * @return void
+	 */
+	public function __construct(ExceptionHandler $symfony, $returnJson = false)
+	{
+		$this->symfony = $symfony;
+		$this->returnJson = $returnJson;
+	}
+
+	/**
+	 * Display the given exception to the user.
+	 *
+	 * @param  \Exception  $exception
+	 * @return \Symfony\Component\HttpFoundation\Response
+	 */
+	public function display(Exception $exception)
+	{
+		if ($this->returnJson)
+		{
+			return new JsonResponse(array(
+				'error' => $exception->getMessage(),
+				'file' => $exception->getFile(),
+				'line' => $exception->getLine(),
+			), 500);
+		}
+
+		return $this->symfony->createResponse($exception);
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/WhoopsDisplayer.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/WhoopsDisplayer.php b/vendor/laravel/framework/src/Illuminate/Exception/WhoopsDisplayer.php
new file mode 100755
index 0000000..ec42912
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/WhoopsDisplayer.php
@@ -0,0 +1,52 @@
+<?php namespace Illuminate\Exception;
+
+use Exception;
+use Whoops\Run;
+use Symfony\Component\HttpFoundation\Response;
+use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;
+
+class WhoopsDisplayer implements ExceptionDisplayerInterface {
+
+	/**
+	 * The Whoops run instance.
+	 *
+	 * @var \Whoops\Run
+	 */
+	protected $whoops;
+
+	/**
+	 * Indicates if the application is in a console environment.
+	 *
+	 * @var bool
+	 */
+	protected $runningInConsole;
+
+	/**
+	 * Create a new Whoops exception displayer.
+	 *
+	 * @param  \Whoops\Run  $whoops
+	 * @param  bool  $runningInConsole
+	 * @return void
+	 */
+	public function __construct(Run $whoops, $runningInConsole)
+	{
+		$this->whoops = $whoops;
+		$this->runningInConsole = $runningInConsole;
+	}
+
+	/**
+	 * Display the given exception to the user.
+	 *
+	 * @param  \Exception  $exception
+	 * @return \Symfony\Component\HttpFoundation\Response
+	 */
+	public function display(Exception $exception)
+	{
+		$status = $exception instanceof HttpExceptionInterface ? $exception->getStatusCode() : 500;
+
+		$headers = $exception instanceof HttpExceptionInterface ? $exception->getHeaders() : array();
+
+		return new Response($this->whoops->handleException($exception), $status, $headers);
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/composer.json
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/composer.json b/vendor/laravel/framework/src/Illuminate/Exception/composer.json
new file mode 100755
index 0000000..204fd26
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/composer.json
@@ -0,0 +1,33 @@
+{
+    "name": "illuminate/exception",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Taylor Otwell",
+            "email": "taylorotwell@gmail.com"
+        }
+    ],
+    "require": {
+        "php": ">=5.4.0",
+        "filp/whoops": "1.1.*",
+        "illuminate/support": "4.2.*",
+        "symfony/debug": "2.5.*",
+        "symfony/http-foundation": "2.5.*",
+        "symfony/http-kernel": "2.5.*"
+    },
+    "require-dev": {
+        "monolog/monolog": "~1.6"
+    },
+    "autoload": {
+        "psr-0": {
+            "Illuminate\\Exception": ""
+        }
+    },
+    "target-dir": "Illuminate/Exception",
+    "extra": {
+        "branch-alias": {
+            "dev-master": "4.2-dev"
+        }
+    },
+    "minimum-stability": "dev"
+}

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Exception/resources/plain.html
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Exception/resources/plain.html b/vendor/laravel/framework/src/Illuminate/Exception/resources/plain.html
new file mode 100755
index 0000000..683c5ec
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Exception/resources/plain.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+        <meta name="robots" content="noindex,nofollow" />
+        <style>
+            /* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html */
+            html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}
+
+            html { background: #eee; padding: 10px }
+            img { border: 0; }
+            #sf-resetcontent { width:970px; margin:0 auto; }
+                        .sf-reset { font: 11px Verdana, Arial, sans-serif; color: #333 }
+            .sf-reset .clear { clear:both; height:0; font-size:0; line-height:0; }
+            .sf-reset .clear_fix:after { display:block; height:0; clear:both; visibility:hidden; }
+            .sf-reset .clear_fix { display:inline-block; }
+            .sf-reset * html .clear_fix { height:1%; }
+            .sf-reset .clear_fix { display:block; }
+            .sf-reset, .sf-reset .block { margin: auto }
+            .sf-reset abbr { border-bottom: 1px dotted #000; cursor: help; }
+            .sf-reset p { font-size:14px; line-height:20px; color:#868686; padding-bottom:20px }
+            .sf-reset strong { font-weight:bold; }
+            .sf-reset a { color:#6c6159; }
+            .sf-reset a img { border:none; }
+            .sf-reset a:hover { text-decoration:underline; }
+            .sf-reset em { font-style:italic; }
+            .sf-reset h1, .sf-reset h2 { font: 20px Georgia, "Times New Roman", Times, serif }
+            .sf-reset h2 span { background-color: #fff; color: #333; padding: 6px; float: left; margin-right: 10px; }
+            .sf-reset .traces li { font-size:12px; padding: 2px 4px; list-style-type:decimal; margin-left:20px; }
+            .sf-reset .block { background-color:#FFFFFF; padding:10px 28px; margin-bottom:20px;
+                -webkit-border-bottom-right-radius: 16px;
+                -webkit-border-bottom-left-radius: 16px;
+                -moz-border-radius-bottomright: 16px;
+                -moz-border-radius-bottomleft: 16px;
+                border-bottom-right-radius: 16px;
+                border-bottom-left-radius: 16px;
+                border-bottom:1px solid #ccc;
+                border-right:1px solid #ccc;
+                border-left:1px solid #ccc;
+            }
+            .sf-reset .block_exception { background-color:#ddd; color: #333; padding:20px;
+                -webkit-border-top-left-radius: 16px;
+                -webkit-border-top-right-radius: 16px;
+                -moz-border-radius-topleft: 16px;
+                -moz-border-radius-topright: 16px;
+                border-top-left-radius: 16px;
+                border-top-right-radius: 16px;
+                border-top:1px solid #ccc;
+                border-right:1px solid #ccc;
+                border-left:1px solid #ccc;
+                overflow: hidden;
+                word-wrap: break-word;
+            }
+            .sf-reset li a { background:none; color:#868686; text-decoration:none; }
+            .sf-reset li a:hover { background:none; color:#313131; text-decoration:underline; }
+            .sf-reset ol { padding: 10px 0; }
+            .sf-reset h1 { background-color:#FFFFFF; padding: 15px 28px; margin-bottom: 20px;
+                -webkit-border-radius: 10px;
+                -moz-border-radius: 10px;
+                border-radius: 10px;
+                border: 1px solid #ccc;
+            }
+        </style>
+    </head>
+    <body>
+                    <div id="sf-resetcontent" class="sf-reset">
+                <h1>Whoops, looks like something went wrong.</h1>
+
+            </div>
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Filesystem/FileNotFoundException.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Filesystem/FileNotFoundException.php b/vendor/laravel/framework/src/Illuminate/Filesystem/FileNotFoundException.php
new file mode 100644
index 0000000..f6ee5dc
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Filesystem/FileNotFoundException.php
@@ -0,0 +1,3 @@
+<?php namespace Illuminate\Filesystem;
+
+class FileNotFoundException extends \Exception {}