public boolean SendData() throws IOException
	{
		DataOutputStream l_out 					= null;
		FileInputStream  l_in					= null;
		
		byte []l_buffer							= new byte[1024];
		int l_read								= 0;
		
		/*
		 * Check if filename and/or socket are not null
		 * Check if file size is not equal to 0
		 */
		if( 	( up_filename == null ) || 
				( up_socket == null ) 	|| 
				( up_fileSize == 0 ) 	)
			return false;
		
		/*
		 * Retrieve file read stream and network out stream.
		 */
		l_out = new DataOutputStream(up_socket.getOutputStream());
		l_in = new FileInputStream(up_filename);
		
		/*
		 * Reset size sent.
		 */
		up_sizeSent = 0;
		
		/*
		 * Reset progress, if it's enabled
		 */
		if(up_progress != null)
			up_progress.startProgress((Object) up_filename.getName(), (long) up_fileSize);
		
		/*
		 * Send bytes till end of file
		 */
		while( (l_read = l_in.read(l_buffer)) != -1 )
		{
			l_out.write(l_buffer,0,l_read);
			up_sizeSent += l_read;
			if(up_progress != null)
				up_progress.setProgress(up_sizeSent);
		}
		
		/*
		 * Close streams
		 */
		l_in.close();
		l_out.close();
		
		/*
		 * if size_sent is equal to file size, then upload was successfully terminated.
		 */
		return (up_sizeSent == up_fileSize );
	}