public int Write(byte[] data)
        {
            if (disposed)
            {
                throw new ObjectDisposedException(GetType().Name);
            }
            try
            {
                if (IsOpen() && data.Length > 0)
                {
                    GPSUploadData gpsData = new GPSUploadData();
                    gpsData.PathID          = pathInfo.ID;
                    gpsData.PathIDSpecified = true;
                    gpsData.PathPassword    = pathInfo.Password;
                    gpsData.Provider        = dataProvider;
                    gpsData.NMEASentence    = System.Text.Encoding.Default.GetString(data, 0, data.Length);

                    bool bRet          = false;
                    bool bRetSpecified = false;

                    serviceClient.UploadGPSData(gpsData, out bRet, out bRetSpecified);

                    if (bRet)
                    {
                        return(data.Length);
                    }
                }
            }
            catch (System.Exception)
            {
                // Don't exit if failed.
            }

            return(0);
        }
예제 #2
0
        public bool UploadGPSData(GPSUploadData data)
        {
            // Verify the path info. 
            if (null == data)
                return false;

            if (-1 == data.PathID)
                return false;
            // ToDo we need check the id and password.

            if (null == data.NMEASentence || null == data.Provider)
                return false;

            if (data.NMEASentence.Length == 0)
                return false;

            // Save the gps data.
            return mDataAccesser.AddGPSSentence(data.NMEASentence, data.Provider, data.PathID);
            //return true;
        }
        public int Write(byte[] data)
        {
            if (disposed)
            {
                throw new ObjectDisposedException(GetType().Name);
            }

            try
            {
                if (IsOpen() && data.Length > 0)
                {
                    GPSUploadData gpsData = new GPSUploadData();
                    gpsData.PathID       = pathInfo.ID;
                    gpsData.PathPassword = pathInfo.Password;
                    gpsData.Provider     = dataProvider;
                    gpsData.NMEASentence = System.Text.Encoding.Default.GetString(data, 0, data.Length);

                    bool ret = serviceClient.UploadGPSData(gpsData);

                    if (ret)
                    {
                        return(data.Length);
                    }
                    else
                    {
                        if (Error != null)
                        {
                            Error(this, "Failed to upload gps data.");
                        }
                    }
                }
            }
            catch (System.Exception e)
            {
                // Don't exit if failed.
            }

            return(0);
        }
        public int Write(byte[] data)
        {
            if (disposed)
                throw new ObjectDisposedException(GetType().Name);

            try
            {
                if (IsOpen() && data.Length > 0)
                {
                    GPSUploadData gpsData = new GPSUploadData();
                    gpsData.PathID = pathInfo.ID;
                    gpsData.PathPassword = pathInfo.Password;
                    gpsData.Provider = dataProvider;
                    gpsData.NMEASentence = System.Text.Encoding.Default.GetString(data, 0, data.Length);

                    bool ret = serviceClient.UploadGPSData(gpsData);

                    if (ret)
                        return data.Length;
                    else
                    {
                        if(Error != null)
                        {
                            Error(this, "Failed to upload gps data.");
                        }
                    }
                }
            }
            catch (System.Exception e)
            {
                // Don't exit if failed.       	
            }

            return 0;
        }