示例#1
0
            /// <summary>
            /// </summary>
            /// <param name="path"></param>
            /// <param name="request"></param>
            /// <param name="httpRequest"></param>
            /// <param name="httpResponse"></param>
            /// <returns></returns>
            public byte[] uploaderCaps(string path, Stream request,
                                       OSHttpRequest httpRequest, OSHttpResponse httpResponse)
            {
                handlerUpLoad = OnUpLoad;
                UUID newAssetID;

                handlerUpLoad(HttpServerHandlerHelpers.ReadFully(request), out newAssetID);

                OSDMap map = new OSDMap();

                map["new_asset"] = newAssetID.ToString();
                map["item_id"]   = UUID.Zero;
                map["state"]     = "complete";
                MainServer.Instance.RemoveStreamHandler("POST", uploaderPath);

                return(OSDParser.SerializeLLSDXmlBytes(map));
            }
示例#2
0
            /// <summary>
            ///
            /// </summary>
            /// <param name="data"></param>
            /// <param name="path"></param>
            /// <param name="param"></param>
            /// <returns></returns>
            public string uploaderCaps(byte[] data, string path, string param)
            {
                handlerUpLoad = OnUpLoad;
                UUID newAssetID;

                handlerUpLoad(data, out newAssetID);

                string res = String.Empty;
                OSDMap map = new OSDMap();

                map["new_asset"] = newAssetID.ToString();
                map["item_id"]   = UUID.Zero;
                map["state"]     = "complete";
                res = OSDParser.SerializeLLSDXmlString(map);
                clientCaps.RemoveStreamHandler(uploadMethod, "POST", uploaderPath);

                return(res);
            }
示例#3
0
            /// <summary>
            ///
            /// </summary>
            /// <param name="data"></param>
            /// <param name="path"></param>
            /// <param name="param"></param>
            /// <returns></returns>
            public string uploaderCaps(byte[] data, string path, string param)
            {
                string res = String.Empty;
                LLSDAssetUploadComplete uploadComplete = new LLSDAssetUploadComplete();

                uploadComplete.new_asset          = newAssetID.ToString();
                uploadComplete.new_inventory_item = UUID.Zero;
                uploadComplete.state = "complete";

                res = LLSDHelpers.SerialiseLLSDReply(uploadComplete);

                httpListener.RemoveStreamHandler("POST", uploaderPath);

                handlerUpLoad = OnUpLoad;

                if (handlerUpLoad != null)
                {
                    handlerUpLoad(newAssetID, data);
                }

                return(res);
            }
示例#4
0
            /// <summary>
            /// </summary>
            /// <param name="path"></param>
            /// <param name="request"></param>
            /// <param name="httpRequest"></param>
            /// <param name="httpResponse"></param>
            /// <returns></returns>
            public byte [] UploaderCaps (string path, Stream request,
                                       OSHttpRequest httpRequest, OSHttpResponse httpResponse)
            {
                handlerUpLoad = OnUpLoad;
                UUID newAssetID;
                handlerUpLoad (HttpServerHandlerHelpers.ReadFully (request), out newAssetID);

                OSDMap map = new OSDMap ();
                map ["new_asset"] = newAssetID.ToString ();
                map ["item_id"] = UUID.Zero;
                map ["state"] = "complete";
                MainServer.Instance.RemoveStreamHandler ("POST", uploaderPath);

                return OSDParser.SerializeLLSDXmlBytes (map);
            }
示例#5
0
        /// <summary>
        /// Handle raw uploaded baked texture data.
        /// </summary>
        /// <param name="data"></param>
        /// <param name="path"></param>
        /// <param name="param"></param>
        /// <returns></returns>
        public string uploaderCaps(byte[] data, string path, string param)
        {
            handlerUpLoad = OnUpLoad;
            if (handlerUpLoad != null)
            {
                Util.FireAndForget(delegate(object o) { handlerUpLoad(newAssetID, data); });
            }

            string res = String.Empty;
            LLSDAssetUploadComplete uploadComplete = new LLSDAssetUploadComplete();
            uploadComplete.new_asset = newAssetID.ToString();
            uploadComplete.new_inventory_item = UUID.Zero;
            uploadComplete.state = "complete";

            res = LLSDHelpers.SerialiseLLSDReply(uploadComplete);

            httpListener.RemoveStreamHandler("POST", uploaderPath);

            //                m_log.InfoFormat("[CAPS] baked texture upload completed for {0}",newAssetID);

            return res;
        }
示例#6
0
            /// <summary>
            ///
            /// </summary>
            /// <param name="data"></param>
            /// <param name="path"></param>
            /// <param name="param"></param>
            /// <returns></returns>
            public string uploaderCaps(byte[] data, string path, string param)
            {
                handlerUpLoad = OnUpLoad;
                UUID newAssetID;
                handlerUpLoad(data, out newAssetID);

                string res = String.Empty;
                OSDMap map = new OSDMap();
                map["new_asset"] = newAssetID.ToString();
                map["item_id"] = UUID.Zero;
                map["state"] = "complete";
                res = OSDParser.SerializeLLSDXmlString(map);
                clientCaps.RemoveStreamHandler(uploadMethod, "POST", uploaderPath);

                return res;
            }
示例#7
0
            /// <summary>
            ///
            /// </summary>
            /// <param name="data"></param>
            /// <param name="path"></param>
            /// <param name="param"></param>
            /// <returns></returns>
            public string uploaderCaps(byte[] data, string path, string param)
            {
                string res = String.Empty;
                LLSDAssetUploadComplete uploadComplete = new LLSDAssetUploadComplete();
                uploadComplete.new_asset = newAssetID.ToString();
                uploadComplete.new_inventory_item = UUID.Zero;
                uploadComplete.state = "complete";

                res = LLSDHelpers.SerialiseLLSDReply(uploadComplete);

                httpListener.RemoveStreamHandler("POST", uploaderPath);

                handlerUpLoad = OnUpLoad;
                if (handlerUpLoad != null)
                {
                    handlerUpLoad(newAssetID, data);
                }

                return res;
            }