$response = null;
if (isset($_FILES)) {
    //&& count($_FILES)
    try {
        $fileDigitais = array('name' => $_FILES['files']['name'][0], 'type' => $_FILES['files']['type'][0], 'tmp_name' => $_FILES['files']['tmp_name'][0], 'error' => $_FILES['files']['error'][0], 'size' => $_FILES['files']['size'][0]);
        /**
         * Utilizada criação de objeto concreto por ser permitido somente o
         * upload de arquivos PDF. Caso seja liberado para outros tipos, 
         * utilizar fábrica para criação de objetos.
         */
        $session = \Session::get('_upload');
        $digital = $session['digital'];
        //Crio documento Imagem Anterior para qualquer tipo de conversão de passivo necessária
        $documentoImagemAnterior = \Documento\Imagem\DocumentoImagemFactory::factory($digital);
        $documentoImagemNovo = new \Documento\Imagem\DocumentoImagemPDF();
        $documentoImagemNovo->upload($fileDigitais);
        // Make Result
        $response = array('name' => $_FILES['files']['name'][0], 'size' => $_FILES['files']['size'][0], 'type' => $_FILES['files']['type'][0], 'status' => 'success');
    } catch (Exception $e) {
        // Make Result
        $response = array('name' => $_FILES['files']['name'][0], 'size' => $_FILES['files']['size'][0], 'type' => $_FILES['files']['type'][0], 'error' => $e->getMessage());
    }
} else {
    $response = array('name' => 'Não existe', 'size' => '0 KB', 'type' => 'Não existe', 'error' => "Não foi possível efetuar o Upload");
}
// Print Result
print '[' . json_encode($response) . ']';
/* end where regular request code runs..     */
/* ------------------------------------------ */
//$iSize = ob_get_length();
header("Content-Length: {$iSize}");