Marble Classes

/ An instance of this class is automatically created when creating new array variables. For example "new string[10]" /


/ This class must be held by all those creating or reading cookies /


/ This is the Cryptography class it is responsible for all things cryptography including encryption and hashing /


/ Responsible for handling all curl operations. Creating a new instance of this class will create a new Curl object allowing you to talk with a http server or use other services related to Curl /


/ Respresents a given date and time. Allows formatting and the ability to get a formatted string of the specified time based on the format provided. Simply put this handles all Date related operations /


/ Responsible for directory related actions /


/ This exception is thrown if the SQLDriver could not be resolved /


/ This class is responsible for everything relating to encoding. You will find routines for base64 encoding here. You can use this Encoder statically. Encoder.methodName(); /


/ Thrown if the function or class you are referencing does not exist. This is only applicable if you have ignored validation using the "@" operator. If validation is not ignored it will be caught by the validator automatically /


/ The Exception class is the highest possible class for exceptions. All exceptions are an instance of this Exception class. Extend this class to create an exception of your own /


/ Responsible for File operations /


Holds MultipartFile's that were uploaded to your apache2 web server


/ Responsible for reading from files. Input streams can be retrieved when opening files /


/ Responsible for outputting data to files. You can get a FileOutputStream object from a File once you have opened it /


/ The FileSession class provides Session functionality where the session is stored on the hard disk of the server /


/ This permission must be held if you wish to create system headers /


Throw if the action you are taking would result in a never ending loop that would cause the program to crash if it was not caught


/ To be extended by all those wishing to implement their own InputStream functionality /


/ The InternetProtocol class is responsible for resolving hostnames to ip addresses /


Thrown if your cast is illegal


/ Thrown if the particular entity is invalid /


Thrown if you access an invalid index in an array


IO

/ Responsible for I/O operations within the system /


/ Thrown in many cases where input/output has failed /


The IOPermission is required for accessing the Marble default input and output streams


/ The Ipv4Address holds an Ipv4 IP address that you can access /


/ Responsible for encoding and decoding json values /


/ The JsonValues is returned after parsing Json succesfully. Each JsonValues object acts as a map where it can hold multiple parsed json values by name and value. /


/ The List class is a pure class that holds is the base skeleton for all List classes that want to provide List functionality /


/ The Mail class is a pure abstract class that all mail senders should extend. /


Map

/ The Map class provides map functionality and allows Value's to be set or accessed through an index name /


/ Responsible for all math situations. Provides a handful of standard Math methods to assist you in your mathematical operations /


/ Holds file information for an uploaded file /


/ This represents a connection to a MysqlServer. /


/ This is the MysqlDriver it can be used to connect to a MysqlServer and execute statements /


/ The NetworkPermission must be held by all those who wish to preform network operations. The type of operation determines what attributes must be set within this NetworkPermission /


/ Thrown if you access an object that has a NULL reference /


/ This highest possible base class. All objects are an instance of this object. /


/ Thrown when you go out of bounds with a string /


/ The OutputStream is a pure class that represents an output stream. This class provides functionality to write, get, empty and print to a output stream You must extend this class if you are creating your own implementation of OutputStream. All output streams extend this class /


/ The base class of all permissions. Extend this class if you yourself are creating a marble permission of your own /


The PermissionException class is thrown when ever a permission violation has occured. When implementing your own permissions you throw this exception if the user is trying to do something they are not authorized to do


/ A PermissionProperty holds a name and a value and they are used for helping confirm weather or not a scope is allowed to add a Permission to a Permissions object /


/ Holds many Permission object's. Each scope is bound to a Permissions and whilst they are bounded to it they are restricted to what this object allows them to do. For example without a Permissions object in your scope with an IOPermission you will not be able to print or read input from the terminal or web client /


/ Holds POST content posted from a web client to your apache2 server /


/ The PreparedStatement is used with databases /


/ This is the Request class it is responsible for getting http request information from the web client when running a marble script in apache2. You can access the object directly in a static way. For example Request.getMethod() /


/ Holds request arguments sent to the web server. This is basically "GET" arguments /


/ Responsible for responding to the web client. This class is used for setting headers and cookies /


/ Allows you to send emails through Sendmail on your linux system. Requires that you have the sendmail binaries installed "/usr/lib/sendmail" /


/ The Session class is responsible for creating, accessing and maintaining sessions /


/ The SessionValues acts as a map and allows you to access session values by index. /


/ Responsible for executing shell commands /


/ An instance of this class is returned when you have created a shell execution. This class holds the response code from the shell you executed along with the response body /


/ If you hold this permission you can execute shell commands /


/ The SmtpMail class allows you to send emails through your SMTP account /


/ The SQLConnection class is the base class of all SQLConnection's and contains base class information such as pure methods /


/ The SQLDriver class is to be extended by all SQLDrivers you do not need to bother yourself with this unless you are wanting to create a SQLDriver of your own /


/ An instance of this class is thrown if their is an issue with your sql query /


/ Holds a single record extracted from a database /


The base class for all SQLStatements


/ The StringUtils class provides many methods to help manipulate strings within the marble language. These methods include the ability to split strings, get the length of strings, substr and more. A StringUtils object is created during the interpreter bootup so you can access this object directly with StringUtils.methodName(); /


/ Responsible for providing access to Marble system related entities /


/ Handles time operations /


/ The Value class holds either a string, number, boolean or Object /


Thrown if the variable you are trying to change has been locked and cannot be modified


/ The Vector class is a class that provided List functionality. This allows one to push and pop the Value objects which hold values of any type. /