# GENERATED BY KOMAND SDK - DO NOT EDIT
import komand
import json


class Input:
    
    FREQUENCY = "frequency"
    LANGUAGE = "language"
    LIMIT = "limit"
    PATTERN = "pattern"
    

class Output:
    
    PASTE = "paste"
    

class ScrapingInput(komand.Input):
    schema = json.loads("""
   {
  "type": "object",
  "title": "Variables",
  "properties": {
    "frequency": {
      "type": "integer",
      "title": "Frequency",
      "description": "Poll frequency in seconds",
      "default": 300,
      "order": 1
    },
    "language": {
      "type": "string",
      "title": "Language",
      "description": "Files in which language format should be scraped",
      "default": "All",
      "enum": [
        "All",
        "4CS",
        "6502 ACME Cross Assembler",
        "6502 Kick Assembler",
        "6502 TASM/64TASS",
        "ABAP",
        "ActionScript",
        "ActionScript 3",
        "Ada",
        "AIMMS",
        "ALGOL 68",
        "Apache Log",
        "AppleScript",
        "APT Sources",
        "ARM",
        "ASM (NASM)",
        "ASP",
        "Asymptote",
        "autoconf",
        "Autohotkey",
        "Autolt",
        "Avisynth",
        "Awk",
        "BASCOM AVR",
        "Bash",
        "Basic4GL",
        "Batch",
        "BibTeX",
        "Blitz Basic",
        "Blitz3D",
        "BLitzMax",
        "BNF",
        "BOO",
        "Brainfuck",
        "C",
        "C (WinAPI)",
        "C for Macs",
        "C Intermediate Language",
        "C#",
        "C++",
        "C++ (WinAPI)",
        "C++ (with Qt extensions)",
        "C: Loadrunner",
        "CAD DCL",
        "CAD Lisp",
        "CFDG",
        "ChaiScript",
        "Chapel",
        "Clojre",
        "Clone C",
        "Clone C++",
        "CMake",
        "COBOL",
        "CoffeeScript",
        "ColdFusion",
        "CSS",
        "Cuesheet",
        "D",
        "Dart",
        "DCL",
        "DCPU-16",
        "DCS",
        "Delphi",
        "Delphi Prism (Oxygene)",
        "Diff",
        "DIV",
        "DOT",
        "E",
        "Easytrieve",
        "ECMAScript",
        "Eiffel",
        "Email",
        "EPC",
        "Erlang",
        "Euphoria",
        "F#",
        "Falcon",
        "Filemaker",
        "FO Language",
        "Formula One",
        "Fortran",
        "FreeBasic",
        "FreeSWITCH",
        "GAMBAS",
        "Game Maker",
        "GDB",
        "Genero",
        "Genie",
        "GetText",
        "Go",
        "Groovy",
        "GwBasic",
        "Haskell",
        "Haxe",
        "HicEst",
        "HQ9 Plus",
        "HTML",
        "HTML 5",
        "Icon",
        "IDL",
        "INI file",
        "Inno Script",
        "INTERCAL",
        "IO",
        "ISPF Panel Definition",
        "J",
        "Java",
        "Java 5",
        "JavaScript",
        "JCL",
        "jQuery",
        "JSON",
        "Julia",
        "KiXtart",
        "Latex",
        "LDIF",
        "Liberty BASIC",
        "Linden Scripting",
        "Lisp",
        "LLVM",
        "Loco Basic",
        "Logtalk",
        "LOL Code",
        "Lotus Formulas",
        "Lotus Script",
        "LScrpt",
        "Lua",
        "M68000 Assembler",
        "MagikSF",
        "Make",
        "MapBasic",
        "Markdown",
        "MatLab",
        "mIRC",
        "MIX Assembler",
        "Modula 2",
        "Modula 3",
        "Motorola 68000 HiSoft Dev",
        "MPASM",
        "MXML",
        "MySQL",
        "Nagios",
        "NetRexx",
        "newLISP",
        "Nginx",
        "Nimrod",
        "None",
        "NullSoft Installer",
        "Oberon 2",
        "Objeck Programming Language",
        "Objective C",
        "OCalm Brief",
        "OCaml",
        "Octave",
        "Open Object Rexx",
        "OpenBSF PACKET FILTER",
        "OpenGL Shading",
        "Openoffice BASIC",
        "Oracle 11",
        "Oracle 8",
        "Oz",
        "ParaSail",
        "PARI/GP",
        "Pascal",
        "Pawn",
        "PCRE",
        "Per",
        "Perl",
        "Perl 6",
        "PHP",
        "PHP Brief",
        "Pic 16",
        "Pike",
        "Pixel Bender",
        "PL/I",
        "PL/SQL",
        "PostgreSQL",
        "PostScript",
        "POV-Ray",
        "Power Shell",
        "PowerBuilder",
        "ProFTPd",
        "Progress",
        "Prolog",
        "Properties",
        "ProvideX",
        "Puppet",
        "PureBasic",
        "PyCon",
        "Python",
        "Python for S60",
        "q/kdb+",
        "QBasic",
        "QML",
        "R",
        "Racket",
        "Rails",
        "RBScript",
        "REBOL",
        "REG",
        "Rexx",
        "Robots",
        "RPM Spec",
        "Ruby",
        "Ruby Gnuplot",
        "Rust",
        "SAS",
        "Scala",
        "Scheme",
        "Scilab",
        "SCL",
        "SdlBasic",
        "Smalltalk",
        "Smarty",
        "SPARK",
        "SPARQL",
        "SQF",
        "SQL",
        "StandardML",
        "StoneScript",
        "SuperCollider",
        "Swift",
        "SystemVerilog",
        "T-SQL",
        "TCL",
        "Tera Term",
        "text",
        "thinBasic",
        "TypoScript",
        "Unicon",
        "UnrealScript",
        "UPC",
        "Urbi",
        "Vala",
        "VB.NET",
        "VBScript",
        "Vedit",
        "VeriLog",
        "VHDL",
        "VIM",
        "Visual Pro Log",
        "VisualBasic",
        "VisualFoxPro",
        "WhiteSpace",
        "WHOIS",
        "Winbatch",
        "XBasic",
        "XML",
        "Xorg Config",
        "XPP",
        "YAML",
        "Z80 Assembler",
        "ZXBasic"
      ],
      "order": 3
    },
    "limit": {
      "type": "integer",
      "title": "Limit",
      "description": "Limit",
      "default": 100,
      "order": 4
    },
    "pattern": {
      "type": "string",
      "title": "Pattern",
      "description": "Plain text or regex to be used to find matches",
      "order": 2
    }
  },
  "required": [
    "pattern",
    "language"
  ]
}
    """)

    def __init__(self):
        super(self.__class__, self).__init__(self.schema)


class ScrapingOutput(komand.Output):
    schema = json.loads("""
   {
  "type": "object",
  "title": "Variables",
  "properties": {
    "paste": {
      "type": "object",
      "title": "List of paste objects",
      "description": "Paste",
      "order": 1
    }
  }
}
    """)

    def __init__(self):
        super(self.__class__, self).__init__(self.schema)
