public Pi2Pins GetPinValues()
 {
     var serverInfo = new Pi2GpioServerInfo() { Port = Pi2GpioPorts.PinValuesPort };
     var task = GetPins(serverInfo);
     task.Wait();
     return task.Result;
 }
 public void Start()
 {
     var serverInfo = new Pi2GpioServerInfo() { Port = Pi2GpioPorts.PinUpdatePort };
     ListenForRequests(serverInfo);
 }
 public void ListenForRequests(Pi2GpioServerInfo request)
 {
     socketListener = new StreamSocketListener();
     socketListener.ConnectionReceived += HandleRestRequest;
     socketListener.BindServiceNameAsync(request.Port.ToString());
 }
 public async Task<Pi2Pins> GetPins(Pi2GpioServerInfo request)
 {
     return await Pi2GpioJson.GetJsonRequest<Pi2Pins>(request);
 }
 public void SetPin(Pi2Pin pin)
 {
     var serverInfo = new Pi2GpioServerInfo() { Port = Pi2GpioPorts.PinValuesPort };
     Pi2GpioJson.SetPin(serverInfo, pin);
 }