text: 
  import time
  
  from helper import PackageHelper
  
  import cocos
  from MultiLanguage import MultiLanguage
  
  class PackageInfo(object):
      @staticmethod
      def plugin_name():
          return "info"
  
      @staticmethod
      def brief_description():
          return MultiLanguage.get_string('PACKAGE_INFO_BRIEF')
  
      def parse_args(self, argv):
          from argparse import ArgumentParser
  
          parser = ArgumentParser(prog="cocos package %s" % self.__class__.plugin_name(),
                                  description=self.__class__.brief_description())
          parser.add_argument("name", metavar="NAME", help=MultiLanguage.get_string('PACKAGE_INFO_ARG_NAME'))
          parser.add_argument('-v', '--version', default='all', help=MultiLanguage.get_string('PACKAGE_INFO_ARG_VERSION'))
          return parser.parse_args(argv)
  
      def run(self, argv):
          args = self.parse_args(argv)
          name = args.name
          version = args.version
          package_data = PackageHelper.query_package_data(name, version)
          if package_data is None:
              print MultiLanguage.get_string('PACKAGE_INFO_ERROR_NO_PKG_FMT', (name, version))
              return
  
          if isinstance(package_data, list):
              for data in package_data:
                  self.show_info(name, data)
                  return
  
          if package_data.has_key('err'):
              print MultiLanguage.get_string('PACKAGE_INFO_ERROR_NO_PKG_FMT', (name, version))
              return
              
          self.show_info(name, package_data)
  
      def show_info(self, name, package_data):
          print MultiLanguage.get_string('PACKAGE_INFO_PKG_FMT',
                (name, package_data["name"], package_data["version"],
                 time.strftime("%Y-%m-%d %H:%I:%S", time.gmtime(int(package_data["filetime"]))),
                 package_data["author"], (int(package_data["filesize"]) / 1024),
                 package_data["description"]))
  