public function getClientOracle() { $permutationStrongName = $this->getPermutationStrongName(); if ($permutationStrongName == null) { throw new SecurityException('Blocked request without GWT permutation header (XSRF attack ?)'); } $basePath = $this->getRequestModuleBasePath(); if ($basePath == null) { throw new SecurityException('Blocked request without GWT base path header (XSRF attack ?)'); } $toReturn = null; if (isset($this->clientOracleCache[$permutationStrongName])) { $toReturn = $this->clientOracleCache[$permutationStrongName]; if ($toReturn != null) { return $toReturn; } } if ($permutationStrongName == 'HostedMode') { if (!$this->allowHostedModeConnections()) { throw new SecurityException('Blocked Development Mode request'); } $toReturn = new HostedModeClientOracle(); } else { $in = $this->findClientOracleData($basePath, $permutationStrongName); $toReturn = WebModeClientOracle::load($in); } $this->clientOracleCache[$permutationStrongName] = $toReturn; return $toReturn; }
private function getJavahSignatureName(Clazz $clazz) { if ($clazz->isArray()) { $leafType = $clazz; $dims = 0; do { $dims++; $leafType = $leafType->getComponentType(); } while (!is_null($leafType->getComponentType())); assert($dims > 0); $s = $this->getJavahSignatureName($leafType); for ($i = 0; $i < $dims; ++$i) { $s = '_3' . $s; } return $s; } else { if ($clazz->isPrimitive()) { return WebModeClientOracle::jsniName($clazz); } else { $name = $clazz->getFullName(); $name = str_replace('_', '_1', $name); $name = str_replace('.', '_', $name); return 'L' . $name . '_2'; } } }