Python htmlentitydefs.name2codepoint 模块,get() 实例源码

我们从Python开源项目中,提取了以下48个代码示例,用于说明如何使用htmlentitydefs.name2codepoint.get()

项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def getChoice(choices, **opts):
  if Cmd.ArgumentsRemaining():
    choice = Cmd.Current().strip().lower()
    if choice:
      if choice in opts.get(CHOICE_ALIASES, []):
        choice = opts[CHOICE_ALIASES][choice]
      if choice not in choices:
        choice = choice.replace(u'_', u'').replace(u'-', u'')
        if choice in opts.get(CHOICE_ALIASES, []):
          choice = opts[CHOICE_ALIASES][choice]
      if choice in choices:
        Cmd.Advance()
        return choice if not opts.get(MAP_CHOICE, False) else choices[choice]
    if opts.get(DEFAULT_CHOICE, NO_DEFAULT) != NO_DEFAULT:
      return opts[DEFAULT_CHOICE]
    invalidChoiceExit(choices, False)
  elif opts.get(DEFAULT_CHOICE, NO_DEFAULT) != NO_DEFAULT:
    return opts[DEFAULT_CHOICE]
  missingChoiceExit(choices)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def buildGAPIObject(api):
  GM.Globals[GM.CURRENT_API_USER] = None
  _, httpObj, service, cred_family = getAPIversionHttpService(api)
  credentials = getClientCredentials(cred_family)
  try:
    API_Scopes = set(list(service._rootDesc[u'auth'][u'oauth2'][u'scopes']))
  except KeyError:
    API_Scopes = set(API.VAULT_SCOPES) if api == API.VAULT else set()
  GM.Globals[GM.CURRENT_API_SCOPES] = list(API_Scopes.intersection(credentials.scopes))
  if not GM.Globals[GM.CURRENT_API_SCOPES]:
    systemErrorExit(NO_SCOPES_FOR_API_RC, Msg.NO_SCOPES_FOR_API.format(service._rootDesc[u'title']))
  try:
    service._http = credentials.authorize(httpObj)
  except httplib2.ServerNotFoundError as e:
    systemErrorExit(NETWORK_ERROR_RC, str(e))
  except oauth2client.client.AccessTokenRefreshError as e:
    return handleOAuthTokenError(str(e), False)
  if not GC.Values[GC.DOMAIN]:
    GC.Values[GC.DOMAIN] = credentials.id_token.get(u'hd', u'UNKNOWN').lower()
  if not GC.Values[GC.CUSTOMER_ID]:
    GC.Values[GC.CUSTOMER_ID] = GC.MY_CUSTOMER
  GM.Globals[GM.ADMIN] = credentials.id_token.get(u'email', u'UNKNOWN').lower()
  GM.Globals[GM.OAUTH2_CLIENT_ID] = credentials.client_id
  return service
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def initGDataObject(gdataObj, api):
  if hasattr(sys, u'_MEIPASS') and not GM.Globals[GM.CACERTS_TXT]:
    GM.Globals[GM.CACERTS_TXT] = os.path.join(sys._MEIPASS, u'httplib2', u'cacerts.txt')
    os.environ['REQUESTS_CA_BUNDLE'] = GM.Globals[GM.CACERTS_TXT]
    os.environ['DEFAULT_CA_BUNDLE_PATH'] = GM.Globals[GM.CACERTS_TXT]
  _, _, api_version, cred_family = API.getVersion(api)
  disc_file, discovery = readDiscoveryFile(api_version)
  GM.Globals[GM.CURRENT_API_USER] = None
  credentials = getClientCredentials(cred_family)
  try:
    GM.Globals[GM.CURRENT_API_SCOPES] = list(set(list(discovery[u'auth'][u'oauth2'][u'scopes'])).intersection(credentials.scopes))
  except KeyError:
    invalidDiscoveryJsonExit(disc_file)
  if not GM.Globals[GM.CURRENT_API_SCOPES]:
    systemErrorExit(NO_SCOPES_FOR_API_RC, Msg.NO_SCOPES_FOR_API.format(discovery.get(u'title', api_version)))
  getGDataOAuthToken(gdataObj, credentials)
  if GC.Values[GC.DEBUG_LEVEL] > 0:
    gdataObj.debug = True
  return gdataObj
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def splitEmailAddressOrUID(emailAddressOrUID):
  normalizedEmailAddressOrUID = normalizeEmailAddressOrUID(emailAddressOrUID)
  atLoc = normalizedEmailAddressOrUID.find(u'@')
  if atLoc > 0:
    return (normalizedEmailAddressOrUID, normalizedEmailAddressOrUID[:atLoc], normalizedEmailAddressOrUID[atLoc+1:])
  try:
    cd = buildGAPIObject(API.DIRECTORY)
    result = callGAPI(cd.users(), u'get',
                      throw_reasons=GAPI.USER_GET_THROW_REASONS,
                      userKey=normalizedEmailAddressOrUID, fields=u'primaryEmail')
    if u'primaryEmail' in result:
      normalizedEmailAddressOrUID = result[u'primaryEmail'].lower()
      atLoc = normalizedEmailAddressOrUID.find(u'@')
      return (normalizedEmailAddressOrUID, normalizedEmailAddressOrUID[:atLoc], normalizedEmailAddressOrUID[atLoc+1:])
  except (GAPI.userNotFound, GAPI.domainNotFound, GAPI.domainCannotUseApis, GAPI.forbidden, GAPI.badRequest, GAPI.backendError, GAPI.systemError):
    pass
  return (normalizedEmailAddressOrUID, normalizedEmailAddressOrUID, GC.Values[GC.DOMAIN])

# Convert Org Unit Id to Org Unit Path
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def convertOrgUnitIDtoPath(orgUnitId, cd):
  if GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME] is None:
    GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME] = {}
    orgUnitPath = None
  else:
    orgUnitPath = GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME].get(orgUnitId)
  if not orgUnitPath:
    if cd is None:
      cd = buildGAPIObject(API.DIRECTORY)
    try:
      orgUnitPath = callGAPI(cd.orgunits(), u'get',
                             throw_reasons=[GAPI.INVALID_ORGUNIT, GAPI.ORGUNIT_NOT_FOUND, GAPI.BACKEND_ERROR, GAPI.BAD_REQUEST, GAPI.INVALID_CUSTOMER_ID, GAPI.LOGIN_REQUIRED],
                             customerId=GC.Values[GC.CUSTOMER_ID], orgUnitPath=orgUnitId, fields=u'orgUnitPath')[u'orgUnitPath']
    except (GAPI.invalidOrgunit, GAPI.orgunitNotFound, GAPI.backendError, GAPI.badRequest, GAPI.invalidCustomerId, GAPI.loginRequired):
      orgUnitPath = orgUnitId
    GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME][orgUnitId] = orgUnitPath
  return orgUnitPath
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def doInfoResoldCustomer():
  res = buildGAPIObject(API.RESELLER)
  customerId = getString(Cmd.OB_CUSTOMER_ID)
  checkForExtraneousArguments()
  try:
    customerInfo = callGAPI(res.customers(), u'get',
                            throw_reasons=[GAPI.BAD_REQUEST, GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN],
                            customerId=customerId)
    printKeyValueList([u'Customer ID', customerInfo[u'customerId']])
    printKeyValueList([u'Customer Domain', customerInfo[u'customerDomain']])
    printKeyValueList([u'Customer Domain Verified', customerInfo[u'customerDomainVerified']])
    _showCustomerAddressPhoneNumber(customerInfo)
    printKeyValueList([u'Customer Alternate Email', customerInfo[u'alternateEmail']])
    printKeyValueList([u'Customer Admin Console URL', customerInfo[u'resourceUiUrl']])
  except (GAPI.badRequest, GAPI.resourceNotFound, GAPI.forbidden) as e:
    entityActionFailedWarning([Ent.CUSTOMER_ID, customerId], str(e))
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def doInfoDomainAlias():
  cd = buildGAPIObject(API.DIRECTORY)
  domainAliasName = getString(Cmd.OB_DOMAIN_ALIAS)
  checkForExtraneousArguments()
  try:
    result = callGAPI(cd.domainAliases(), u'get',
                      throw_reasons=[GAPI.DOMAIN_ALIAS_NOT_FOUND, GAPI.BAD_REQUEST, GAPI.NOT_FOUND, GAPI.FORBIDDEN],
                      customer=GC.Values[GC.CUSTOMER_ID], domainAliasName=domainAliasName)
    aliasSkipObjects = [u'domainAliasName',]
    _showDomainAlias(result, aliasSkipObjects)
  except GAPI.domainAliasNotFound:
    entityActionFailedWarning([Ent.DOMAIN_ALIAS, domainAliasName], Msg.DOES_NOT_EXIST)
  except (GAPI.badRequest, GAPI.notFound, GAPI.forbidden):
    accessErrorExit(cd)

# gam print domainaliases [todrive [<ToDriveAttributes>]]
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def doInfoCustomer():
  cd = buildGAPIObject(API.DIRECTORY)
  checkForExtraneousArguments()
  try:
    customerInfo = callGAPI(cd.customers(), u'get',
                            throw_reasons=[GAPI.BAD_REQUEST, GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN],
                            customerKey=GC.Values[GC.CUSTOMER_ID])
    printKeyValueList([u'Customer ID', customerInfo[u'id']])
    printKeyValueList([u'Primary Domain', customerInfo[u'customerDomain']])
    printKeyValueList([u'Customer Creation Time', formatLocalTime(customerInfo[u'customerCreationTime'])])
    verified = callGAPI(cd.domains(), u'get',
                        customer=customerInfo[u'id'], domainName=customerInfo[u'customerDomain'], fields=u'verified')[u'verified']
    printKeyValueList([u'Primary Domain Verified', verified])
    printKeyValueList([u'Default Language', customerInfo[u'language']])
    _showCustomerAddressPhoneNumber(customerInfo)
    printKeyValueList([u'Admin Secondary Email', customerInfo[u'alternateEmail']])
    _showCustomerLicenseInfo(customerInfo[u'id'])
  except (GAPI.badRequest, GAPI.resourceNotFound, GAPI.forbidden):
    accessErrorExit(cd)

# gam update customer [primary <DomainName>] [adminsecondaryemail|alternateemail <EmailAddress>] [language <LanguageCode] [phone|phonenumber <String>]
#   [contact|contactname <String>] [name|organizationname <String>]
#   [address1|addressline1 <String>] [address2|addressline2 <String>] [address3|addressline3 <String>]
#   [locality <String>] [region <String>] [postalcode <String>] [country|countrycode <String>]
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _showMailboxExportRequestStatus(request, i, count, showFilter=False, showDates=False, showFiles=False):
  printEntity([Ent.REQUEST_ID, request[u'requestId']], i, count)
  Ind.Increment()
  printEntity([Ent.USER, request[u'userEmailAddress']])
  printKeyValueList([u'Status', request[u'status']])
  printKeyValueList([u'Request Date', request[u'requestDate']])
  printKeyValueList([u'Requested By', request[u'adminEmailAddress']])
  printKeyValueList([u'Requested Parts', request[u'packageContent']])
  if showFilter:
    printKeyValueList([u'Request Filter', request.get(u'searchQuery', u'None')])
  printKeyValueList([u'Include Deleted', request[u'includeDeleted']])
  if showDates:
    printKeyValueList([u'Begin', request.get(u'beginDate', u'Account creation date')])
    printKeyValueList([u'End', request.get(u'endDate', u'Export request date')])
  if showFiles:
    _showFileURLs(request)
  Ind.Decrement()

# gam audit export request <EmailAddress> [begin <DateTime>] [end <DateTime>] [search <QueryGmail>] [headersonly] [includedeleted]
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def doInfoMobileDevices():
  entityList, cd = getMobileDeviceEntity()
  parameters = _initMobileFieldsParameters()
  while Cmd.ArgumentsRemaining():
    myarg = getArgument()
    _getMobileFieldsArguments(myarg, parameters)
  fields = u','.join(set(parameters[u'fieldsList'])) if parameters[u'fieldsList'] else None
  i = 0
  count = len(entityList)
  for resourceId in entityList:
    i += 1
    try:
      info = callGAPI(cd.mobiledevices(), u'get',
                      throw_reasons=[GAPI.INTERNAL_ERROR, GAPI.RESOURCE_ID_NOT_FOUND, GAPI.BAD_REQUEST, GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN],
                      customerId=GC.Values[GC.CUSTOMER_ID], resourceId=resourceId, projection=parameters[u'projection'], fields=fields)
      printEntity([Ent.MOBILE_DEVICE, resourceId], i, count)
      Ind.Increment()
      showJSON(None, info, timeObjects=MOBILE_TIME_OBJECTS)
      Ind.Decrement()
    except GAPI.internalError:
      entityActionFailedWarning([Ent.MOBILE_DEVICE, resourceId], Msg.DOES_NOT_EXIST, i, count)
    except (GAPI.resourceIdNotFound, GAPI.badRequest, GAPI.resourceNotFound, GAPI.forbidden) as e:
      entityActionFailedWarning([Ent.MOBILE_DEVICE, resourceId], str(e), i, count)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _showBuilding(building, delimiter=u',', i=0, count=0):
  if u'buildingName' in building:
    printEntity([Ent.BUILDING, building[u'buildingName']], i, count)
    Ind.Increment()
    printKeyValueList([u'buildingId', u'id:{0}'.format(building[u'buildingId'])])
  else:
    printEntity([Ent.BUILDING_ID, u'id:{0}'.format(building[u'buildingId'])], i, count)
    Ind.Increment()
  if u'description' in building:
    printKeyValueList([u'description', building[u'description']])
  if u'floorNames' in building:
    printKeyValueList([u'floorNames', delimiter.join(building[u'floorNames'])])
  if u'coordinates' in building:
    printKeyValueList([u'coordinates', None])
    Ind.Increment()
    printKeyValueList([u'latitude', building[u'coordinates'].get(u'latitude', 0)])
    printKeyValueList([u'longitude', building[u'coordinates'].get(u'longitude', 0)])
    Ind.Decrement()
  Ind.Decrement()

# gam info building <BuildingID>
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _infoCalendarACLs(cal, entityType, calId, j, jcount, ruleIds, kcount):
  Ind.Increment()
  k = 0
  for ruleId in ruleIds:
    k += 1
    ruleId = normalizeRuleId(ruleId)
    try:
      result = callGAPI(cal.acl(), u'get',
                        throw_reasons=[GAPI.NOT_FOUND, GAPI.INVALID, GAPI.INVALID_SCOPE_VALUE, GAPI.FORBIDDEN],
                        calendarId=calId, ruleId=ruleId, fields=u'id,role')
      printEntity([entityType, calId, Ent.CALENDAR_ACL, formatACLScopeRole(result[u'id'], result[u'role'])], k, kcount)
    except (GAPI.notFound, GAPI.invalid) as e:
      if not checkCalendarExists(cal, calId):
        entityUnknownWarning(entityType, calId, j, jcount)
        break
      else:
        entityActionFailedWarning([entityType, calId, Ent.CALENDAR_ACL, formatACLScopeRole(ruleId, None)], str(e), k, kcount)
    except (GAPI.invalidScopeValue, GAPI.forbidden) as e:
      entityActionFailedWarning([entityType, calId, Ent.CALENDAR_ACL, formatACLScopeRole(ruleId, None)], str(e), k, kcount)
  Ind.Decrement()
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _getCalendarListEventsProperty(myarg, attributes, kwargs):
  attrName, attribute = attributes.get(myarg, (None, None))
  if not attrName:
    return False
  attrType = attribute[GC.VAR_TYPE]
  if attrType == GC.TYPE_BOOLEAN:
    kwargs[attrName] = True
  elif attrType == GC.TYPE_STRING:
    kwargs[attrName] = getString(Cmd.OB_STRING)
  elif attrType == GC.TYPE_CHOICE:
    kwargs[attrName] = getChoice(attribute[u'choices'], mapChoice=True)
  elif attrType == GC.TYPE_DATETIME:
    kwargs[attrName] = getTimeOrDeltaFromNow()
  else: # GC.TYPE_INTEGER
    kwargs[attrName] = getInteger()
  return True
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def doInfoVaultHold():
  v = buildGAPIObject(API.VAULT)
  holdName = getString(Cmd.OB_HOLD_ITEM)
  cd = matterId = None
  while Cmd.ArgumentsRemaining():
    myarg = getArgument()
    if myarg == u'matter':
      matterId, matterNameId = getMatterItem(v)
      holdId, holdName, holdNameId = convertHoldNameToID(v, holdName, matterId, matterNameId)
    elif myarg == u'shownames':
      cd = buildGAPIObject(API.DIRECTORY)
    else:
      unknownArgumentExit()
  if matterId is None:
    missingArgumentExit(Cmd.OB_MATTER_ITEM)
  try:
    hold = callGAPI(v.matters().holds(), u'get',
                    throw_reasons=[GAPI.NOT_FOUND, GAPI.BAD_REQUEST, GAPI.FORBIDDEN],
                    matterId=matterId, holdId=holdId)
    entityActionPerformed([Ent.VAULT_MATTER, matterNameId, Ent.VAULT_HOLD, formatHoldNameId(hold[u'name'], hold[u'holdId'])])
    _showVaultHold(hold, cd)
  except (GAPI.notFound, GAPI.badRequest, GAPI.forbidden) as e:
    entityActionFailedWarning([Ent.VAULT_MATTER, matterNameId, Ent.VAULT_HOLD, holdNameId], str(e))
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def FieldsToSite(fields):
    import atom
    import gdata.apps.sites

    def GetField(fieldName):
      return fields.get(fieldName)

    def GetSiteField(fieldName, fieldClass):
      value = fields.get(fieldName)
      if value:
        return fieldClass(text=value)
      return None

    site_entry = gdata.apps.sites.SiteEntry(sourceSite=GetField(SITE_SOURCELINK))
    site_entry.siteName = GetSiteField(SITE_SITE, gdata.apps.sites.SiteName)
    site_entry.title = GetSiteField(SITE_NAME, atom.Title)
    site_entry.summary = GetSiteField(SITE_SUMMARY, atom.Summary)
    site_entry.theme = GetSiteField(SITE_THEME, gdata.apps.sites.Theme)
    value = GetField(SITE_CATEGORIES)
    if value:
      for category in value:
        site_entry.category.append(atom.Category(term=category, scheme=gdata.apps.sites.TAG_KIND_TERM))
    return site_entry
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _processTags(tagReplacements, message):
  while True:
    match = RT_PATTERN.search(message)
    if not match:
      break
    if tagReplacements.get(match.group(1)):
      message = RT_OPEN_PATTERN.sub(u'', message, count=1)
      message = RT_CLOSE_PATTERN.sub(u'', message, count=1)
    else:
      message = RT_STRIP_PATTERN.sub(u'', message, count=1)
  while True:
    match = RT_TAG_REPLACE_PATTERN.search(message)
    if not match:
      break
    message = re.sub(match.group(0), tagReplacements.get(match.group(1), u''), message)
  return message

# Substitute for #user#, #email#, #usernamne#
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def sendCreateUserNotification(notify, body, i=0, count=0):
  def _makeSubstitutions(field):
    notify[field] = _substituteForUser(notify[field], body[u'primaryEmail'], userName)
    notify[field] = notify[field].replace(u'#domain#', domain)
    notify[field] = notify[field].replace(u'#givenname#', body[u'name'][u'givenName'])
    notify[field] = notify[field].replace(u'#familyname#', body[u'name'][u'familyName'])
    notify[field] = notify[field].replace(u'#password#', notify[u'password'])

  userName, domain = splitEmailAddress(body[u'primaryEmail'])
  if not notify.get(u'subject'):
    notify[u'subject'] = Msg.CREATE_USER_NOTIFY_SUBJECT
  _makeSubstitutions(u'subject')
  if not notify.get(u'message'):
    notify[u'message'] = Msg.CREATE_USER_NOTIFY_MESSAGE
  _makeSubstitutions(u'message')
  send_email(notify[u'subject'], notify[u'message'], notify[u'emailAddress'], i, count)

# gam create user <EmailAddress> <UserAttributes> [notify <EmailAddress>] [subject <String>] [message <String>|(file <FileName> [charset <CharSet>])]
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def getPrinterScopeListsForRole(cp, printerId, i, count, role):
  try:
    result = callGCP(cp.printers(), u'get',
                     throw_messages=[GCP.UNKNOWN_PRINTER],
                     printerid=printerId)
    try:
      jcount = len(result[u'printers'][0][u'access'])
    except KeyError:
      jcount = 0
    scopeList = []
    if jcount > 0:
      for acl in result[u'printers'][0][u'access']:
        if acl.get(u'role') == role:
          scopeList.append(acl[u'scope'].lower())
    return scopeList
  except GCP.unknownPrinter as e:
    entityActionFailedWarning([Ent.PRINTER, printerId], str(e), i, count)
    return None

# gam printer|printers <PrinterIDEntity> sync user|manager|owner <PrinterACLScopeEntity> [notify]
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _showBackupCodes(user, codes, i, count):
  Act.Set(Act.SHOW)
  jcount = 0
  for code in codes:
    if code.get(u'verificationCode'):
      jcount += 1
  entityPerformActionNumItems([Ent.USER, user], jcount, Ent.BACKUP_VERIFICATION_CODES, i, count)
  if jcount == 0:
    setSysExitRC(NO_ENTITIES_FOUND)
    return
  Ind.Increment()
  j = 0
  for code in codes:
    j += 1
    printKeyValueList([u'{0:2}'.format(j), code.get(u'verificationCode')])
  Ind.Decrement()

# gam <UserTypeEntity> update backupcodes|verificationcodes
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def infoCalendars(users):
  calendarEntity = getCalendarEntity()
  checkForExtraneousArguments()
  i, count, users = getEntityArgument(users)
  for user in users:
    i += 1
    user, cal, calIds, jcount = _validateUserGetCalendarIds(user, i, count, calendarEntity)
    if jcount == 0:
      continue
    Ind.Increment()
    j = 0
    for calId in calIds:
      j += 1
      calId = normalizeCalendarId(calId, user)
      _processCalendarList(user, calId, j, jcount, cal, u'get',
                           calendarId=calId)
    Ind.Decrement()

# <CalendarSettings> ::==
#   [description <String>] [location <String>] [summary <String>] [timezone <String>]
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _getCalendarSettings(summaryRequired=False):
  body = {}
  while Cmd.ArgumentsRemaining():
    myarg = getArgument()
    if myarg == u'description':
      body[u'description'] = getString(Cmd.OB_STRING, minLen=0).replace(u'\\n', u'\n')
    elif myarg == u'location':
      body[u'location'] = getString(Cmd.OB_STRING, minLen=0)
    elif myarg == u'summary':
      body[u'summary'] = getString(Cmd.OB_STRING)
    elif myarg == u'timezone':
      body[u'timeZone'] = getString(Cmd.OB_STRING)
    else:
      unknownArgumentExit()
  if summaryRequired and not body.get(u'summary', None):
    missingArgumentExit(u'summary <String>')
  return body

# gam <UserTypeEntity> create calendars <CalendarSettings>
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def doDriveSearch(drive, user, i, count, query=None, parentQuery=False, orderBy=None, teamDriveOnly=False, **kwargs):
  if GC.Values[GC.SHOW_GETTINGS]:
    printGettingAllEntityItemsForWhom(Ent.DRIVE_FILE_OR_FOLDER, user, i, count, query=query)
  try:
    files = callGAPIpages(drive.files(), u'list', VX_PAGES_FILES,
                          page_message=getPageMessageForWhom(noNL=True),
                          throw_reasons=GAPI.DRIVE_USER_THROW_REASONS+[GAPI.INVALID_QUERY, GAPI.INVALID, GAPI.FILE_NOT_FOUND, GAPI.TEAMDRIVE_NOT_FOUND],
                          q=query, orderBy=orderBy, fields=u'nextPageToken,files(id,teamDriveId)', pageSize=GC.Values[GC.DRIVE_MAX_RESULTS], **kwargs)
    if files or not parentQuery:
      return [f_file[u'id'] for f_file in files if not teamDriveOnly or f_file.get(u'teamDriveId')]
    entityActionFailedWarning([Ent.USER, user, Ent.DRIVE_FILE, None], invalidQuery(query), i, count)
  except (GAPI.invalidQuery, GAPI.invalid):
    entityActionFailedWarning([Ent.USER, user, Ent.DRIVE_FILE, None], invalidQuery(query), i, count)
  except GAPI.fileNotFound:
    printGotEntityItemsForWhom(0)
  except GAPI.teamDriveNotFound as e:
    entityActionFailedWarning([Ent.USER, user, Ent.TEAMDRIVE_ID, kwargs[u'teamDriveId']], str(e), i, count)
  except (GAPI.serviceNotAvailable, GAPI.authError, GAPI.domainPolicy) as e:
    userSvcNotApplicableOrDriveDisabled(user, str(e), i, count)
  return None
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _getDriveFileNameFromId(drive, fileId, combineTitleId=True):
  try:
    result = callGAPI(drive.files(), u'get',
                      throw_reasons=GAPI.DRIVE_ACCESS_THROW_REASONS,
                      fileId=fileId, fields=VX_FILENAME_MIMETYPE_TEAMDRIVEID, supportsTeamDrives=True)
    if result:
      fileName = result[VX_FILENAME]
      if (result[u'mimeType'] == MIMETYPE_GA_FOLDER) and (result[VX_FILENAME] == TEAM_DRIVE) and result.get(u'teamDriveId'):
        fileName = _getTeamDriveNameFromId(drive, result[u'teamDriveId'])
      if combineTitleId:
        fileName += u'('+fileId+u')'
      return (fileName, _getEntityMimeType(result))
  except (GAPI.fileNotFound, GAPI.forbidden, GAPI.internalError, GAPI.insufficientFilePermissions, GAPI.internalError,
          GAPI.serviceNotAvailable, GAPI.authError, GAPI.domainPolicy):
    pass
  return (fileId, Ent.DRIVE_FILE_OR_FOLDER_ID)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _validateUserGetTeamDriveFileIDs(user, i, count, fileIdEntity, drive=None, entityType=None):
  if fileIdEntity[u'dict']:
    cleanFileIDsList(fileIdEntity, fileIdEntity[u'dict'][user])
  if not drive:
    user, drive = buildGAPIServiceObject(API.DRIVE3, user)
    if not drive:
      return (user, None, 0)
  else:
    user = convertUIDtoEmailAddress(user)
  if fileIdEntity.get(u'teamdrivename') and not _convertTeamDriveNameToId(drive, user, i, count, fileIdEntity):
    return (user, None, 0)
  if fileIdEntity[u'teamdrivefilequery']:
    fileIdEntity[u'list'] = doDriveSearch(drive, user, i, count, query=fileIdEntity[u'teamdrivefilequery'], teamDriveOnly=True, **fileIdEntity[u'teamdrive'])
    if fileIdEntity[u'list'] is None or not fileIdEntity[u'list']:
      setSysExitRC(NO_ENTITIES_FOUND)
      return (user, None, 0)
    fileIdEntity[u'teamdrive'].pop(u'teamDriveId', None)
    fileIdEntity[u'teamdrive'].pop(u'corpora', None)
  l = len(fileIdEntity[u'list'])
  if l == 0:
    setSysExitRC(NO_ENTITIES_FOUND)
  if entityType:
    entityPerformActionNumItems([Ent.USER, user], l, entityType, i, count)
  return (user, drive, l)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _showTeamDriveThemes(users):
  checkForExtraneousArguments()
  i, count, users = getEntityArgument(users)
  for user in users:
    i += 1
    user, drive = buildGAPIServiceObject(API.DRIVE3, user)
    if not drive:
      continue
    try:
      themes = callGAPIitems(drive.about(), u'get', u'teamDriveThemes',
                             throw_reasons=GAPI.DRIVE_USER_THROW_REASONS,
                             fields=u'teamDriveThemes')
      jcount = len(themes)
      entityPerformActionNumItems([Ent.USER, user], jcount, Ent.TEAMDRIVE_THEME, i, count)
      _showTeamDriveThemeSettings(themes)
    except (GAPI.serviceNotAvailable, GAPI.authError, GAPI.domainPolicy) as e:
      userSvcNotApplicableOrDriveDisabled(user, str(e), i, count)

# gam <UserTypeEntity> show teamdrivethemes
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _setShowProfile(users, function, **kwargs):
  cd = buildGAPIObject(API.DIRECTORY)
  checkForExtraneousArguments()
  i, count, users = getEntityArgument(users)
  for user in users:
    i += 1
    user = normalizeEmailAddressOrUID(user)
    try:
      result = callGAPI(cd.users(), function,
                        throw_reasons=[GAPI.USER_NOT_FOUND, GAPI.FORBIDDEN],
                        userKey=user, fields=u'includeInGlobalAddressList', **kwargs)
      printEntity([Ent.USER, user, Ent.PROFILE_SHARING_ENABLED, result.get(u'includeInGlobalAddressList', u'Unknown')], i, count)
    except (GAPI.userNotFound, GAPI.forbidden):
      entityUnknownWarning(Ent.USER, user, i, count)

# gam <UserTypeEntity> profile share|shared|unshare|unshared
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def deleteTokens(users):
  cd = buildGAPIObject(API.DIRECTORY)
  checkArgumentPresent(u'clientid', required=True)
  clientId = commonClientIds(getString(Cmd.OB_CLIENT_ID))
  checkForExtraneousArguments()
  i, count, users = getEntityArgument(users)
  for user in users:
    i += 1
    user = normalizeEmailAddressOrUID(user)
    try:
      callGAPI(cd.tokens(), u'get',
               throw_reasons=[GAPI.USER_NOT_FOUND, GAPI.DOMAIN_NOT_FOUND, GAPI.DOMAIN_CANNOT_USE_APIS, GAPI.FORBIDDEN, GAPI.NOT_FOUND, GAPI.RESOURCE_NOT_FOUND],
               userKey=user, clientId=clientId, fields=u'')
      callGAPI(cd.tokens(), u'delete',
               throw_reasons=[GAPI.USER_NOT_FOUND, GAPI.DOMAIN_NOT_FOUND, GAPI.DOMAIN_CANNOT_USE_APIS, GAPI.FORBIDDEN, GAPI.NOT_FOUND, GAPI.RESOURCE_NOT_FOUND],
               userKey=user, clientId=clientId)
      entityActionPerformed([Ent.USER, user, Ent.ACCESS_TOKEN, clientId], i, count)
    except (GAPI.notFound, GAPI.resourceNotFound) as e:
      entityActionFailedWarning([Ent.USER, user, Ent.ACCESS_TOKEN, clientId], str(e), i, count)
    except (GAPI.userNotFound, GAPI.domainNotFound, GAPI.domainCannotUseApis, GAPI.forbidden):
      entityUnknownWarning(Ent.USER, user, i, count)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _checkDelegator(cd, delegatorEmail, i, count, jcount):
  try:
    result = callGAPI(cd.users(), u'get',
                      throw_reasons=GAPI.USER_GET_THROW_REASONS,
                      userKey=delegatorEmail, fields=u'suspended,changePasswordAtNextLogin')
    if result[u'suspended']:
      entityNumEntitiesActionFailedWarning(Ent.DELEGATOR, delegatorEmail, Ent.DELEGATE, jcount, Ent.TypeMessage(Ent.DELEGATOR, Msg.IS_SUSPENDED_NO_DELEGATION), i, count)
      setSysExitRC(USER_SUSPENDED_ERROR_RC)
    elif result[u'changePasswordAtNextLogin']:
      entityNumEntitiesActionFailedWarning(Ent.DELEGATOR, delegatorEmail, Ent.DELEGATE, jcount, Ent.TypeMessage(Ent.DELEGATOR, Msg.IS_REQD_TO_CHG_PWD_NO_DELEGATION), i, count)
      setSysExitRC(USER_REQUIRED_TO_CHANGE_PASSWORD_ERROR_RC)
    else:
      return True
  except (GAPI.userNotFound, GAPI.domainNotFound, GAPI.domainCannotUseApis, GAPI.forbidden, GAPI.badRequest, GAPI.backendError, GAPI.systemError) as e:
    entityNumEntitiesActionFailedWarning(Ent.DELEGATOR, delegatorEmail, Ent.DELEGATE, jcount, Ent.TypeMessage(Ent.DELEGATOR, str(e)), i, count)
  return False
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _checkDelegate(cd, delegatorEmail, delegateEmail, j, jcount):
  try:
    result = callGAPI(cd.users(), u'get',
                      throw_reasons=GAPI.USER_GET_THROW_REASONS,
                      userKey=delegateEmail, fields=u'suspended,changePasswordAtNextLogin')
    if result[u'suspended']:
      entityActionFailedWarning([Ent.DELEGATOR, delegatorEmail, Ent.DELEGATE, delegateEmail], Ent.TypeMessage(Ent.DELEGATE, Msg.IS_SUSPENDED_NO_DELEGATION), j, jcount)
      setSysExitRC(USER_SUSPENDED_ERROR_RC)
    elif result[u'changePasswordAtNextLogin']:
      entityActionFailedWarning([Ent.DELEGATOR, delegatorEmail, Ent.DELEGATE, delegateEmail], Ent.TypeMessage(Ent.DELEGATE, Msg.IS_REQD_TO_CHG_PWD_NO_DELEGATION), j, jcount)
      setSysExitRC(USER_REQUIRED_TO_CHANGE_PASSWORD_ERROR_RC)
    else:
      entityActionFailedWarning([Ent.DELEGATOR, delegatorEmail, Ent.DELEGATE, delegateEmail], Msg.GOOGLE_DELEGATION_ERROR, j, jcount)
      setSysExitRC(GOOGLE_API_ERROR_RC)
  except (GAPI.userNotFound, GAPI.domainNotFound, GAPI.domainCannotUseApis, GAPI.forbidden, GAPI.badRequest, GAPI.backendError, GAPI.systemError) as e:
    entityActionFailedWarning([Ent.DELEGATOR, delegatorEmail, Ent.DELEGATE, delegateEmail], Ent.TypeMessage(Ent.DELEGATE, str(e)), j, jcount)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _processForwardingAddress(user, i, count, emailAddress, j, jcount, gmail, function, **kwargs):
  userDefined = True
  try:
    result = callGAPI(gmail.users().settings().forwardingAddresses(), function,
                      throw_reasons=GAPI.GMAIL_THROW_REASONS+[GAPI.NOT_FOUND, GAPI.ALREADY_EXISTS, GAPI.DUPLICATE],
                      userId=u'me', **kwargs)
    if function == u'get':
      _showForwardingAddress(j, count, result)
    else:
      entityActionPerformed([Ent.USER, user, Ent.FORWARDING_ADDRESS, emailAddress], j, jcount)
  except (GAPI.notFound, GAPI.alreadyExists, GAPI.duplicate) as e:
    entityActionFailedWarning([Ent.USER, user, Ent.FORWARDING_ADDRESS, emailAddress], str(e), j, jcount)
  except (GAPI.serviceNotAvailable, GAPI.badRequest):
    entityServiceNotApplicableWarning(Ent.USER, user, i, count)
    userDefined = False
  return userDefined

# gam <UserTypeEntity> create|add forwardingaddresses <EmailAddressEntity>
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def _processSendAs(user, i, count, entityType, emailAddress, j, jcount, gmail, function, formatSig, **kwargs):
  userDefined = True
  try:
    result = callGAPI(gmail.users().settings().sendAs(), function,
                      throw_reasons=GAPI.GMAIL_THROW_REASONS+[GAPI.NOT_FOUND, GAPI.ALREADY_EXISTS, GAPI.DUPLICATE, GAPI.CANNOT_DELETE_PRIMARY_SENDAS, GAPI.INVALID_ARGUMENT],
                      userId=u'me', **kwargs)
    if function == u'get':
      _showSendAs(result, j, jcount, formatSig)
    else:
      entityActionPerformed([Ent.USER, user, entityType, emailAddress], j, jcount)
  except (GAPI.notFound, GAPI.alreadyExists, GAPI.duplicate, GAPI.cannotDeletePrimarySendAs, GAPI.invalidArgument) as e:
    entityActionFailedWarning([Ent.USER, user, entityType, emailAddress], str(e), j, jcount)
  except (GAPI.serviceNotAvailable, GAPI.badRequest):
    entityServiceNotApplicableWarning(Ent.USER, user, i, count)
    userDefined = False
  return userDefined
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def adjustRedirectedSTDFilesIfNotMultiprocessing():
  def adjustRedirectedSTDFile(stdtype):
    rdFd = GM.Globals[stdtype].get(GM.REDIRECT_FD)
    rdMultiFd = GM.Globals[stdtype].get(GM.REDIRECT_MULTI_FD)
    if rdFd and rdMultiFd and rdFd != rdMultiFd:
      try:
        rdFd.write(rdMultiFd.getvalue())
        rdMultiFd.close()
        GM.Globals[stdtype][GM.REDIRECT_MULTI_FD] = rdFd
        if (stdtype == GM.STDOUT) and (GM.Globals.get(GM.SAVED_STDOUT) is not None):
          sys.stdout = rdFd
      except IOError as e:
        systemErrorExit(FILE_ERROR_RC, e)

  adjustRedirectedSTDFile(GM.STDOUT)
  if GM.Globals[GM.STDERR].get(GM.REDIRECT_NAME) != u'stdout':
    adjustRedirectedSTDFile(GM.STDERR)
  else:
    GM.Globals[GM.STDERR][GM.REDIRECT_MULTI_FD] = GM.Globals[GM.STDOUT][GM.REDIRECT_MULTI_FD]
项目:tvalacarta    作者:tvalacarta    | 项目源码 | 文件源码
def decodeHtmlentities(string):
    string = entitiesfix(string)
    entity_re = re.compile("&(#?)(\d{1,5}|\w{1,8});")

    def substitute_entity(match):
        from htmlentitydefs import name2codepoint as n2cp
        ent = match.group(2)
        if match.group(1) == "#":
            return unichr(int(ent)).encode('utf-8')
        else:
            cp = n2cp.get(ent)

            if cp:
                return unichr(cp).encode('utf-8')
            else:
                return match.group()

    return entity_re.subn(substitute_entity, string)[0]
项目:pelisalacarta-ce    作者:pelisalacarta-ce    | 项目源码 | 文件源码
def decodeHtmlentities(string):
    string = entitiesfix(string)
    entity_re = re.compile("&(#?)(\d{1,5}|\w{1,8});")

    def substitute_entity(match):
        from htmlentitydefs import name2codepoint as n2cp
        ent = match.group(2)
        if match.group(1) == "#":
            return unichr(int(ent)).encode('utf-8')
        else:
            cp = n2cp.get(ent)

            if cp:
                return unichr(cp).encode('utf-8')
            else:
                return match.group()

    return entity_re.subn(substitute_entity, string)[0]
项目:nonce2vec    作者:minimalparts    | 项目源码 | 文件源码
def check_output(*popenargs, **kwargs):
    r"""Run command with arguments and return its output as a byte string.
    Backported from Python 2.7 as it's implemented as pure python on stdlib.
    >>> check_output(['/usr/bin/python', '--version'])
    Python 2.6.2
    Added extra KeyboardInterrupt handling
    """
    try:
        process = subprocess.Popen(stdout=subprocess.PIPE, *popenargs, **kwargs)
        output, unused_err = process.communicate()
        retcode = process.poll()
        if retcode:
            cmd = kwargs.get("args")
            if cmd is None:
                cmd = popenargs[0]
            error = subprocess.CalledProcessError(retcode, cmd)
            error.output = output
            raise error
        return output
    except KeyboardInterrupt:
        process.terminate()
        raise
项目:plugin.video.streamondemand-pureita    作者:orione7    | 项目源码 | 文件源码
def decodeHtmlentities(string):
    string = entitiesfix(string)
    entity_re = re.compile("&(#?)(\d{1,5}|\w{1,8});")

    def substitute_entity(match):
        from htmlentitydefs import name2codepoint as n2cp
        ent = match.group(2)
        if match.group(1) == "#":
            return unichr(int(ent)).encode('utf-8')
        else:
            cp = n2cp.get(ent)

            if cp:
                return unichr(cp).encode('utf-8')
            else:
                return match.group()

    return entity_re.subn(substitute_entity, string)[0]
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def getChoice(choices, **opts):
  if Cmd.ArgumentsRemaining():
    choice = Cmd.Current().strip().lower()
    if choice:
      if choice in opts.get(CHOICE_ALIASES, []):
        choice = opts[CHOICE_ALIASES][choice]
      if choice not in choices:
        choice = choice.replace(u'_', u'').replace(u'-', u'')
        if choice in opts.get(CHOICE_ALIASES, []):
          choice = opts[CHOICE_ALIASES][choice]
      if choice in choices:
        Cmd.Advance()
        return choice if not opts.get(MAP_CHOICE, False) else choices[choice]
    if opts.get(DEFAULT_CHOICE, NO_DEFAULT) != NO_DEFAULT:
      return opts[DEFAULT_CHOICE]
    invalidChoiceExit(choices, False)
  elif opts.get(DEFAULT_CHOICE, NO_DEFAULT) != NO_DEFAULT:
    return opts[DEFAULT_CHOICE]
  missingChoiceExit(choices)
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def buildGAPIObject(api):
  GM.Globals[GM.CURRENT_API_USER] = None
  _, httpObj, service, cred_family = getAPIversionHttpService(api)
  credentials = getClientCredentials(cred_family)
  try:
    API_Scopes = set(list(service._rootDesc[u'auth'][u'oauth2'][u'scopes']))
  except KeyError:
    API_Scopes = set(API.VAULT_SCOPES) if api == API.VAULT else set()
  GM.Globals[GM.CURRENT_API_SCOPES] = list(API_Scopes.intersection(credentials.scopes))
  if not GM.Globals[GM.CURRENT_API_SCOPES]:
    systemErrorExit(NO_SCOPES_FOR_API_RC, Msg.NO_SCOPES_FOR_API.format(service._rootDesc[u'title']))
  try:
    service._http = credentials.authorize(httpObj)
  except httplib2.ServerNotFoundError as e:
    systemErrorExit(NETWORK_ERROR_RC, str(e))
  except oauth2client.client.AccessTokenRefreshError as e:
    return handleOAuthTokenError(str(e), False)
  if not GC.Values[GC.DOMAIN]:
    GC.Values[GC.DOMAIN] = credentials.id_token.get(u'hd', u'UNKNOWN').lower()
  if not GC.Values[GC.CUSTOMER_ID]:
    GC.Values[GC.CUSTOMER_ID] = GC.MY_CUSTOMER
  GM.Globals[GM.ADMIN] = credentials.id_token.get(u'email', u'UNKNOWN').lower()
  GM.Globals[GM.OAUTH2_CLIENT_ID] = credentials.client_id
  return service
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def initGDataObject(gdataObj, api):
  if hasattr(sys, u'_MEIPASS') and not GM.Globals[GM.CACERTS_TXT]:
    GM.Globals[GM.CACERTS_TXT] = os.path.join(sys._MEIPASS, u'httplib2', u'cacerts.txt')
    os.environ['REQUESTS_CA_BUNDLE'] = GM.Globals[GM.CACERTS_TXT]
    os.environ['DEFAULT_CA_BUNDLE_PATH'] = GM.Globals[GM.CACERTS_TXT]
  _, _, api_version, cred_family = API.getVersion(api)
  disc_file, discovery = readDiscoveryFile(api_version)
  GM.Globals[GM.CURRENT_API_USER] = None
  credentials = getClientCredentials(cred_family)
  try:
    GM.Globals[GM.CURRENT_API_SCOPES] = list(set(list(discovery[u'auth'][u'oauth2'][u'scopes'])).intersection(credentials.scopes))
  except KeyError:
    invalidDiscoveryJsonExit(disc_file)
  if not GM.Globals[GM.CURRENT_API_SCOPES]:
    systemErrorExit(NO_SCOPES_FOR_API_RC, Msg.NO_SCOPES_FOR_API.format(discovery.get(u'title', api_version)))
  getGDataOAuthToken(gdataObj, credentials)
  if GC.Values[GC.DEBUG_LEVEL] > 0:
    gdataObj.debug = True
  return gdataObj
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def splitEmailAddressOrUID(emailAddressOrUID):
  normalizedEmailAddressOrUID = normalizeEmailAddressOrUID(emailAddressOrUID)
  atLoc = normalizedEmailAddressOrUID.find(u'@')
  if atLoc > 0:
    return (normalizedEmailAddressOrUID, normalizedEmailAddressOrUID[:atLoc], normalizedEmailAddressOrUID[atLoc+1:])
  try:
    cd = buildGAPIObject(API.DIRECTORY)
    result = callGAPI(cd.users(), u'get',
                      throw_reasons=GAPI.USER_GET_THROW_REASONS,
                      userKey=normalizedEmailAddressOrUID, fields=u'primaryEmail')
    if u'primaryEmail' in result:
      normalizedEmailAddressOrUID = result[u'primaryEmail'].lower()
      atLoc = normalizedEmailAddressOrUID.find(u'@')
      return (normalizedEmailAddressOrUID, normalizedEmailAddressOrUID[:atLoc], normalizedEmailAddressOrUID[atLoc+1:])
  except (GAPI.userNotFound, GAPI.domainNotFound, GAPI.domainCannotUseApis, GAPI.forbidden, GAPI.badRequest, GAPI.backendError, GAPI.systemError):
    pass
  return (normalizedEmailAddressOrUID, normalizedEmailAddressOrUID, GC.Values[GC.DOMAIN])

# Convert Org Unit Id to Org Unit Path
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def convertOrgUnitIDtoPath(orgUnitId, cd):
  if GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME] is None:
    GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME] = {}
    orgUnitPath = None
  else:
    orgUnitPath = GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME].get(orgUnitId)
  if not orgUnitPath:
    if cd is None:
      cd = buildGAPIObject(API.DIRECTORY)
    try:
      orgUnitPath = callGAPI(cd.orgunits(), u'get',
                             throw_reasons=[GAPI.INVALID_ORGUNIT, GAPI.ORGUNIT_NOT_FOUND, GAPI.BACKEND_ERROR, GAPI.BAD_REQUEST, GAPI.INVALID_CUSTOMER_ID, GAPI.LOGIN_REQUIRED],
                             customerId=GC.Values[GC.CUSTOMER_ID], orgUnitPath=orgUnitId, fields=u'orgUnitPath')[u'orgUnitPath']
    except (GAPI.invalidOrgunit, GAPI.orgunitNotFound, GAPI.backendError, GAPI.badRequest, GAPI.invalidCustomerId, GAPI.loginRequired):
      orgUnitPath = orgUnitId
    GM.Globals[GM.MAP_ORGUNIT_ID_TO_NAME][orgUnitId] = orgUnitPath
  return orgUnitPath
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def doInfoResoldCustomer():
  res = buildGAPIObject(API.RESELLER)
  customerId = getString(Cmd.OB_CUSTOMER_ID)
  checkForExtraneousArguments()
  try:
    customerInfo = callGAPI(res.customers(), u'get',
                            throw_reasons=[GAPI.BAD_REQUEST, GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN],
                            customerId=customerId)
    printKeyValueList([u'Customer ID', customerInfo[u'customerId']])
    printKeyValueList([u'Customer Domain', customerInfo[u'customerDomain']])
    printKeyValueList([u'Customer Domain Verified', customerInfo[u'customerDomainVerified']])
    _showCustomerAddressPhoneNumber(customerInfo)
    printKeyValueList([u'Customer Alternate Email', customerInfo[u'alternateEmail']])
    printKeyValueList([u'Customer Admin Console URL', customerInfo[u'resourceUiUrl']])
  except (GAPI.badRequest, GAPI.resourceNotFound, GAPI.forbidden) as e:
    entityActionFailedWarning([Ent.CUSTOMER_ID, customerId], str(e))
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def doInfoDomainAlias():
  cd = buildGAPIObject(API.DIRECTORY)
  domainAliasName = getString(Cmd.OB_DOMAIN_ALIAS)
  checkForExtraneousArguments()
  try:
    result = callGAPI(cd.domainAliases(), u'get',
                      throw_reasons=[GAPI.DOMAIN_ALIAS_NOT_FOUND, GAPI.BAD_REQUEST, GAPI.NOT_FOUND, GAPI.FORBIDDEN],
                      customer=GC.Values[GC.CUSTOMER_ID], domainAliasName=domainAliasName)
    aliasSkipObjects = [u'domainAliasName',]
    _showDomainAlias(result, aliasSkipObjects)
  except GAPI.domainAliasNotFound:
    entityActionFailedWarning([Ent.DOMAIN_ALIAS, domainAliasName], Msg.DOES_NOT_EXIST)
  except (GAPI.badRequest, GAPI.notFound, GAPI.forbidden):
    accessErrorExit(cd)

# gam print domainaliases [todrive [<ToDriveAttributes>]]
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def getOrgUnitId(cd=None):
  if cd is None:
    cd = buildGAPIObject(API.DIRECTORY)
  orgUnit = getOrgUnitItem()
  if orgUnit[:3] == u'id:':
    return (orgUnit, orgUnit)
  try:
    result = callGAPI(cd.orgunits(), u'get',
                      throw_reasons=[GAPI.INVALID_ORGUNIT, GAPI.ORGUNIT_NOT_FOUND, GAPI.BACKEND_ERROR, GAPI.BAD_REQUEST, GAPI.INVALID_CUSTOMER_ID, GAPI.LOGIN_REQUIRED],
                      customerId=GC.Values[GC.CUSTOMER_ID], orgUnitPath=makeOrgUnitPathRelative(orgUnit),
                      fields=u'orgUnitId')
    return (orgUnit, result[u'orgUnitId'])
  except (GAPI.invalidOrgunit, GAPI.orgunitNotFound, GAPI.backendError):
    entityDoesNotExistExit(Ent.ORGANIZATIONAL_UNIT, orgUnit)
  except (GAPI.badRequest, GAPI.invalidCustomerId, GAPI.loginRequired):
    accessErrorExit(cd)
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def doInfoCustomer():
  cd = buildGAPIObject(API.DIRECTORY)
  checkForExtraneousArguments()
  try:
    customerInfo = callGAPI(cd.customers(), u'get',
                            throw_reasons=[GAPI.BAD_REQUEST, GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN],
                            customerKey=GC.Values[GC.CUSTOMER_ID])
    printKeyValueList([u'Customer ID', customerInfo[u'id']])
    printKeyValueList([u'Primary Domain', customerInfo[u'customerDomain']])
    printKeyValueList([u'Customer Creation Time', formatLocalTime(customerInfo[u'customerCreationTime'])])
    verified = callGAPI(cd.domains(), u'get',
                        customer=customerInfo[u'id'], domainName=customerInfo[u'customerDomain'], fields=u'verified')[u'verified']
    printKeyValueList([u'Primary Domain Verified', verified])
    printKeyValueList([u'Default Language', customerInfo[u'language']])
    _showCustomerAddressPhoneNumber(customerInfo)
    printKeyValueList([u'Admin Secondary Email', customerInfo[u'alternateEmail']])
    _showCustomerLicenseInfo(customerInfo[u'id'])
  except (GAPI.badRequest, GAPI.resourceNotFound, GAPI.forbidden):
    accessErrorExit(cd)

# gam update customer [primary <DomainName>] [adminsecondaryemail|alternateemail <EmailAddress>] [language <LanguageCode] [phone|phonenumber <String>]
#   [contact|contactname <String>] [name|organizationname <String>]
#   [address1|addressline1 <String>] [address2|addressline2 <String>] [address3|addressline3 <String>]
#   [locality <String>] [region <String>] [postalcode <String>] [country|countrycode <String>]
项目:GAMADV-X    作者:taers232c    | 项目源码 | 文件源码
def checkOrgUnitPathExists(cd, orgUnitPath, i=0, count=0, showError=False):
  if orgUnitPath == u'/':
    return (True, orgUnitPath)
  try:
    return (True, callGAPI(cd.orgunits(), u'get',
                           throw_reasons=[GAPI.INVALID_ORGUNIT, GAPI.ORGUNIT_NOT_FOUND, GAPI.BACKEND_ERROR, GAPI.BAD_REQUEST, GAPI.INVALID_CUSTOMER_ID, GAPI.LOGIN_REQUIRED],
                           customerId=GC.Values[GC.CUSTOMER_ID], orgUnitPath=makeOrgUnitPathRelative(orgUnitPath),
                           fields=u'orgUnitPath')[u'orgUnitPath'])
  except (GAPI.invalidOrgunit, GAPI.orgunitNotFound, GAPI.backendError):
    pass
  except (GAPI.badRequest, GAPI.invalidCustomerId, GAPI.loginRequired):
    errMsg = accessErrorMessage(cd)
    if errMsg:
      systemErrorExit(INVALID_DOMAIN_RC, errMsg)
  if showError:
    entityActionFailedWarning([Ent.ORGANIZATIONAL_UNIT, orgUnitPath], Msg.DOES_NOT_EXIST, i, count)
  return (False, orgUnitPath)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def writeStdout(data):
  try:
    GM.Globals[GM.STDOUT].get(GM.REDIRECT_MULTI_FD, sys.stdout).write(data)
  except IOError as e:
    systemErrorExit(FILE_ERROR_RC, e)
项目:GAMADV-XTD    作者:taers232c    | 项目源码 | 文件源码
def flushStdout():
  try:
    GM.Globals[GM.STDOUT].get(GM.REDIRECT_MULTI_FD, sys.stdout).flush()
  except IOError as e:
    systemErrorExit(FILE_ERROR_RC, e)