| 
									
										
										
										
											2011-12-02 13:43:55 +00:00
										 |  |  | # Copyright 2010 Google Inc. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Licensed under the Apache License, Version 2.0 (the "License"); | 
					
						
							|  |  |  | # you may not use this file except in compliance with the License. | 
					
						
							|  |  |  | # You may obtain a copy of the License at | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | #      http://www.apache.org/licenses/LICENSE-2.0 | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Unless required by applicable law or agreed to in writing, software | 
					
						
							|  |  |  | # distributed under the License is distributed on an "AS IS" BASIS, | 
					
						
							|  |  |  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
					
						
							|  |  |  | # See the License for the specific language governing permissions and | 
					
						
							|  |  |  | # limitations under the License. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-05-04 22:43:33 +00:00
										 |  |  | module Google | 
					
						
							|  |  |  |   class APIClient | 
					
						
							|  |  |  |     module ENV | 
					
						
							| 
									
										
										
										
											2012-01-31 03:33:03 +00:00
										 |  |  |       OS_VERSION = begin | 
					
						
							|  |  |  |         if RUBY_PLATFORM =~ /mswin|win32|mingw|bccwin|cygwin/ | 
					
						
							|  |  |  |           # TODO(bobaman) | 
					
						
							|  |  |  |           # Confirm that all of these Windows environments actually have access | 
					
						
							|  |  |  |           # to the `ver` command. | 
					
						
							|  |  |  |           `ver`.sub(/\s*\[Version\s*/, '/').sub(']', '').strip | 
					
						
							|  |  |  |         elsif RUBY_PLATFORM =~ /darwin/i | 
					
						
							|  |  |  |           "Mac OS X/#{`sw_vers -productVersion`}" | 
					
						
							| 
									
										
										
										
											2012-03-13 18:41:58 +00:00
										 |  |  |         elsif RUBY_PLATFORM == 'java' | 
					
						
							|  |  |  |           # Get the information from java system properties to avoid spawning a | 
					
						
							|  |  |  |           # sub-process, which is not friendly in some contexts (web servers). | 
					
						
							|  |  |  |           require 'java' | 
					
						
							|  |  |  |           name = java.lang.System.getProperty('os.name') | 
					
						
							|  |  |  |           version = java.lang.System.getProperty('os.version') | 
					
						
							| 
									
										
										
										
											2012-03-14 16:11:19 +00:00
										 |  |  |           "#{name}/#{version}" | 
					
						
							| 
									
										
										
										
											2012-01-31 03:33:03 +00:00
										 |  |  |         else | 
					
						
							|  |  |  |           `uname -sr`.sub(' ', '/') | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       rescue Exception | 
					
						
							|  |  |  |         RUBY_PLATFORM | 
					
						
							| 
									
										
										
										
											2011-05-04 22:43:33 +00:00
										 |  |  |       end | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | end |