ReadObject() public method

public ReadObject ( Stream stream ) : object
stream Stream
return object
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            if (CountryPhoneCode.SelectedItem != null)
            {
                var _id = Guid.NewGuid().ToString("N");
                var _countryPhoneCode = (CountryPhoneCode.SelectedItem as Country).PhoneCode;
                var _countryName = (CountryPhoneCode.SelectedItem as Country).CountryName;
                var _name = FullName.Text;
                var _phoneNumber = PhoneNumber.Text;
                var _password = Password.Password;

                var client = new HttpClient()
                {
                    BaseAddress = new Uri("http://yochat.azurewebsites.net/chat/")
                };

                var json = await client.GetStringAsync("createuser?id=" + _id + "&fullName=" + _name + "&password="******"&phoneNumber=" + _phoneNumber + "&countryPhoneCode=" + _countryPhoneCode);

                var serializer = new DataContractJsonSerializer(typeof(User));
                var ms = new MemoryStream();
                var user = serializer.ReadObject(ms) as User;

                Frame.Navigate(typeof(MainPage), user);
            }
            else
            {
                MessageDialog dialog = new MessageDialog("Lütfen Ülkenizi Seçiniz!");
                await dialog.ShowAsync();
            }
        }
        /// <summary>
        /// Looks up a champion with the specified id.
        /// </summary>
        /// <param name="region">The region to check</param>
        /// <param name="championId">id of the champion to look up</param>
        /// <remarks>Version 1.2</remarks>
        /// <returns></returns>
        public Champion GetChampion(int championId)
        {
            Champion championCall = new Champion();
            Champion staticChampionCall = new Champion();

            DataContractJsonSerializer jSerializer = new DataContractJsonSerializer(typeof(Champion));
            WebClient webClient = new WebClient();
            try
            {
                championCall = (Champion)jSerializer.ReadObject(webClient.OpenRead(String.Format("https://{0}.api.pvp.net/api/lol/{0}/v1.2/champion/{1}?api_key={2}", _region, championId, _apiKey)));
                staticChampionCall = (Champion)jSerializer.ReadObject(webClient.OpenRead(string.Format("https://{0}.api.pvp.net/api/lol/static-data/{0}/v1.2/champion/{1}?champData=all&api_key={2}", _region, championId, _apiKey)));

                staticChampionCall.Active = championCall.Active;
                staticChampionCall.BotEnabled = championCall.BotEnabled;
                staticChampionCall.BotMmEnabled = championCall.BotMmEnabled;
                staticChampionCall.FreeToPlay = championCall.FreeToPlay;
                staticChampionCall.RankedPlayEnabled = championCall.RankedPlayEnabled;

            }
            catch (WebException e)
            {
                throw;
            }
            return staticChampionCall;
        }
        static void ChunkedUpload(string token,int size = 1024 * 1024, int parts = 10)
        {
            Util.RandomFile(size, "chunked.txt");
            string respHTML = Util.HttpPost("https://api.onedrive.com/v1.0/drive/root:/chunked.txt:/upload.createSession", "", token);
            DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(UploadSession));
            UploadSession task = (UploadSession)ser.ReadObject(new MemoryStream(Encoding.ASCII.GetBytes(respHTML)));

            byte[] data = File.ReadAllBytes("chunked.txt");
            int offset = int.Parse(task.nextExpectedRanges[0].Split(new char[] { '-' })[0]);
            while (offset < data.Length)
            {
                int uplen = Math.Min(size / parts, data.Length - offset);
                respHTML = Util.HttpPut(task.uploadUrl, token, data, offset, uplen,
                    "bytes " + offset + "-" + (offset + uplen - 1) + "/" + data.Length);
                if (offset + uplen < data.Length)
                {
                    UploadSession ttask = (UploadSession)ser.ReadObject(new MemoryStream(Encoding.ASCII.GetBytes(respHTML)));
                    offset = int.Parse(ttask.nextExpectedRanges[0].Split(new char[] { '-' })[0]);
                }
                else
                    offset = data.Length;
            }

            File.Delete("chunked.txt");
        }
		public List<Tweet> GetLatest( string p_Query, int p_Count = 100 ) {
			TwitterResults _TwitterResults;
			List<Tweet> _ReturnValue = new List<Tweet>();
			DataContractJsonSerializer _JsonSerializer = new DataContractJsonSerializer( typeof( TwitterResults ) );

			HttpWebRequest _Request = WebRequest.Create( string.Format( "{0}?q={1}&result_type=recent&count={2}", BASE_SEARCH_URL, p_Query, p_Count ) ) as HttpWebRequest;
			_Request.Headers.Add( "Authorization", string.Format( "Bearer {0}", Credentials.access_token ) );
			_Request.KeepAlive = false;
			_Request.Method = "GET";

			HttpWebResponse _Response = _Request.GetResponse() as HttpWebResponse;
			_TwitterResults = (TwitterResults)_JsonSerializer.ReadObject( _Response.GetResponseStream() );
			_ReturnValue.AddRange( _TwitterResults.statuses );

			while( !string.IsNullOrWhiteSpace( _TwitterResults.search_metadata.next_results ) ) {
				_Request = WebRequest.Create( string.Format( "{0}{1}", BASE_SEARCH_URL, _TwitterResults.search_metadata.next_results ) ) as HttpWebRequest;
				_Request.Headers.Add( "Authorization", string.Format( "Bearer {0}", Credentials.access_token ) );
				_Request.KeepAlive = false;
				_Request.Method = "GET";

				_Response = _Request.GetResponse() as HttpWebResponse;
				_TwitterResults = (TwitterResults)_JsonSerializer.ReadObject( _Response.GetResponseStream() );
				_ReturnValue.AddRange( _TwitterResults.statuses );
			}

			return _ReturnValue;
		}
        public async Task TestManifest()
        {

            var stream = new MemoryStream();
            var cli = new SpeechClient();
            cli.SetStream(stream);
            await cli.SendManifest();

            stream.Seek(0, SeekOrigin.Begin);
            var reader = new StreamReader(stream);

            var size = Convert.ToInt32(reader.ReadLine());
            var outp = new char[size];
            reader.ReadBlock(outp, 0, size);

            var str = new String(outp);

            var re = new Regex(@"^([A-Z_]*)");
            Assert.IsTrue(re.Match(str).Value == "APP_MANIFEST");
            var jsonstr = str.TrimStart(re.Match(str).Value.ToCharArray());

            var jsonstream = new MemoryStream(Encoding.UTF8.GetBytes(jsonstr));

            var ser = new DataContractJsonSerializer(typeof(Manifest));
            Manifest jsonobj = (Manifest)ser.ReadObject(jsonstream);
            Assert.IsTrue(jsonobj.Version == "0.0.1");
            Assert.IsTrue(jsonobj.Name == "speech-recognizer");
            Assert.IsTrue(jsonobj.DisplayName == "Mycroft Networked Speech Recognizer");
            Assert.IsTrue(jsonobj.Description == "Lets applications register speech triggers for Mycroft to look for.");
            Assert.IsTrue(jsonobj.InstanceId == "primary");
        }
        void clientCities_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
        {
            //MessageBox.Show(e.Result.);
            var serializer = new DataContractJsonSerializer(typeof(Cities));
            Cities ipResult = (Cities)serializer.ReadObject(e.Result);
            List<AtrractionsList> citiesList = new List<AtrractionsList>();

            for (int i = 0; i <= ipResult.addresses.Length - 1; i++)
            {

                Random k = new Random();
                Double value = 0;
                String DefaultTitle = "Title";
                String DefaultDescription = "Description";
                String RandomType = "";

                value = k.NextDouble();
                DefaultTitle = ipResult.addresses[i].Name.ToString();
                DefaultDescription = ipResult.addresses[i].ID.ToString();
                RandomType = "Place" ;
                citiesList.Add(new AtrractionsList(DefaultTitle, DefaultDescription, RandomType));
            }
            listBoxCities.ItemsSource = citiesList;
            listBoxAttractions.ItemsSource = citiesList;
        }
 static string OfflineDownload(string url, string path)
 {
     string respHTML = Util.HttpPost("https://api.dropboxapi.com/1/save_url/auto/" + path + "?", "url=" + url, token);
     DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(OfflineTask));
     OfflineTask link = (OfflineTask)ser.ReadObject(new MemoryStream(Encoding.ASCII.GetBytes(respHTML)));
     return link.job;
 }
Example #8
0
        /// <summary>
        /// Deserialize String to Object
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="json"></param>
        /// <returns></returns>
        public static T Deserialize <T>(string json)
        {
            MemoryStream ms     = null;
            T            result = result = Activator.CreateInstance <T>();

            try
            {
                DateTime startTime = DateTime.Now;
                ms = new MemoryStream(Encoding.UTF8.GetBytes(json));
                System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(result.GetType());

                /*System.Runtime.Serialization.Json.DataContractJsonSerializer serializer =
                 *  new System.Runtime.Serialization.Json.DataContractJsonSerializer(obj.GetType(), new List<Type>(), Int16.MaxValue, false,
                 *      new ZentoSurrogate(), false);*/
                result = (T)serializer.ReadObject(ms);
                double time = (DateTime.Now - startTime).TotalSeconds;
                totalTimeExecution += time;
            }
            catch (Exception e)
            {
                LogHelper.LogError("exception while deserializing : " + e.Message + " - " + e.StackTrace);
                throw e;
            }
            finally
            {
                ms.Close();
                ms.Dispose();
            }
            return(result);
        }
Example #9
0
        public static ExecutionResult<ListPostsModel> Execute()
        {
            try
            {
                var data = new ListPostsRequestData
                               {
                                   AccessToken = DisqusOptions.GetInstance().AccessToken
                               };

                var request = BuildRequest("https://disqus.com/api/3.0/users/listActivity.json", HttpMethod.GET, data);
                var response = (HttpWebResponse)request.GetResponse();

                using (var stream = new StreamReader(response.GetResponseStream()))
                {
                    var serializer = new DataContractJsonSerializer(typeof(ListPostsModel));
                    var result = serializer.ReadObject(stream.BaseStream) as ListPostsModel;

                    return ExecutionResult<ListPostsModel>.Create(result);
                }
            }
            catch (Exception e)
            {
                return ExecutionResult<ListPostsModel>.CreateError(e);
            }
        }
Example #10
0
        /// <summary>
        ///     Create a new PebbleBundle from a .pwb file and parse its metadata.
        /// </summary>
        /// <param name="bundle">The stream to the bundle.</param>
        /// <param name="zip">The zip library implementation.</param>
        public void Load(Stream bundle, IZip zip)
        {
            //TODO: This needs to be refactored, probably put into a Load method
            if (false == zip.Open(bundle))
                throw new InvalidOperationException("Failed to open pebble bundle");

            using (Stream manifestStream = zip.OpenEntryStream("manifest.json"))
            {
                if (manifestStream == null)
                {
                    throw new InvalidOperationException("manifest.json not found in archive - not a valid Pebble bundle.");
                }
                var serializer = new DataContractJsonSerializer(typeof(BundleManifest));
                Manifest = (BundleManifest)serializer.ReadObject(manifestStream);
            }

            HasResources = (Manifest.Resources.Size != 0);

            if (HasResources)
            {
                using (Stream resourcesBinary = zip.OpenEntryStream(Manifest.Resources.Filename))
                {
                    if (resourcesBinary == null)
                        throw new PebbleException("Could not find resource entry in the bundle");

                    Resources = Util.GetBytes(resourcesBinary);
                }
            }

            LoadData(zip);
        }
Example #11
0
 private PaymentReceipt DeserializeOrderBlob(PaymentReceipt receipt)
 {
     var ser = new DataContractJsonSerializer(typeof (PaymentReceipt));
     var ms = new MemoryStream(Encoding.UTF8.GetBytes(receipt.orderblob));
     var deserializeReceipt = (PaymentReceipt) ser.ReadObject(ms);
     return deserializeReceipt;
 }
Example #12
0
        public void SaveCategories(string db)
        {
            foreach (Category cat in categories)
            {
                //Get an image for every category
                string imageUrl = string.Empty;
                string products = Program.ExecuteGetCommand(string.Format(Program.SSProductQueryUrl, cat.id), string.Empty, string.Empty);

                using (Stream s = Program.GenerateStreamFromString(products))
                {
                    DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Products));

                    Products SSProducts = (Products)ser.ReadObject(s);
                    imageUrl = SSProducts.products[0].images[2].url;
                }
                string query = "EXEC [stp_SS_SaveCategory] @id=N'" + cat.id.Replace("'", "\"") + "', @parentId=N'" + cat.parentId.Replace("'", "\"")
                                + "', @name=N'" + cat.name.Replace("'", "\"") + "', @imageUrl='" + imageUrl.Replace("'", "\"") + "'";

                SqlConnection myConnection = new SqlConnection(db);
                try
                {
                    myConnection.Open();
                    using (SqlDataAdapter adp = new SqlDataAdapter(query, myConnection))
                    {
                        SqlCommand cmd = adp.SelectCommand;
                        cmd.CommandTimeout = 300000;
                        cmd.ExecuteNonQuery();
                    }
                }
                finally
                {
                    myConnection.Close();
                }
            }
        }
        /// <summary>
        /// This example uses the raw JSON string to create a POST
        /// request for sending one or more SMTP messages through Email-On-Demand.
        /// 
        /// The JSON request generated by this sample code looks like this:
        /// 
        ///{
        ///    "ServerId": "YOUR SERVER ID HERE",
        ///    "ApiKey": "YOUR API KEY HERE",
        ///    "Messages": [{
        ///        "Subject": "Email subject line for raw JSON example.",
        ///        "TextBody": "The text portion of the message.",
        ///        "HtmlBody": "<h1>The html portion of the message</h1><br/>Test",
        ///        "To": [{
        ///            "EmailAddress": "*****@*****.**",
        ///            "FriendlyName": "Customer Name"
        ///        }],
        ///        "From": {
        ///            "EmailAddress": "*****@*****.**",
        ///            "FriendlyName": "From Address"
        ///        },
        ///    }]
        ///}
        /// </summary>
        public static void SimpleInjectionViaStringAsJson(
            int serverId, string yourApiKey, string apiUrl)
        {
            // The client object processes requests to the SocketLabs Injection API.
            var client = new RestClient(apiUrl);

            // Construct the string used to generate JSON for the POST request.
            string stringBody =
                "{" +
                    "\"ServerId\":\"" + serverId + "\"," +
                    "\"ApiKey\":\"" + yourApiKey + "\"," +
                    "\"Messages\":[{" +
                        "\"Subject\":\"Email subject line for raw JSON example.\"," +
                        "\"TextBody\":\"The text portion of the message.\"," +
                        "\"HtmlBody\":\"<h1>The html portion of the message</h1><br/>Test\"," +
                        "\"To\":[{" +
                            "\"EmailAddress\":\"[email protected]\"," +
                            "\"FriendlyName\":\"Customer Name\"" +
                        "}]," +
                        "\"From\":{" +
                            "\"EmailAddress\":\"[email protected]\"," +
                            "\"FriendlyName\":\"From Address\"" +
                        "}," +
                    "}]" +
                "}";

            try
            {
                // Generate a new POST request.
                var request = new RestRequest(Method.POST) { RequestFormat = DataFormat.Json };

                // Store the request data in the request object.
                request.AddParameter("application/json; charset=utf-8", stringBody, ParameterType.RequestBody);

                // Make the POST request.
                var result = client.ExecuteAsPost(request, "POST");

                // Store the response result in our custom class.
                using (var stream = new MemoryStream(Encoding.UTF8.GetBytes(result.Content)))
                {
                    var serializer = new DataContractJsonSerializer(typeof (PostResponse));
                    var resp = (PostResponse) serializer.ReadObject(stream);

                    // Display the results.
                    if (resp.ErrorCode.Equals("Success"))
                    {
                        Console.WriteLine("Successful injection!");
                    }
                    else
                    {
                        Console.WriteLine("Failed injection! Returned JSON is: ");
                        Console.WriteLine(result.Content);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error, something bad happened: " + ex.Message);
            }
        }
 public object Deserialize(WebFormatterDeserializationContext context, Type type)
 {
     if (context.ContentFormat != WebFormatterDeserializationContext.DeserializationFormat.Xml)
         throw new InvalidDataException("Data must be in xml format.");
     var serializer = new DataContractJsonSerializer(type);
     return serializer.ReadObject(context.XmlReader);
 }
        public Response Get(UrlRequest request)
        {
            using (DbConnection connection = _factory.CreateConnection())
            {
                connection.ConnectionString = _connectionString;
                connection.Open();

                DbCommand cmd = connection.CreateCommand();
                cmd.CommandText = "select [Value] from EmbedlyCache where [Key] = @key";

                DbParameter pKey = cmd.CreateParameter();
                pKey.DbType = DbType.Guid;
                pKey.Direction = ParameterDirection.Input;
                pKey.ParameterName = "key";
                pKey.Value = request.CacheKey;

                cmd.Parameters.Add(pKey);

                var value = (string)cmd.ExecuteScalar();
                if (value == null)
                    return null;

                byte[] bytes = Encoding.Default.GetBytes(value);
                using (var ms = new MemoryStream(bytes))
                {
                    var serializer = new DataContractJsonSerializer(typeof (Response));
                    var response = (Response)serializer.ReadObject(ms);
                    return response;
                }
            }
        }
Example #16
0
        private void AutenticateWNS()
        {
            try
            {
                // get an access token
                var urlEncodedSid = HttpUtility.UrlEncode(String.Format("{0}", this.Sid));
                var urlEncodedSecret = HttpUtility.UrlEncode(this.Secret);

                var uri =
                  String.Format("grant_type=client_credentials&client_id={0}&client_secret={1}&scope=notify.windows.com",
                  urlEncodedSid,
                  urlEncodedSecret);

                var client = new WebClient();
                client.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
                string response = client.UploadString("https://login.live.com/accesstoken.srf", uri);

                // parse the response in JSON format
                OAuthToken token;
                using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(response)))
                {
                    var ser = new DataContractJsonSerializer(typeof(OAuthToken));
                    token = (OAuthToken)ser.ReadObject(ms);
                }
                this.accessToken = token.AccessToken;
            }
            catch (Exception ex)
            {
                //lblResult.Text = ex.Message;
                //lblResult.ForeColor = System.Drawing.Color.Red;
                throw ex;
            }
        }
 static void GetDownloadLink()
 {
     string respHTML = Util.HttpPost("https://api.dropboxapi.com/1/media/auto/simple.txt", "", token);
     DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(DownloadLink));
     DownloadLink link = (DownloadLink)ser.ReadObject(new MemoryStream(Encoding.ASCII.GetBytes(respHTML)));
     Console.WriteLine(link.url);
 }
Example #18
0
        /// <summary>
        /// Get Presence information per user.
        /// </summary>
        private async void AsyncPresence()
        {
            var client = new HttpClient();

            var uri = new Uri(string.Format(Configurations.PresenceUrl, Configurations.ApiKey, _currentMember.id));
            var response = await client.GetAsync(uri);
            var statusCode = response.StatusCode;
            switch (statusCode)
            {
                // TODO: Error handling for invalid htpp responses.
            }
            response.EnsureSuccessStatusCode();
            var theResponse = await response.Content.ReadAsStringAsync();
            using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(theResponse)))
            {
                var serializer = new DataContractJsonSerializer(typeof(PresenceRoot));
                var presenceObject = serializer.ReadObject(ms) as PresenceRoot;
                // This will allow the application to toggle the presence indicator color.    
                if (presenceObject != null && presenceObject.ok && presenceObject.IsActive())
                {
                    await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
                    {
                        StatusIndicator.Fill = new SolidColorBrush(Color.FromArgb(255, 127, 153, 71));
                    });
                }
                // TODO: Add more code for bad replies or invalid requests.
            }
        }
Example #19
0
    private void LoadFile(string path)
    {
        ProTeGe.ProjectSaveInfo saveInfo;
        byte[] bytes;

        try{
            bytes = File.ReadAllBytes(path);
        } catch {
            labelError.text = "Could not open file:\n\n" + path;
            panelError.SetActive(true);
            return;
        }

        try{
            var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(ProTeGe.ProjectSaveInfo));
            saveInfo = (ProTeGe.ProjectSaveInfo)serializer.ReadObject(new MemoryStream(bytes));
        }
        catch {
            labelError.text = "File has wrong format:\n\n" + path;
            panelError.SetActive(true);
            return;
        }

        ProTeGe.ProjectManager.Load(saveInfo);

        Globals.instance.components.dialogManager.CloseDialog();
    }
Example #20
0
        public List<Ticket> GetTickets()
        {
            lock (lockObj)
            {
                IOrderedEnumerable<string> files = from file in Directory.GetFiles(PathInfo.Ticket)
                                                   where DateTime.Compare(DateTime.Now.AddSeconds(-10), new FileInfo(file).LastWriteTime) > 0
                                                   orderby file ascending
                                                   select file;

                List<Ticket> tickets = new List<Ticket>();
                foreach (string file in files)
                {
                    Ticket ticket = null;
                    using (FileStream stream = new FileStream(PathInfo.CombinePath(PathInfo.Ticket, file), FileMode.Open))
                    {
                        DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(Ticket));
                        ticket = (Ticket)serializer.ReadObject(stream);
                    }

                    if (ticket != null)
                    {
                        tickets.Add(ticket);
                    }
                }

                return tickets;
            }
        }
        public void CanRetrieveSimpleResourceDetails()
        {
            using (var host = new InMemoryHost(new SampleApi.Configuration()))
            {
                var request = new InMemoryRequest
                {
                    Uri = new Uri("http://localhost/api-docs/simple"),
                    HttpMethod = "GET",
                    Entity = {ContentType = MediaType.Json}
                };

                request.Entity.Headers["Accept"] = "application/json";

                var response = host.ProcessRequest(request);
                var statusCode = response.StatusCode;
                Assert.AreEqual(200, statusCode);

                Assert.IsTrue(response.Entity.ContentLength>0);

                response.Entity.Stream.Seek(0, SeekOrigin.Begin);

                var serializer = new DataContractJsonSerializer(typeof(ResourceDetails));
                var resourceDetails = (ResourceDetails) serializer.ReadObject(response.Entity.Stream);

                Assert.IsNotNull(resourceDetails);
            }
        }
        public static void load()
        {
            IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication();

            try
            {
                IsolatedStorageFileStream stream = store.OpenFile(storeFilename, FileMode.OpenOrCreate);
                if (null != stream)
                {
                    DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(FoundData));
                    App.found = (FoundData)ser.ReadObject(stream);
                    stream.Close();

                    if (null == App.found)
                    {   // First time app was run since installation
                        App.found = new FoundData();
                    }
                }
                loadUI();

            }
            catch (System.Exception) { };

            //           App.nearby.loadHosts();  Todo:  Remove?
        }
Example #23
0
        /// <summary>
        /// Загрузка из локального хранилища настроек в формате JSON
        /// </summary>
        public async void LoadSettingsAsync()
        {
            StorageFile settingsFile = null;
            bool isExists = true;

            try
            {
                settingsFile = await StorageFile.GetFileFromPathAsync(Constants.SettingsFile);
            }
            catch (FileNotFoundException)
            {
                isExists = false;
            }

            if (!isExists)
            {
                Settings = new SettingsVariables();
            }
            else
            {
                using (var fileStream = await settingsFile.OpenStreamForReadAsync())
                {
                    MemoryStream memoryStream = new MemoryStream();
                    await fileStream.CopyToAsync(memoryStream);
                    memoryStream.Position = 0;

                    DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(SettingsVariables));
                    Settings = (SettingsVariables)serializer.ReadObject(memoryStream);
                }
            }
        }
        public void MessageProcess(object objMessage)
        {
            status status = new status();
            Logger logger = new Logger();
            DataContractJsonSerializer json = new DataContractJsonSerializer(status.GetType());

            try
            {
                Message message = objMessage as Message;

                byte[] byteArray = Encoding.UTF8.GetBytes(message.Body.ToString());
                MemoryStream stream = new MemoryStream(byteArray);

                //TODO:  Check for multiple objects.
                status = json.ReadObject(stream) as status;

                Console.WriteLine(message.Body.ToString());

                //TODO: Store the status object
                DataStore.Add(status);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                logger.append(ex.Message, Logger.LogLevel.ERROR);
            }
        }
 public static GeocodeResponse MakeRequest(string addressNumber, string streetName, string cityName, string countryName)
 {
     string requestUrl = CreateGeocodeRequest(addressNumber, streetName, cityName, countryName);
     try
     {
         HttpWebRequest request = WebRequest.Create(requestUrl) as HttpWebRequest;
         using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
         {
             if (response.StatusCode != HttpStatusCode.OK)
                 throw new Exception(String.Format(
                 "Server error (HTTP {0}: {1}).",
                 response.StatusCode,
                 response.StatusDescription));
             DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(typeof(GeocodeResponse));
             object objResponse = jsonSerializer.ReadObject(response.GetResponseStream());
             GeocodeResponse jsonResponse
             = objResponse as GeocodeResponse;
             return jsonResponse;
         }
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
         return null;
     }
 }
 public async void Initialize()
 {
     SystemTray.Message = "読み込み中...";
     SystemTray.IsBusy = true;
     Content = "読み込み中...";
     HttpClient httpClient = new HttpClient();
     try
     {
         var uri = new Uri(Const.APIBase + "json/json");
         var resp = await httpClient.GetAsync(uri);
         var stream = await resp.Content.ReadAsStreamAsync();
         var serializer = new DataContractJsonSerializer(typeof(DemoJson));
         var result = (DemoJson)serializer.ReadObject(stream);
         stream.Dispose();
         Content = "Status.Code=" + result.Status.Code;
         foreach (var item in result.Result.Items)
         {
             Items.Add(item);
         }
     }
     catch (Exception e)
     {
         Content = e.ToString();
     }
     SystemTray.IsBusy = false;
 }
Example #27
0
		protected void Page_Load(object sender, EventArgs e) {
			this.RegisterAsyncTask(
				new PageAsyncTask(
					async ct => {
						IAuthorizationState authorization = await client.ProcessUserAuthorizationAsync(new HttpRequestWrapper(Request), ct);
						if (authorization == null) {
							// Kick off authorization request
							var request = await client.PrepareRequestUserAuthorizationAsync(cancellationToken: ct);
							await request.SendAsync();
							this.Context.Response.End();
						} else {
							string token = authorization.AccessToken;
							AzureADClaims claimsAD = client.ParseAccessToken(token);

							// Request to AD needs a {tenantid}/users/{userid}
							var request =
								WebRequest.Create("https://graph.windows.net/" + claimsAD.Tid + "/users/" + claimsAD.Oid + "?api-version=0.9");
							request.Headers = new WebHeaderCollection();
							request.Headers.Add("authorization", token);
							using (var response = request.GetResponse()) {
								using (var responseStream = response.GetResponseStream()) {
									var serializer = new DataContractJsonSerializer(typeof(AzureADGraph));
									AzureADGraph graphData = (AzureADGraph)serializer.ReadObject(responseStream);
									this.nameLabel.Text = HttpUtility.HtmlEncode(graphData.DisplayName);
								}
							}
						}
					}));
		}
Example #28
0
    /// <summary>
    /// 演示DataContractJsonSerializer的序列化和反序列化
    /// </summary>
    void ShowDataContractJsonSerializer()
    {
        var dataContractJsonSerializerObject = new API.DataContractJsonSerializerObject {
            ID = Guid.NewGuid(), Name = "DataContractJsonSerializer", Age = 28, Time = DateTime.Now
        };

        var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(API.DataContractJsonSerializerObject));

        // 序列化
        var ms = new MemoryStream();

        serializer.WriteObject(ms, dataContractJsonSerializerObject);

        ms.Position = 0;
        var sr  = new StreamReader(ms);
        var str = sr.ReadToEnd();

        txtDataContractJsonSerializer.Text = str;


        // 反序列化
        var buffer = System.Text.Encoding.UTF8.GetBytes(str);
        var ms2    = new MemoryStream(buffer);
        var dataContractJsonSerializerObject2 = serializer.ReadObject(ms2) as API.DataContractJsonSerializerObject;

        lblDataContractJsonSerializer.Text = dataContractJsonSerializerObject2.Name;
    }
Example #29
0
        public void handleReply(string json)
        {
            if (json == null)
            {
                Deployment.Current.Dispatcher.BeginInvoke(() =>
                {
                    progressBar1.IsIndeterminate = false;
                    MessageBox.Show("Unable to communicate with server.");
                });
                return;
            }
            DataContractJsonSerializer dcjs = new DataContractJsonSerializer(typeof(StudentResponse));
            student = dcjs.ReadObject(new MemoryStream(Encoding.Unicode.GetBytes(json))) as StudentResponse;
            Deployment.Current.Dispatcher.BeginInvoke(() =>
            {
                this.tStudentName.Text = student.nome;

                StudentProfileModel.Items[0].LineTwo = student.codigo;
                StudentProfileModel.Items[1].LineTwo = student.email;
                StudentProfileModel.Items[2].LineTwo = student.email_alternativo;
                StudentProfileModel.Items[3].LineTwo = student.curso_nome;
                StudentProfileModel.Items[4].LineTwo = student.estado;
                StudentProfileModel.Items[5].LineTwo = student.ano_curricular.ToString();

                TiltEffect.SetIsTiltEnabled(lbItems.ItemContainerGenerator.ContainerFromIndex(1), true);
                TiltEffect.SetIsTiltEnabled(lbItems.ItemContainerGenerator.ContainerFromIndex(2), true);

                if (student.email_alternativo == null)
                    StudentProfileModel.Items.RemoveAt(2);

                this.lbItems.SelectionChanged += new SelectionChangedEventHandler(sendEmailHandler);

                progressBar1.IsIndeterminate = false;
            });
        }
Example #30
0
        static void Main(string[] args)
        {
            //DesktopUtil.Instance.GetChangedImages();
            WebDesktopTCPServer server = new WebDesktopTCPServer();
            server.Listen();
            long now = System.DateTime.Now.Ticks / 10000;
            while (true)
            {
                now = System.DateTime.Now.Ticks / 10000;
                WebDesktopTCPClient CLIENT = new WebDesktopTCPClient("andy-PC", 3390, 3391);
                string base64String = CLIENT.GetSliceImages();

                MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(base64String));
                DataContractJsonSerializer ser =
                  new DataContractJsonSerializer(typeof(DesktopSnapshotList));
                DesktopSnapshotList ss = ser.ReadObject(ms) as DesktopSnapshotList;
               // Console.WriteLine((System.DateTime.Now.Ticks / 10000 - now) + "ms");
                for (int i = 0; i < ss.Count; i++)
                {
                   // Console.WriteLine(ss[i].Width + "  and " + ss[i].Height);
                }
               // Console.WriteLine(ss.Count);

                Thread.Sleep(2000);
            }
        }
 static void GetAccountInfo()
 {
     string respHTML = Util.HttpGet("https://api.dropboxapi.com/1/account/info", token);
     DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Person));
     Person personinfo = (Person)ser.ReadObject(new MemoryStream(Encoding.ASCII.GetBytes(respHTML)));
     Console.WriteLine(personinfo.display_name + " " + personinfo.email + " " + personinfo.quota_info.normal + "/" + personinfo.quota_info.quota);
 }
        void HandleResponse(IAsyncResult ar)
        {
            try
            {
                WebResponse response = ((HttpWebRequest)ar.AsyncState).EndGetResponse(ar);


                var serializer = new DataContractJsonSerializer(typeof(respuesta));

                var resp = (respuesta)serializer.ReadObject(response.GetResponseStream());

                Dispatcher.BeginInvoke(() =>
                {

                    this.DataContext = resp;
                    PhoneApplicationService.Current.State["respuesta"] = resp;

                });
            }
            catch (Exception ex)
            {
                Dispatcher.BeginInvoke(() => {
                    MessageBox.Show("Tuvimos problema accediendo al internet (" + uri + "), favor verificar.");
                    NavigationService.GoBack();
                });
                
            }
            
        }
Example #33
0
        public ConDepConfig GetEnvConfig(Stream stream)
        {
            ConDepConfig config;
            using(var memStream = GetMemoryStreamWithCorrectEncoding(stream))
            {
                var serializer = new DataContractJsonSerializer(typeof(ConDepConfig));
                config = (ConDepConfig)serializer.ReadObject(memStream);
            }

            if(config.Tiers == null)
            {
                foreach (var server in config.Servers)
                {
                    if (!server.DeploymentUser.IsDefined)
                    {
                        server.DeploymentUser = config.DeploymentUser;
                    }
                }
            }
            else
            {
                foreach(var tier in config.Tiers)
                {
                    foreach (var server in tier.Servers)
                    {
                        if (!server.DeploymentUser.IsDefined)
                        {
                            server.DeploymentUser = config.DeploymentUser;
                        }
                    }
                }
            }
            return config;
        }
Example #34
0
    public static T DeSerialize <T>(string json)
    {
        T obj = Activator.CreateInstance <T>();

        using (MemoryStream ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(json))) {
            System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(obj.GetType());
            return((T)serializer.ReadObject(ms));
        }
    }
    public void LoadJsonData()
    {
        string Jsonstring = "";

#if !UNITY_EDITOR
        Task.Run(async() =>
        {
            UnityEngine.WSA.Application.InvokeOnAppThread(() =>
            {
                m_debugLogManager.DebugLogTextWrite("MyDebug:*****************1");
            }, false);

            var file = await KnownFolders.DocumentsLibrary.GetFileAsync("City.txt");

            UnityEngine.WSA.Application.InvokeOnAppThread(() =>
            {
                m_debugLogManager.DebugLogTextWrite("MyDebug:*****************2");
            }, false);

            Jsonstring = await FileIO.ReadTextAsync(file);

            using (var stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(Jsonstring)))
            {
                var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(Prefecture));
                // クラスにデータを読み込む
                prefecture = serializer.ReadObject(stream) as Prefecture;
            }

            UnityEngine.WSA.Application.InvokeOnAppThread(() =>
            {
                m_debugLogManager.DebugLogTextWrite("MyDebug:*****************3");

                //prefecture = JsonUtility.FromJson<Prefecture>(Jsonstring);

                m_debugLogManager.DebugLogTextWrite("MyDebug:*****************4");
                m_debugLogManager.DebugLogTextWrite("MyDebug:" + prefecture.Cities.Count);
                m_debugLogManager.DebugLogTextWrite("MyDebug:" + prefecture.Cities[0].Name);
                m_debugLogManager.DebugLogTextWrite(Jsonstring);
            }, false);
        });
#else
        var textAsset = Resources.Load("City") as TextAsset;
        Jsonstring = textAsset.text;
        using (var stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(Jsonstring)))
        {
            var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(Prefecture));
            // クラスにデータを読み込む
            prefecture = serializer.ReadObject(stream) as Prefecture;
        }
        //prefecture = JsonUtility.FromJson<Prefecture>(Jsonstring);

        m_debugLogManager.DebugLogTextWrite("MyDebug:" + prefecture.Cities.Count);
        m_debugLogManager.DebugLogTextWrite("MyDebug:" + prefecture.Cities[0].Name);
        m_debugLogManager.DebugLogTextWrite(Jsonstring);
#endif
    }
Example #36
0
        public static object Deserialize(Stream streamObject, Type serializedObjectType)
        {
            if ((serializedObjectType == null) || (streamObject == null))
            {
                return(null);
            }
            System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(serializedObjectType);

            return(serializer.ReadObject(streamObject));
        }
Example #37
0
        /*public static bool DeserializeJson<T>(string json, ref T t)
         * {
         *  using (var memoryStream = new MemoryStream())
         *  {
         *      byte[] jsonBytes = Encoding.UTF8.GetBytes(json);
         *      memoryStream.Write(jsonBytes, 0, jsonBytes.Length);
         *      memoryStream.Seek(0, SeekOrigin.Begin);
         *      using (var jsonReader = JsonReaderWriterFactory.CreateJsonReader(memoryStream, Encoding.UTF8, XmlDictionaryReaderQuotas.Max, null))
         *      {
         *          var serializer = new DataContractJsonSerializer(typeof(T));
         *          try
         *          {
         *              t = (T)serializer.ReadObject(jsonReader);
         *          }
         *          catch
         *          {
         *              return false;
         *          }
         *      }
         *  }
         *  return true;
         * }*/
        static public T DeserializeJson <T>(string json)
        {
            var instance = Activator.CreateInstance <T>();

            using (var ms = new System.IO.MemoryStream(Encoding.Unicode.GetBytes(json)))
            {
                var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(instance.GetType());
                return((T)serializer.ReadObject(ms));
            }
        }
Example #38
0
        public static T Deserialize <T>(string json)
        {
            T            obj = Activator.CreateInstance <T>();
            MemoryStream ms  = new MemoryStream(Encoding.Unicode.GetBytes(json));

            System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(obj.GetType());
            obj = (T)serializer.ReadObject(ms);
            ms.Close();
            ms.Dispose();
            return(obj);
        }
        public T Deserialize <T>(string source, Encoding encoding)
        {
            byte[] bytes = encoding.GetBytes(source);
            XmlDictionaryReader jsonReader = JsonReaderWriterFactory.CreateJsonReader(bytes,
                                                                                      XmlDictionaryReaderQuotas.Max);
            var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
            var graph      = (T)serializer.ReadObject(jsonReader);

            jsonReader.Close();
            return(graph);
        }
        public void ReadExternal(IDataInput input)
        {
            string json = input.ReadUTF();
            DataContractJsonSerializer serialiser = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(BroadcastNotification));

            Stream stream = new MemoryStream(ASCIIEncoding.Default.GetBytes(json));

            BroadcastNotification notification = (BroadcastNotification)serialiser.ReadObject(stream);

            broadcastMessages = notification.broadcastMessages;
        }
Example #41
0
        /// <summary>
        /// Function to deserialize JSON string using DataContractJsonSerializer
        /// </summary>
        /// <typeparam name="RemoteContextType">RemoteContextType Generic Type</typeparam>
        /// <param name="jsonString">string jsonString</param>
        /// <returns>Generic RemoteContextType object</returns>
        public static RemoteContextType DeserializeJsonString <RemoteContextType>(string jsonString)
        {
            //create an instance of generic type object
            RemoteContextType obj = Activator.CreateInstance <RemoteContextType>();
            MemoryStream      ms  = new MemoryStream(Encoding.Unicode.GetBytes(jsonString));

            System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(obj.GetType());
            obj = (RemoteContextType)serializer.ReadObject(ms);
            ms.Close();
            return(obj);
        }
Example #42
0
 /// <summary>
 /// Json转List<T>
 /// </summary>
 /// <param name="json"></param>
 /// <param name="t"></param>
 /// <returns></returns>
 public static Object Json2Obj(String json, Type t)
 {
     try {
         System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(t);
         using (MemoryStream ms = new MemoryStream(Encoding.ASCII.GetBytes(json))) {
             return(serializer.ReadObject(ms));
         }
     } catch {
         return(null);
     }
 }
Example #43
0
        /// <summary>
        /// JSON格式字符转换为T类型的对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="jsonStr"></param>
        /// <returns></returns>
        public static T ParseFormByJson <T>(string jsonStr)
        {
            T obj = Activator.CreateInstance <T>();

            using (System.IO.MemoryStream ms =
                       new System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes(jsonStr)))
            {
                System.Runtime.Serialization.Json.DataContractJsonSerializer serializer =
                    new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
                return((T)serializer.ReadObject(ms));
            }
        }
Example #44
0
 /// <summary>Deserializes the JSON string as a specified object</summary>
 /// <typeparam name="T">Specified type of target object</typeparam>
 /// <param name="jsonString">JSON string source</param>
 /// <returns>Object of specied type</returns>
 public static T Deserialize <T>(string jsonString)
 {
     using (System.IO.MemoryStream _Stream = new System.IO.MemoryStream(Encoding.Unicode.GetBytes(jsonString)))
     {
         try
         {
             var _Serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
             return((T)_Serializer.ReadObject(_Stream));
         }
         catch (Exception) { throw; }
     }
 }
Example #45
0
    public string MicrosoftTranslate(string input)
    {
        string clientID               = "translatedhruba_123";
        string clientSecret           = "sJnnJgpG12Rysf7KxjeBpY5ulaCKSdaJYot7adFzXWY=";
        String strTranslatorAccessURI =
            "https://datamarket.accesscontrol.windows.net/v2/OAuth2-13";
        String strRequestDetails =
            string.Format("grant_type=client_credentials&client_id={0}&client_secret={1} &scope=http://api.microsofttranslator.com", HttpUtility.UrlEncode(clientID),
                          HttpUtility.UrlEncode(clientSecret));

        System.Net.WebRequest webRequest = System.Net.WebRequest.Create(strTranslatorAccessURI);
        webRequest.ContentType = "application/x-www-form-urlencoded";
        webRequest.Method      = "POST";
        byte[] bytes = System.Text.Encoding.ASCII.GetBytes(strRequestDetails);
        webRequest.ContentLength = bytes.Length;

        string translatedtext = "";

        try
        {
            using (System.IO.Stream outputStream = webRequest.GetRequestStream())
            {
                outputStream.Write(bytes, 0, bytes.Length);
            }
            System.Net.WebResponse webResponse = webRequest.GetResponse();
            System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new
                                                                                      System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(AdmAccessToken));

            AdmAccessToken token =
                (AdmAccessToken)serializer.ReadObject(webResponse.GetResponseStream());
            string headerValue = "Bearer " + token.access_token;

            string txtToTranslate = input;
            string uri            = "http://api.microsofttranslator.com/v2/Http.svc/Translate?text=" +
                                    System.Web.HttpUtility.UrlEncode(txtToTranslate) + "&from=no&to=en";
            System.Net.WebRequest translationWebRequest = System.Net.WebRequest.Create(uri);
            translationWebRequest.Headers.Add("Authorization", headerValue);
            System.Net.WebResponse response = null;
            response = translationWebRequest.GetResponse();
            System.IO.Stream     stream = response.GetResponseStream();
            System.Text.Encoding encode = System.Text.Encoding.GetEncoding("utf-8");

            System.IO.StreamReader translatedStream = new System.IO.StreamReader(stream, encode);
            System.Xml.XmlDocument xTranslation     = new System.Xml.XmlDocument();
            xTranslation.LoadXml(translatedStream.ReadToEnd());
            translatedtext = xTranslation.InnerText;
        }
        catch (Exception ex)
        {
            ExceptionHandling.errorMessage = ex.ToString();
        }
        return(translatedtext);
    }
Example #46
0
 public void LoginResult(string responseStr)
 {
     //多网络
     if (responseStr.IndexOf("CompanyName") > 0)
     {
         MemoryStream ms           = new MemoryStream(Encoding.UTF8.GetBytes(responseStr));
         var          deserializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(System.Collections.Generic.List <UserInfo>));
         //反序列化本地文件为List集合
         var list = (System.Collections.Generic.List <UserInfo>)deserializer.ReadObject(ms);
         ms.Close();
         ms.Dispose();
         //前台
         Dispatcher.BeginInvoke(() =>
         {
             netsImtes.ItemsSource   = list;
             manyProject.Visibility  = Visibility.Visible;
             loginAnimate.Visibility = Visibility.Collapsed;
         });
     }
     else
     {
         UserInfo     login             = new UserInfo();
         MemoryStream ms                = new MemoryStream(Encoding.UTF8.GetBytes(responseStr));
         DataContractJsonSerializer ser = new DataContractJsonSerializer(login.GetType());
         login             = ser.ReadObject(ms) as UserInfo;
         login.CompanyName = companyName;
         UserDataManager.SaveUserInformation(login);
         ms.Close();
         ms.Dispose();
         if (login.type == 1 || login.type == 7 || login.type == 8)
         {
             Dispatcher.BeginInvoke(() =>
             {
                 MessageBox.Show(login.error);
                 //if (login.type==7)
                 //{
                 //    LoginViewModel.GetChkCode((x) => {
                 //    });
                 //    Uri uri = new Uri("https://api.mingdao.com/code.aspx?0.7088238715659827", UriKind.Absolute);
                 //    vImg.Source = new BitmapImage(uri);
                 //    vBox.Visibility = Visibility.Visible;
                 //}
                 loginAnimate.Visibility = Visibility.Collapsed;
             });
         }
         else
         {
             int    codeindex = login.url.IndexOf("code") + 5;
             string code      = login.url.Substring(codeindex);
             LoginViewModel.GetUserToken(code, GetUserTokenResult);
         }
     }
 }
 public static object Deserialize(Stream s, Type type)
 {
     if (s == null || type == null || type == null)
     {
         throw new ArgumentNullException();
     }
     if (!s.CanRead)
     {
         throw new ArgumentException();
     }
     R.DataContractJsonSerializer serializer = new R.DataContractJsonSerializer(type);
     return(serializer.ReadObject(s));
 }
Example #48
0
 /// <summary>
 /// JSON反序列化
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="source"></param>
 /// <returns></returns>
 public static T Parse <T>(string source)
 {
     if (!string.IsNullOrWhiteSpace(source))
     {
         using (var ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(source)))
         {
             var ser = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
             var obj = ser.ReadObject(ms);
             return((T)obj);
         }
     }
     return(default(T));
 }
Example #49
0
    public static T Deserialize <T>(string json)
    {
        var memoryStream = new MemoryStream(Encoding.UTF8.GetBytes(json));

        memoryStream.Position = 0;

        var serializer       = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
        var serializedObject = (T)serializer.ReadObject(memoryStream);

        memoryStream.Dispose();

        return(serializedObject);
    }
Example #50
0
 /// <summary>
 /// JSON反序列化
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="source"></param>
 /// <returns></returns>
 public static object Parse(Type t, string source)
 {
     if (!string.IsNullOrWhiteSpace(source))
     {
         using (var ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(source)))
         {
             var ser = new System.Runtime.Serialization.Json.DataContractJsonSerializer(t);
             var obj = ser.ReadObject(ms);
             return(obj);
         }
     }
     return(null);
 }
Example #51
0
        static int Main(string[] args)
        {
            if (args.Length == 0)
            {
                Console.Write("Missing api list input");
                return(1);
            }
            var output = args[0];
            var fi     = new FileInfo(output);

            if (!fi.Exists)
            {
                Console.Write("File not found: " + output);
                return(2);
            }

            var settings = new DataContractJsonSerializerSettings();

            settings.UseSimpleDictionaryFormat = true;
            var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(AppliesToDataModel), settings);
            var list       = (AppliesToDataModel)serializer.ReadObject(File.OpenRead(fi.FullName));

            var result  = BuildApiList(list, fi.Directory.FullName);
            var outfile = new FileInfo(Path.Combine(fi.Directory.FullName, list.Output));

            if (!outfile.Directory.Exists)
            {
                outfile.Directory.Create();
            }
            using (StreamWriter sw = new StreamWriter(outfile.FullName))
            {
                foreach (var item in result.Values)
                {
                    sw.WriteLine("---");
                    sw.WriteLine($"uid: {item.Id}");
                    sw.WriteLine($"appliesTo:");
                    foreach (var p in item.AppliesTo.GroupBy(p => p.Platform))
                    {
                        sw.WriteLine($"  - platform: {p.Key}");
                        if (p.Where(t => !string.IsNullOrEmpty(t.Version)).Any())
                        {
                            sw.WriteLine($"    versions: {string.Join(", ", p.Select(t => t.Version))}");
                        }
                    }
                    sw.WriteLine("---");
                }
            }
            return(0);
        }
Example #52
0
        public Optionizer()
        {
            SharedOptionizer = this;

            saveDirectory = $"{AppDomain.CurrentDomain.BaseDirectory}\\Degra.config.json";
            if (File.Exists(saveDirectory))
            {
                using (Stream stream = File.Open(saveDirectory, FileMode.Open))
                {
                    if (stream.Length != 0)
                    {
                        Options = serializer.ReadObject(stream) as T;
                    }
                }
            }
            else
            {
                Options = Activator.CreateInstance <T>();
            }
        }
Example #53
0
        public Optionizer(string ownAuthor, string ownTitle)
        {
            SharedOptionizer = this;

            _ownAuthor = ownAuthor;
            _ownTitle  = ownTitle;

            if (File.Exists($"{AppDomain.CurrentDomain.BaseDirectory}\\{ownTitle}.config.json"))
            {
                using (Stream stream = File.Open($"{AppDomain.CurrentDomain.BaseDirectory}\\{ownTitle}.config.json", FileMode.Open))
                {
                    if (stream.Length != 0)
                    {
                        Options = serializer.ReadObject(stream) as T;
                    }
                }
            }
            else
            {
                Options = Activator.CreateInstance <T> ();
            }
        }
Example #54
0
        /// <summary>
        /// Json形式の文字列からC#で扱うデータに変換する
        /// </summary>
        /// <typeparam name="T">内部データ型</typeparam>
        /// <param name="jsontext">Json形式文字列</param>
        /// <returns>デシリアライズした内部データ型のコレクション</returns>
        public static T ToData <T>(string jsontext) where T : IJsonData
        {
            try
            {
                byte[]       contents = System.Text.Encoding.UTF8.GetBytes(jsontext);
                MemoryStream strm     = new MemoryStream();
                strm.Write(contents, 0, contents.Length);
                System.Runtime.Serialization.Json.DataContractJsonSerializer ser = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));

                strm.Position = 0;
                T p2 = (T)ser.ReadObject(strm);

                return(p2);
            }
            catch (Exception ex)
            {
                throw new WebAPIFormatException(string.Format("{0}にデシリアライズ化できません。", typeof(T)), ex);
            }
            finally
            {
            }
        }
Example #55
0
        public Pacote(byte[] msg)
        {
            users = new List <Amigo>();

            JSON ser = new JSON(typeof(Pacote));

            using (var ms = new MemoryStream(msg))
            {
                Pacote novo = (Pacote)ser.ReadObject(ms);

                if (novo.action.ToLower() == "KEEPALIVE")
                {
                    this.action = "";
                }

                this.action   = novo.action.ToLower();
                this.content  = novo.content;
                this.message  = novo.message;
                this.nickname = novo.nickname;
                this.target   = novo.target;
                this.users    = novo.users;
            }
        }
Example #56
0
        public static void Download(DocProject project, System.ComponentModel.BackgroundWorker worker, string baseurl, string username, string password)
        {
            if (project.Sections[4].Schemas.Count == 0)
            {
                project.Sections[4].Schemas.Add(new DocSchema());
            }

            string url = baseurl + "api/4.0/session/login?email=" + HttpUtility.UrlEncode(username) + "&password="******"POST";
            request.ContentLength = 0;
            request.ContentType   = "application/x-www-form-urlencoded";
            request.Accept        = "application/json";
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

            System.IO.Stream       stream = response.GetResponseStream();
            System.IO.StreamReader reader = new System.IO.StreamReader(stream);
            string body = reader.ReadToEnd();

            string cookie = response.Headers.Get("Set-Cookie");

            string[] parts     = cookie.Split(new char[] { ';', ',' }); // bug? comma separates session ID
            string   match     = "peregrineapisessionid=";
            string   sessionid = null;

            foreach (string part in parts)
            {
                if (part.StartsWith(match))
                {
                    sessionid = part.Substring(match.Length);
                    break;
                }
            }

            /*-Get all users:
             * var client = new RestClient("http://test.bsdd.buildingsmart.org/api/4.0/IfdUser/");
             * var request = new RestRequest(Method.GET);
             * request.AddHeader("cookie", "peregrineapisessionid=thesessionid");
             * request.AddHeader("accept", "application/json");
             * request.AddHeader("content-type", "application/x-www-form-urlencoded; charset=UTF-8");
             * IRestResponse response = client.Execute(request);*/

            /*- Get all languages:
             * var client = new RestClient("http://test.bsdd.buildingsmart.org/api/4.0/IfdLanguage/");
             * var request = new RestRequest(Method.GET);
             * request.AddHeader("cookie", "peregrineapisessionid={{sessionId}}");
             * request.AddHeader("accept", "application/json");
             * request.AddHeader("content-type", "application/x-www-form-urlencoded; charset=UTF-8");
             * IRestResponse response = client.Execute(request);*/
            request               = (HttpWebRequest)HttpWebRequest.Create(baseurl + "api/4.0/IfdLanguage/");
            request.Method        = "GET";
            request.ContentLength = 0;
            request.ContentType   = "application/x-www-form-urlencoded; charset=UTF-8";
            request.Headers.Add("cookie", "peregrineapisessionid=" + sessionid);
            request.Accept = "application/json";
            response       = (HttpWebResponse)request.GetResponse();

            stream = response.GetResponseStream();
            reader = new System.IO.StreamReader(stream);
            body   = reader.ReadToEnd();

            body.ToString();

            request               = (HttpWebRequest)HttpWebRequest.Create(baseurl + "api/4.0/IfdConcept/search/filter/language/1ASQw0qJqHuO00025QrE$V/type/NEST/Pset_*");
            request.Method        = "GET";
            request.ContentLength = 0;
            request.ContentType   = "application/x-www-form-urlencoded; charset=UTF-8";
            request.Headers.Add("cookie", "peregrineapisessionid=" + sessionid);
            request.Accept = "application/json";
            response       = (HttpWebResponse)request.GetResponse();

            stream = response.GetResponseStream();
            reader = new System.IO.StreamReader(stream);
            body   = reader.ReadToEnd();

            System.IO.Stream       ms     = new System.IO.MemoryStream();
            System.IO.StreamWriter writer = new System.IO.StreamWriter(ms);
            writer.Write(body);
            writer.Flush();
            ms.Position = 0;
            //System.IO.MemoryStream mstream = new System.IO.MemoryStream()

            ResponseSearch ifdRoot;

            try
            {
                DataContractJsonSerializerSettings settings = new DataContractJsonSerializerSettings();
                //settings.UseSimpleDictionaryFormat = true;
                System.Runtime.Serialization.Json.DataContractJsonSerializer ser = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(ResponseSearch));
                ifdRoot = (ResponseSearch)ser.ReadObject(ms);
            }
            catch
            {
                return;
            }

            // PERF: consider API on server that would return all information at once (currently 150+ round trips)
            for (int iConc = 0; iConc < ifdRoot.IfdConcept.Length; iConc++)
            {
                IfdConcept concept = ifdRoot.IfdConcept[iConc];
                worker.ReportProgress((int)(100.0 * (double)iConc / (double)ifdRoot.IfdConcept.Length));

                // api/4.0/IfdPSet/{guid}/ifcVersion/{ifcVersion}/XML

#if true                                   //figure out version info // language code starting at 5th character then lowercase -- e.g. "IFC-2X4" -> "2x4"
                string ifcversion = "2x4"; // "IFC4";// "ifc-2X4"; //???? what should this be ???? -- code "ifc-2X4" appears in headers; "IFC-2x4" appears in UI; "IFC4" is official schema name
                request               = (HttpWebRequest)HttpWebRequest.Create(baseurl + "api/4.0/IfdPSet/" + concept.guid + "/ifcVersion/" + ifcversion + "/XML");
                request.Method        = "GET";
                request.ContentLength = 0;
                request.ContentType   = "application/x-www-form-urlencoded; charset=UTF-8";
                request.Headers.Add("cookie", "peregrineapisessionid=" + sessionid);
                request.Accept = "application/xml";
#endif
#if false // worked April 1, but no longer works as of 2017-06-13 (http body returns "null" -- as in 4 character string) -- issue with test server -- CoBuilder merge wiped out content??
                request               = (HttpWebRequest)HttpWebRequest.Create(baseurl + "api/4.0/IfdConcept/" + concept.guid + "/children");
                request.Method        = "GET";
                request.ContentLength = 0;
                request.ContentType   = "application/x-www-form-urlencoded; charset=UTF-8";
                request.Headers.Add("cookie", "peregrineapisessionid=" + sessionid);
                request.Accept = "application/json";
                //request.Accept = "application/xml";
#endif
                try
                {
                    response = (HttpWebResponse)request.GetResponse();

                    stream = response.GetResponseStream();


                    reader = new System.IO.StreamReader(stream);
                    body   = reader.ReadToEnd();
                    if (body != null && body != "null") // !!!!
                    {
                        ms     = new MemoryStream();
                        writer = new StreamWriter(ms, Encoding.Unicode);
                        writer.Write(body);
                        writer.Flush();
                        ms.Position = 0;

                        try
                        {
                            using (FormatXML format = new FormatXML(ms, typeof(PropertySetDef), null, null))
                            {
                                format.Load();
                                PropertySetDef psd = (PropertySetDef)format.Instance;
                                Program.ImportPsd(psd, project);
                            }
                        }
                        catch
                        {
                            System.Diagnostics.Debug.WriteLine("Error downloading property set: " + concept.guid.ToString());
                        }


#if false
                        ResponsePset ifdResponse;
                        DataContractJsonSerializerSettings settings = new DataContractJsonSerializerSettings();
                        //settings.UseSimpleDictionaryFormat = true;
                        System.Runtime.Serialization.Json.DataContractJsonSerializer ser = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(ResponsePset));

                        try
                        {
                            System.IO.Stream       xs      = new System.IO.MemoryStream();
                            System.IO.StreamWriter xwriter = new System.IO.StreamWriter(xs);
                            xwriter.Write(body);
                            xwriter.Flush();
                            xs.Position = 0;

                            ifdResponse = (ResponsePset)ser.ReadObject(xs);

                            ifdResponse.ToString();


                            DocPropertySet docPset = new DocPropertySet();
                            docPset.Uuid = new Guid();// concept.guid;
                            foreach (IfdName ifdName in concept.fullNames)
                            {
                                // if english
                                if (ifdName.languageFamily == "IFC")
                                {
                                    docPset.Name = ifdName.name;
                                }
                                else
                                {
                                    DocLocalization docLoc = new DocLocalization();
                                    docLoc.Locale = ifdName.language.languageCode;
                                    docLoc.Name   = ifdName.name;
                                    docPset.Localization.Add(docLoc);
                                }
                            }
                            docPset.Documentation = concept.definitions.description;
                            project.Sections[4].Schemas[0].PropertySets.Add(docPset);

                            foreach (IfdConceptInRelationship ifdProp in ifdResponse.IfdConceptInRelationship)
                            {
                                //ifdProp.fullNames[0].
                                DocProperty docProp = new DocProperty();
                                if (ifdProp.definitions != null)
                                {
                                    docProp.Documentation = ifdProp.definitions.description;
                                }
                                docPset.Properties.Add(docProp);

                                foreach (IfdName ifdName in ifdProp.fullNames)
                                {
                                    // if english
                                    if (ifdName.languageFamily == "IFC")
                                    {
                                        //docProp.Name = ifdName.name;
                                        string[] nameparts = ifdName.name.Split('.');
                                        if (nameparts.Length == 2)
                                        {
                                            docPset.Name = nameparts[0];
                                            docProp.Name = nameparts[1];
                                        }
                                    }
                                    else
                                    {
                                        DocLocalization docLoc = new DocLocalization();
                                        docLoc.Locale = ifdName.language.languageCode;
                                        docLoc.Name   = ifdName.name;
                                        docProp.Localization.Add(docLoc);
                                    }
                                }
                            }
                        }
#endif
                    }
                }
                catch
                {
                    //...
                    return;
                }
            }
        }
        /// <summary>
        /// 处理数据返回.
        /// </summary>
        /// <param name="response"></param>
        private void HandleEx(RestResponse response)
        {
            try
            {
                if (response.StatusCode == HttpStatusCode.RequestTimeout ||
                    response.StatusCode == HttpStatusCode.GatewayTimeout)
                {
                    mSdkResponse.errCode = SdkErrCode.TIMEOUT;
                    mSdkResponse.content = Constants.SdkMsg.ConnectTimeOut;
                }
                //未知异常(自定义)
                else if (response.StatusCode != HttpStatusCode.OK || null != response.ErrorException)
                {
                    bool isUserCanceled = false;
                    mSdkResponse.errCode = SdkErrCode.NET_UNUSUAL;
                    mSdkResponse.content = Constants.SdkMsg.NetException;

                    if (response.ErrorException is WebException)
                    {
                        WebException ex = response.ErrorException as WebException;
                        if (WebExceptionStatus.RequestCanceled == ex.Status)
                        {
                            mSdkResponse.errCode = SdkErrCode.USER_CANCEL;
                            mSdkResponse.content = Constants.SdkMsg.WebRequestCanceled;
                            isUserCanceled       = true;
                        }
                    }

                    if (!isUserCanceled)
                    {
                        try
                        {
                            ErrorRes resObject = null;
                            if (response.Request.Resource.Contains(".xml") || response.Request.Resource.Contains(".XML"))
                            {
                                // Note: 推荐json格式;
                            }
                            else
                            {
                                DataContractJsonSerializer ser = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(ErrorRes));
                                using (MemoryStream ms = new MemoryStream(UnicodeEncoding.UTF8.GetBytes(response.Content)))
                                {
                                    resObject = ser.ReadObject(ms) as ErrorRes;
                                }
                            }

                            if (null != resObject && resObject is ErrorRes)
                            {
                                mSdkResponse.errCode      = SdkErrCode.SERVER_ERR;
                                mSdkResponse.specificCode = resObject.ErrCode;
                                mSdkResponse.content      = resObject.ErrInfo;
                            }
                            else
                            {
                                throw new Exception();
                            }
                        }
                        catch//如果没有error_code这个节点...
                        {
                            //不是xml
                            //网络异常时统一错误:NET_UNUSUAL
                            if (response.StatusCode == HttpStatusCode.NotFound)
                            {
                                mSdkResponse.errCode = SdkErrCode.NET_UNUSUAL;
                                mSdkResponse.content = Constants.SdkMsg.NetException;
                            }
                            else
                            {
                                mSdkResponse.errCode      = SdkErrCode.SERVER_ERR;
                                mSdkResponse.specificCode = response.StatusCode.ToString();
                                mSdkResponse.content      = response.Content;
                            }
                        }
                    }
                }
                else
                {
                    mSdkResponse.content = response.Content;
                }
            }
            catch (Exception e)
            {
                mSdkResponse.errCode = SdkErrCode.SERVER_ERR;
                mSdkResponse.content = Constants.SdkMsg.ServerError;
            }
        }
Example #58
0
        /* --- Private methods --- */

        /**
         * The method calls the White Source service.
         */
        private R Service <R>(BaseRequest <R> request)
        {
            try
            {
                HttpWebRequest httpRequest = WebRequest.Create(serviceUrl) as HttpWebRequest;
                httpRequest.Method      = "POST";
                httpRequest.ContentType = "application/x-www-form-urlencoded";
                httpRequest.Accept      = "application/json";

                SetProxy(httpRequest);

                // add post data to request
                StringBuilder postString = new StringBuilder();
                postString.AppendFormat("{0}={1}", APIConstants.PARAM_REQUEST_TYPE, System.Web.HttpUtility.UrlEncode(request.Type.ToString()));
                postString.Append("&");
                postString.AppendFormat("{0}={1}", APIConstants.PARAM_AGENT, System.Web.HttpUtility.UrlEncode(request.Agent));
                postString.Append("&");
                postString.AppendFormat("{0}={1}", APIConstants.PARAM_AGENT_VERSION, System.Web.HttpUtility.UrlEncode(request.AgentVersion));
                postString.Append("&");
                postString.AppendFormat("{0}={1}", APIConstants.PARAM_TOKEN, System.Web.HttpUtility.UrlEncode(request.OrgToken));
                postString.Append("&");
                postString.AppendFormat("{0}={1}", APIConstants.PARAM_PRODUCT, System.Web.HttpUtility.UrlEncode(request.Product));
                postString.Append("&");
                postString.AppendFormat("{0}={1}", APIConstants.PARAM_PRODUCT_VERSION, System.Web.HttpUtility.UrlEncode(request.ProductVersion));
                postString.Append("&");
                postString.AppendFormat("{0}={1}", APIConstants.PARAM_TIME_STAMP, System.Web.HttpUtility.UrlEncode(request.TimeStamp.ToString()));

                // Serialize projects to JSON
                switch (request.Type)
                {
                case RequestType.UPDATE:
                    UpdateInventoryRequest updateRequest = (UpdateInventoryRequest)Convert.ChangeType(request, typeof(UpdateInventoryRequest));
                    AppendProjects(updateRequest.Projects, postString);
                    break;

                case RequestType.CHECK_POLICIES:
                    CheckPoliciesRequest checkPoliciesRequest = (CheckPoliciesRequest)Convert.ChangeType(request, typeof(CheckPoliciesRequest));
                    AppendProjects(checkPoliciesRequest.Projects, postString);
                    break;

                default:
                    throw new InvalidOperationException("Unsupported request type.");
                }

                ASCIIEncoding ascii     = new ASCIIEncoding();
                byte[]        postBytes = ascii.GetBytes(postString.ToString());
                httpRequest.ContentLength = postBytes.Length;

                Stream postStream = httpRequest.GetRequestStream();
                postStream.Write(postBytes, 0, postBytes.Length);
                postStream.Close();

                using (HttpWebResponse response = httpRequest.GetResponse() as HttpWebResponse)
                {
                    if (response.StatusCode != HttpStatusCode.OK)
                    {
                        throw new Exception(String.Format("Server error (HTTP {0}: {1}).", response.StatusCode, response.StatusDescription));
                    }

                    using (Stream stream = response.GetResponseStream())
                    {
                        StreamReader reader         = new StreamReader(stream, Encoding.UTF8);
                        String       responseString = reader.ReadToEnd();
                        Debug("response: " + responseString);

                        // convert response JSON to ResultEnvelope
                        ResultEnvelope resultEnvelope;
                        MemoryStream   responseMS = new MemoryStream(Encoding.Unicode.GetBytes(responseString));
                        System.Runtime.Serialization.Json.DataContractJsonSerializer responseSerializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(ResultEnvelope));
                        resultEnvelope = responseSerializer.ReadObject(responseMS) as ResultEnvelope;
                        responseMS.Close();

                        String data = resultEnvelope.Data;
                        Debug("Result data is: " + data);

                        // convert data JSON to result according to type
                        R            result;
                        MemoryStream dataMS = new MemoryStream(Encoding.Unicode.GetBytes(data));
                        switch (request.Type)
                        {
                        case RequestType.UPDATE:
                            System.Runtime.Serialization.Json.DataContractJsonSerializer updateSerializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(UpdateInventoryResult));
                            result = (R)Convert.ChangeType(updateSerializer.ReadObject(dataMS) as UpdateInventoryResult, typeof(R));
                            dataMS.Close();
                            break;

                        case RequestType.CHECK_POLICIES:
                            // enable Dictionary support
                            DataContractJsonSerializerSettings settings = new DataContractJsonSerializerSettings();
                            settings.UseSimpleDictionaryFormat = true;

                            System.Runtime.Serialization.Json.DataContractJsonSerializer checkPoliciesSerializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(CheckPoliciesResult), settings);
                            result = (R)Convert.ChangeType(checkPoliciesSerializer.ReadObject(dataMS) as CheckPoliciesResult, typeof(R));
                            dataMS.Close();
                            break;

                        default:
                            dataMS.Close();
                            throw new InvalidOperationException("Unsupported request type.");
                        }
                        dataMS.Close();

                        return(result);
                    }
                }
            }
            catch (Exception e)
            {
                Debug(e.Message);
                return(default(R));
            }
        }