Exemplo n.º 1
0
 def createPolicy(self, policy: typing.Union(dict, typing.IO) = None):
     """
     Create a custom policy.
     Arguments:
         policy : REQUIRED : A dictionary contaning the policy you would like to implement.
     """
     path = "/policies/custom"
     res = self.connector.postData(self.endpoint+path,data = policy)
     return res
Exemplo n.º 2
0
def write_sizes(sizes: dict, required_paths: list, human_readable: bool,
                output_format: str,
                output_path: typing.Union(str, typing.TextIO)):
  """Writes the sizes in CSV format.

  Args:
    sizes: A dictionary of path -> size.
    required_paths: list of paths to order results by
    human_readable: set to True when user wants output in human readable format
    output_format: output format (json or csv)
    output_path: path to write output to
  """

  def size_string(sz):
    if human_readable:
      return pformat.size(sz)
    return sz

  output = []

  # If required_paths passed in, emit output in same order as passed in.
  if required_paths:
    for path in required_paths:
      if path not in sizes:
        size = -1
      else:
        size = size_string(sizes[path])
      output.append({'path': path, 'size': size})
  else:
    for path, size in sorted(sizes.items()):
      output.append({'path': path, 'size': size_string(sizes[path])})

  with cros_build_lib.Open(output_path, mode='w') as f:
    if output_format == 'csv':
      writer = csv.DictWriter(f, ['path', 'size'])
      writer.writeheader()
      for row in output:
        writer.writerow(row)
    elif output_format == 'json':
      pformat.json(output, f)
Exemplo n.º 3
0
    def __init__(self):
        super().__init__()
        self.name = None
        self.variable_id = None
        self.dataset_id = None
        # self.short_name = None
        self.description = None
        self.corresponds_to_property = None
        self.main_subject = []
        self.unit_of_measure = []
        self.country = []
        self.location = []
        self.start_time = None
        self.end_time = None
        self.start_time_precision = None
        self.end_time_precision = None
        self.data_interval = None
        self.column_index: typing.Union(int, None) = None
        self.qualifier = []
        self.count = None

        self._max_admin_level = None
        self._precision = None
Exemplo n.º 4
0
 def __init__(self, d: typing.Union(acdb.ObjectId, acdb.DBObject),
              tr: dbtrans, parent: dbdict, othervalue: bool):
     ...
Exemplo n.º 5
0
    async def startPage(self,ctx:typing.Union([discord.Message,commands.Context]),bot:typing.Union([discord.Client,commands.Bot])):
        if isinstance(ctx,discord.Message):
            msg = ctx
            guild = msg.guild
            author = msg.author
        elif isinstance(ctx,commands.Context):
            msg = ctx.message
            guild = ctx.guild
            author = ctx.author

        async def ended(self,bot,guild):
            for react in self.reactions:
                for _ in len(self.react):
                    bot.loop.create_task.remove_reaction(react,member=guild.me)
        await ctx.send(embed=self.embeds[0])
        while True:
            if self.notEnded:
                
                def check(react,user,self):
                    emoji = str(react)
                    if self.reactions in emoji and user.id == react.message.author.id and not user.bot:
                        return True
                    else:
                        return False

                react,user = await bot.wait_for("reaction_add",check=check(react,user,self),timeout=self.timeout)
                emoji = str(react)
                if emoji == "⏹":
                    await ended()
                    break

                elif emoji == "◀":
                    if self.nowPage != 0:
                        self.nowPage -= 1
                    elif self.nowPage == 0:
                        self.nowPage = self.pageCount

                elif emoji == "▶":
                    if self.nowPage != self.pageCount:
                        self.nowPage += 1
                    elif self.nowPage == self.pageCount:
                        self.nowPage = 0

                elif emoji == "⏭":
                    if self.nowPage != self.pageCount:
                        if self.nowPage + 2 < self.pageCount:
                            self.nowPage += 2
                        else:
                            self.nowPage = self.pageCount - self.nowPage + 2

                    elif self.nowPage == self.pageCount:
                        self.nowPage = 1
                
                elif emoji == "⏮":
                    if self.nowPage != 0:
                        if self.nowPage - 2 > 0:
                            self.nowPage - 2
                        else:
                            self.nowPage = self.pageCount - self.nowPage - 2
                    elif self.nowPage == 0:
                        self.nowPage = self.pageCount
                
                await msg.remove_reaction(react,member=guild.me)
                await msg.edit(embed=self.embeds[self.nowPage])
            else:
                await ended(self,bot,guild)