|
|
|
<?php
|
|
|
|
/*
|
|
|
|
* Copyright © 2021 ExacTI Technology Solutions. All rights reserved.
|
|
|
|
* GPLv3 General License.
|
|
|
|
* https://exacti.com.br
|
|
|
|
* Phacil PHP Framework - https://github.com/exacti/phacil-framework
|
|
|
|
*/
|
|
|
|
|
|
|
|
namespace Phacil\Framework\Interfaces;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Action interface.
|
|
|
|
*
|
|
|
|
* @since 2.0.0
|
|
|
|
* @package Phacil\Framework\Interfaces
|
|
|
|
*/
|
|
|
|
interface Action {
|
|
|
|
|
|
|
|
const APP = "APP";
|
|
|
|
const SYSTEM = "SYSTEM";
|
|
|
|
const MAX_ROUTE_LENGTH = 255;
|
|
|
|
const REGEX_CLASS_SANITIZE = '/[^a-zA-Z0-9]/';
|
|
|
|
const REGEX_ROUTE_SANITIZE = '/[^a-zA-Z0-9_]/';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param string $route HTTP route for the respective controller
|
|
|
|
* @param array $args (Optional) Args to be pass for the method controller
|
|
|
|
* @param string $local (Optional) Set if the action is a system or app controller
|
|
|
|
* @return void
|
|
|
|
*/
|
|
|
|
public function __construct($route, $args = array(), $local = self::APP);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Return the controller file path
|
|
|
|
*
|
Controller child exception, Log, Response and Login
Action PHPDoc improvements, Controller child exception, Log new functions (getpath, getfilename, head and tail), log class check dir and creates if not exists, Response redirect improvement, Controller redirect function use the response redirect class, login interface documentation, login doc
3 years ago
|
|
|
* @since 1.0.0
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getFile();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Return the class of controller
|
|
|
|
*
|
Controller child exception, Log, Response and Login
Action PHPDoc improvements, Controller child exception, Log new functions (getpath, getfilename, head and tail), log class check dir and creates if not exists, Response redirect improvement, Controller redirect function use the response redirect class, login interface documentation, login doc
3 years ago
|
|
|
* @deprecated 2.0.0 This method return only legacy class. Use getClassAlt instead.
|
|
|
|
* @see \Phacil\Framework\Interfaces\Action::getClassAlt()
|
|
|
|
*
|
Controller child exception, Log, Response and Login
Action PHPDoc improvements, Controller child exception, Log new functions (getpath, getfilename, head and tail), log class check dir and creates if not exists, Response redirect improvement, Controller redirect function use the response redirect class, login interface documentation, login doc
3 years ago
|
|
|
* @since 1.0.0
|
|
|
|
* @return string */
|
|
|
|
public function getClass();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set the class of controller to be loaded
|
|
|
|
*
|
|
|
|
* @param string $class
|
|
|
|
* @return $this
|
|
|
|
*/
|
|
|
|
public function setClass($class);
|
|
|
|
|
|
|
|
/**
|
Controller child exception, Log, Response and Login
Action PHPDoc improvements, Controller child exception, Log new functions (getpath, getfilename, head and tail), log class check dir and creates if not exists, Response redirect improvement, Controller redirect function use the response redirect class, login interface documentation, login doc
3 years ago
|
|
|
* Get all possible classes for controller in the new 2.0 framework version
|
|
|
|
*
|
|
|
|
* @since 2.0.0
|
|
|
|
*
|
|
|
|
* @return array
|
|
|
|
*/
|
|
|
|
public function getClassAlt();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Return the method to be loaded
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
* @since 1.0.0
|
|
|
|
*/
|
|
|
|
public function getMethod();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Return the args
|
|
|
|
*
|
|
|
|
* @return array
|
|
|
|
* @since 1.0.0
|
|
|
|
*/
|
|
|
|
public function getArgs();
|
|
|
|
}
|