#NEWLINE# def get_instance( self , instance_id , **kwargs ) : #NEWLINE# #INDENT# 'Get details about a virtual server instance.\n\n        :param integer instance_id: the instance ID\n        :returns: A dictionary containing a large amount of information about\n                  the specified instance.\n\n        Example::\n\n            # Print out instance ID 12345.\n            vsi = mgr.get_instance(12345)\n            print vsi\n\n            # Print out only FQDN and primaryIP for instance 12345\n            object_mask = "mask[fullyQualifiedDomainName,primaryIpAddress]"\n            vsi = mgr.get_instance(12345, mask=mask)\n            print vsi\n\n        ' #NEWLINE# if ( 'mask' not in kwargs ) : #NEWLINE# #INDENT# items = [ 'id' , 'globalIdentifier' , 'fullyQualifiedDomainName' , 'hostname' , 'domain' , 'createDate' , 'modifyDate' , 'provisionDate' , 'notes' , 'dedicatedAccountHostOnlyFlag' , 'privateNetworkOnlyFlag' , 'primaryBackendIpAddress' , 'primaryIpAddress' , 'networkComponents[id, status, speed, maxSpeed, name,\n                                     macAddress, primaryIpAddress, port,\n                                     primarySubnet]' , 'lastKnownPowerState.name' , 'powerState' , 'status' , 'maxCpu' , 'maxMemory' , 'datacenter' , 'activeTransaction[id, transactionStatus[friendlyName,name]]' , 'lastOperatingSystemReload.id' , 'blockDevices' , 'blockDeviceTemplateGroup[id, name, globalIdentifier]' , 'postInstallScriptUri' , 'softwareComponents[\n                    passwords[username,password,notes],\n                    softwareLicense[softwareDescription[name]]]' , 'operatingSystem[passwords[username,password],\n                                   softwareLicense.softwareDescription[\n                                       manufacturer,name,version,\n                                       referenceCode]]' , 'hourlyBillingFlag' , 'userData' , 'billingItem.recurringFee' , 'tagReferences[id,tag[name,id]]' , 'networkVlans[id,vlanNumber,networkSpace]' , 'billingItem.orderItem.order.userRecord[username]' ] #NEWLINE# kwargs [ 'mask' ] = ( 'mask[%s]' % ',' . join ( kwargs ) ) #NEWLINE# #UNINDENT# return self . guest . getObject ( id = instance_id , ** kwargs )