Rev 30 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php/** Licensed to the Apache Software Foundation (ASF) under one* or more contributor license agreements. See the NOTICE file* distributed with this work for additional information* regarding copyright ownership. The ASF 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** 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.** @package thrift.transport*//*** Transport exceptions*/class TTransportException extends TException {const UNKNOWN = 0;const NOT_OPEN = 1;const ALREADY_OPEN = 2;const TIMED_OUT = 3;const END_OF_FILE = 4;function __construct($message=null, $code=0) {parent::__construct($message, $code);}}/*** Base interface for a transport agent.** @package thrift.transport*/abstract class TTransport {/*** Whether this transport is open.** @return boolean true if open*/public abstract function isOpen();/*** Open the transport for reading/writing** @throws TTransportException if cannot open*/public abstract function open();/*** Close the transport.*/public abstract function close();/*** Read some data into the array.** @param int $len How much to read* @return string The data that has been read* @throws TTransportException if cannot read any more data*/public abstract function read($len);/*** Guarantees that the full amount of data is read.** @return string The data, of exact length* @throws TTransportException if cannot read data*/public function readAll($len) {// return $this->read($len);$data = '';$got = 0;while (($got = strlen($data)) < $len) {$data .= $this->read($len - $got);}return $data;}/*** Writes the given data out.** @param string $buf The data to write* @throws TTransportException if writing fails*/public abstract function write($buf);/*** Flushes any pending data out of a buffer** @throws TTransportException if a writing error occurs*/public function flush() {}}?>