*/ class CompilerJarFilter extends BaseCompilerFilter { private $jarPath; private $javaPath; public function __construct($jarPath, $javaPath = '/usr/bin/java') { $this->jarPath = $jarPath; $this->javaPath = $javaPath; } public function filterDump(AssetInterface $asset) { $cleanup = array(); $pb = new ProcessBuilder(array( $this->javaPath, '-jar', $this->jarPath, )); if (null !== $this->compilationLevel) { $pb->add('--compilation_level')->add($this->compilationLevel); } if (null !== $this->jsExterns) { $cleanup[] = $externs = tempnam(sys_get_temp_dir(), 'assetic_google_closure_compiler'); file_put_contents($externs, $this->jsExterns); $pb->add('--externs')->add($externs); } if (null !== $this->externsUrl) { $cleanup[] = $externs = tempnam(sys_get_temp_dir(), 'assetic_google_closure_compiler'); file_put_contents($externs, file_get_contents($this->externsUrl)); $pb->add('--externs')->add($externs); } if (null !== $this->excludeDefaultExterns) { $pb->add('--use_only_custom_externs'); } if (null !== $this->formatting) { $pb->add('--formatting')->add($this->formatting); } if (null !== $this->useClosureLibrary) { $pb->add('--manage_closure_dependencies'); } if (null !== $this->warningLevel) { $pb->add('--warning_level')->add($this->warningLevel); } $pb->add('--js')->add($cleanup[] = $input = tempnam(sys_get_temp_dir(), 'assetic_google_closure_compiler')); file_put_contents($input, $asset->getContent()); $proc = $pb->getProcess(); $code = $proc->run(); array_map('unlink', $cleanup); if (0 < $code) { throw new \RuntimeException($proc->getErrorOutput()); } $asset->setContent($proc->getOutput()); } } __halt_compiler();----SIGNATURE:----YACHFqdKFFKEhjJagG1S6r8+tPPLLNK6ZpqUDP1kmR7SiCJWH7SqHGhTkNd9aN9T4OX1vJuvCt02kk3gcUWX5tCf8g8VHPieM1qd4EVAE5LHGsnGxEVygWas9Vha9yaRS569A4VZaGURD7R6MDS8516tNokYaBPbCE9QUKbXiOegeLetsNHDNHK0ZdZFEKexKXfUisdec6Ntiwr7EVi4m7JVfPG5LQIU15zRQ2lgie/kUeVqzDpoaVA6tt6RqVq1cu5RV1qT20jTGL4PUtJzlDHo/5yLyCIPD1+Dbw4ZfI2MgdWBPij9vwes9UjarMcDLsQlqcDEkeb1EOlbYSFNXqjYr1Q5S9ffRbv4sbDPoDuMsAcQsYdJfWHNFWHp+MSLLpo1XRQamHeS6L1fmuBxJMPVbts4QPfrLSiQGBEJ65vC5uyeIG6p0ur44iRjIJ+bklTkVWjPT6EyL8HkSOfWcusXBgPJMNUkh2pylVlqNWDpwaMrc1eCwZ/t/8GWKGnyBuajlqM5r9Ompji6jTKWNL3YE4/S1XtehLceQjDBdtHlyc3po2BcYWhoOHQ80VezhhktZ6K75lhiE5bXpZB4AN+bWSfK0ovYOJv+rYeXs0YzLdWfWCzjB9MI4Xsfr+pKFv8RY7DtMgMAvKVquEw+Fe5VHM1itjoSZCNn/dAC0rs=----ATTACHMENT:----NTI0MzAyNTg3MDM4NjY1NyAyMDgwODcxMDUxMTQ2MDk2IDM0MTA3ODkzMTc5NTQ2Mzk=