 Library | |
  Application | |
   Applications.py | This file defines a base application class, which is responsible for driving the operations of the overall script |
   BufferedCGIApplications.py | This file defines an application class that handles a CGI environment which buffers its output |
   CGIApplications.py | This file defines an application class that handles a CGI environment |
  Base | |
   Classwork.py | This file defines and implements the base class, from which all others are derived |
   Events.py | This file extends AnObject with routines that allow the object to generate and manage events |
   Exceptions.py | This file defines and implements the base exception class from which all exceptions in arena are derived |
  DataSource | |
   Databases.py | This file defines a class that specializes ADataSource to apply to databases, as well as a class that represents data operations (such as queries) executed against a database |
   DataRows.py | This file defines classes that represent rows of data retrieved from a data source |
   DataSources.py | This file defines and implements a generic class for data source access |
   Queries.py | This file defines and implements several generic classes that represent queries which can be executed against a data source (such as a database) |
  HTTP | |
   HTTPRequests.py | This file defines a class that consolidates the various variables related to an HTTP request |
  IO | |
   CGI | |
    BufferedResponses.py | This file defines a stream class that can be used to buffer output from a CGI script |
   HTTP | |
    RequestInfo.py | This file defines several classes that help to consolidate the various variables related to an HTTP request |
    Requests.py | This file defines a class that consolidates the various variables related to an HTTP request |
   Logging | |
    Counters.py | This file defines a class that implements a simple counter |
    Logs.py | This file defines and implements a class for logging messages and errors |
   XML | |
    XMLTags.py | This file defines some classes that make outputting HTML tags more elegant |
   FileStreams.py | This file defines classes for interacting with file streams containing binary data |
   Streams.py | This file defines the base stream class, from which all other streams in arena are derived |
  Memory | |
   BinaryTrees.py | This file defines and implements a class that manages a binary tree and a class that represents a generic node in that tree |
   Dictionaries.py | This file defines and implements a class that acts much like a Python dictionary object, with a few additional features |
   Nodes.py | This file defines a class to represent a node in a hierarchical, doubly-linked list |
   StringTrees.py | This file defines and implements a class that stores a string value as a name |
  Parse | |
   Lex | |
    Languages.py | This file defines a class that aids in determining the semantics of a computer language |
    Opcodes.py | This file defines a class that binds an opcode to a token string |
   Scan | |
    Scanners.py | This file defines classes that are used by a parser to tokenize a source stream |
    SourceScanners.py | This file defines a class that scans a source stream using a computer language specification |
    Tokens.py | This file defines several classes that are used to retrieve tokens from a stream |
   Semantic | |
    SourceStatements.py | This file defines a class that represents a single statement parsed from a source stream |
    Statements.py | This file defines a class that represents a single statement parsed from a source stream |
   Errors.py | This file defines error, warning, and hint classes that are used by a parser to log diagnostic information |
   Parsers.py | This file defines a class that parses a source stream |
   SourceParsers.py | This file defines a class that parses a source stream |
   Symbols.py | This file defines the various symbol types that may appear in a symbol table |
   SymbolTables.py | This file defines and implements classes that manage symbol tables and collections of symbol tables |
  String | |
   Utilities.py | This file defines a utility class that can be used to work with Python strings |
  UI | |
   Channels.py | This file expands upon ADataRow in order to provide a standard for "channels", which allow content and content providers to be categorized |
   ContentFromDataSource.py | This file extends AContentProvider to allow content to be retrieved from a data source |
   ContentProviders.py | This file defines a basic content provider class, from which all other content providers for arena should descend |
   Posts.py | This file defines a class to manage a single post |
   Views.py | This file defines a class that manages a view, which parses content provided to it and returns a string containing the parsed content |
 Local | |
  Configuration.py | This file defines settings that affect how arena will work on your site |
 Plugins | |
  Application | |
   Arena | |
    ArenaMediators.py | This file extends AContentMediator to customize it for use with the default arena setup |
    Posting.py | This file defines and implements a content mediator that is used to create and edit posts |
    UserAuthentication.py | This file defines and implements a user authentication engine, which is a subclass of AViewpoint that handles user authentication (logins) |
    Viewpoints.py | This file defines and implements a viewpoint, which is a custom instance of AnEngine that is responsible for displaying a view or template to a remote user |
   Mediators.py | This file defines the basic content mediator for arena |
  Content | |
   Parse | |
    Lex | |
     c.py | This file defines a class that helps to determine the semantics of the C computer language, for syntax highlighting |
     Languages.py | This file defines several classes that aid in determining the semantics of a Markdown-style computer language |
     python.py | This file defines a class that helps to determine the semantics of the Python computer language, for syntax highlighting |
    Semantic | |
     CustomMarkdownStatements.py | This file extends AMarkdownStatement to allow it to handle code blocks that require syntax highlighting |
     MarkdownPreStatements.py | This file defines several classes that represent Markdown-style statements that are parsed during a pre-scan of a source stream |
     MarkdownStatements.py | This file defines several classes that represent Markdown-style statements parsed from a source stream |
    MarkdownParsers.py | This file defines a class that parses a Markdown-style source stream |
    Symbols.py | This file defines custom symbol types for arena |
   PerUser | |
    Arena | |
     AttachManagement.py | This file extends AnArenaParsedContentProvider to allow post attachments to be managed and searched |
     Attachments.py | This file defines a class to manage a single arena attachment |
     ChannelsList.py | This file extends AnArenaContentProvider to produce a list of channels that is appropriate for the current user |
     ContentProviders.py | This file customizes ADataSourceContentProvider to work with the default setup for arena |
     PostEditing.py | This file extends AnArenaParsedContentProvider to allow users with the appropriate permissions to add and edit content (posts) within channels |
     Posts.py | This file defines a class to manage a single arena post |
     PostsWithHighlighting.py | This file extends AnArenaPost to allow for syntax highlighting within code blocks |
     UserAuthentication.py | This file defines and implements a user authentication engine, which is a subclass of AnArenaContentProvider that handles user authentication (logins) |
  DataSource | |
   MySQL | |
    Databases.py | This file defines a class that extends ADataSource to allow connections to be made to MySQL databases |
    DictionaryCursors.py | This file defines a class that extends MySQLCursor to return query rows as dictionary objects |
    Queries.py | This file extends the basic query types, allowing them to represent queries and operations executed against a MySQL data source |
   DataLists.py | This file defines a class that manages a list of data retrieved from a data source |
   SQLQueries.py | This file defines a query class that can be used as the basis for SQL queries executed against a database |
  Session | |
   Arena | |
    Sessions.py | This file customizes the ADataSession class to apply to arena engine instances |
   DataSessions.py | This file defines a class which can be used to manage sessions which are stored in a data source |
   Sessions.py | This file defines a class which can be used to manage sessions, such as those undertaken with a remote user over HTTP |
  User | |
   Arena | |
    Users.py | This file customizes ASubscribedUser for use with the various arena engines |
   GroupedUsers.py | This file defines a class to manage a user that is part of one or more groups |
   Groups.py | This file defines a class that manages a list of groups to which a specific user may belong |
   SubscribedUsers.py | This file defines a class to manage a user that is part of one or more groups which are subscribed to a particular channel |
   Subscriptions.py | This file defines a class that manages a list of subscriptions which define the access rights of a specific group |
   Users.py | This file expands upon the ADataRow class to allow the retrieval and modification of a user record for arena |
  View | |
   PerUser | |
    Arena | |
     Views.py | This file customizes the AJinja2View class to meet the needs of arena |
   Jinja2Views.py | This file defines a class that manages a jinja view, which is a jinja template that formats the output retrieved from a channel |
 viewpoint.py | This file defines the main entry point for arena: where the client request, the content, and its display all come together |