Jackalope\Transport\Jackrabbit\Client::getMimePart PHP Method

getMimePart() protected method

protected getMimePart ( $name, $value, $mime_boundary )
    protected function getMimePart($name, $value, $mime_boundary)
    {
        $data = '';
        $eol = "\r\n";
        if (is_array($value)) {
            if (is_array($value[0])) {
                foreach ($value[0] as $v) {
                    $data .= $this->getMimePart($name, array($v, $value[1]), $mime_boundary);
                }
                return $data;
            }
            $data .= '--' . $mime_boundary . $eol;
            if (is_resource($value[0])) {
                $data .= 'Content-Disposition: form-data; name="' . $name . '"; filename="' . $name . '"' . $eol;
                $data .= 'Content-Type: jcr-value/' . strtolower(PropertyType::nameFromValue($value[1])) . '; charset=UTF-8' . $eol;
                $data .= 'Content-Transfer-Encoding: binary' . $eol . $eol;
                $data .= stream_get_contents($value[0]) . $eol;
                fclose($value[0]);
            } else {
                $data .= 'Content-Disposition: form-data; name="' . $name . '"' . $eol;
                $data .= 'Content-Type: jcr-value/' . strtolower(PropertyType::nameFromValue($value[1])) . '; charset=UTF-8' . $eol;
                $data .= 'Content-Transfer-Encoding: 8bit' . $eol . $eol;
                switch ($value[1]) {
                    case PropertyType::DATE:
                        $data .= $this->valueConverter->convertType($value[0], PropertyType::STRING);
                        break;
                    default:
                        $data .= $value[0];
                }
                $data .= $eol;
            }
        } else {
            if (is_array($value)) {
                foreach ($value as $v) {
                    $data .= $this->getMimePart($name, $v, $mime_boundary);
                }
                return $data;
            }
            $data .= '--' . $mime_boundary . $eol;
            $data .= 'Content-Disposition: form-data; name="' . $name . '"' . $eol;
            $data .= 'Content-Type: text/plain; charset=UTF-8' . $eol;
            $data .= 'Content-Transfer-Encoding: 8bit' . $eol . $eol;
            //$data .= '--' . $mime_boundary . $eol;
            $data .= $value . $eol;
        }
        return $data;
    }