Class OA2State
- java.lang.Object
-
- edu.uiuc.ncsa.qdl.state.AbstractState
-
- edu.uiuc.ncsa.qdl.state.ModuleState
-
- edu.uiuc.ncsa.qdl.state.NamespaceAwareState
-
- edu.uiuc.ncsa.qdl.state.VariableState
-
- edu.uiuc.ncsa.qdl.state.FunctionState
-
- edu.uiuc.ncsa.qdl.state.State
-
- org.oa4mp.server.loader.oauth2.scripting.qdl.OA2State
-
- All Implemented Interfaces:
edu.uiuc.ncsa.qdl.state.QDLConstants
,edu.uiuc.ncsa.security.core.Logable
,edu.uiuc.ncsa.security.util.scripting.StateInterface
,Serializable
public class OA2State extends edu.uiuc.ncsa.qdl.state.State
Created by Jeff Gaynor
on 10/9/20 at 4:45 PM- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class edu.uiuc.ncsa.qdl.state.VariableState
EXTRINSIC_MARKER, int_regex, var_regex
-
Fields inherited from class edu.uiuc.ncsa.qdl.state.NamespaceAwareState
NS_DELIMITER, RESERVED_NAMESPACE
-
Fields inherited from class edu.uiuc.ncsa.qdl.state.AbstractState
INTRINSIC_PREFIX, libPath, scriptArgs
-
Fields inherited from interface edu.uiuc.ncsa.qdl.state.QDLConstants
FUNCTION_REFERENCE_MARKER, FUNCTION_REFERENCE_MARKER2, JSON_QDL_NULL, RESERVED_FALSE, RESERVED_NULL, RESERVED_NULL_SET, RESERVED_TRUE, STEM_PATH_MARKER, STEM_PATH_MARKER2, SYS_ASSERT_CODE_SYSTEM_ERROR, SYS_BOOT, SYS_BOOT_BOOT_SCRIPT, SYS_BOOT_CONFIG_FILE, SYS_BOOT_CONFIG_NAME, SYS_BOOT_LOG_FILE, SYS_BOOT_LOG_NAME, SYS_BOOT_QDL_HOME, SYS_BOOT_RESTRICTED_IO_MODE, SYS_BOOT_SERVER_MODE, SYS_CODEC_ALGORITHMS, SYS_CODEC_B16CODE, SYS_CODEC_B32CODE, SYS_CODEC_B64CODE, SYS_CODEC_URLCODE, SYS_CODEC_VENCODE, SYS_DETOKENIZE_APPEND, SYS_DETOKENIZE_OMIT_DANGLING_DELIMITER, SYS_DETOKENIZE_PREPEND, SYS_DETOKENIZE_TYPE, SYS_ERROR_CODE_DEFAULT_USER_ERROR, SYS_ERROR_CODE_SYSTEM_ERROR, SYS_ERROR_CODES, SYS_FILE_TYPE_BINARY, SYS_FILE_TYPE_INIT, SYS_FILE_TYPE_STEM, SYS_FILE_TYPE_STRING, SYS_FILE_TYPES, SYS_HASH_ALGORITHMS, SYS_INFO_INIT_MEMORY, SYS_INFO_JVM_VERSION, SYS_INFO_OS, SYS_INFO_OS_ARCHITECTURE, SYS_INFO_OS_NAME, SYS_INFO_OS_VERSION, SYS_INFO_SYSTEM, SYS_INFO_SYSTEM_PROCESSORS, SYS_INFO_USER, SYS_INFO_USER_HOME_DIR, SYS_INFO_USER_INVOCATION_DIR, SYS_LOG_ERROR, SYS_LOG_INFO, SYS_LOG_LEVELS, SYS_LOG_NONE, SYS_LOG_SEVERE, SYS_LOG_TRACE, SYS_LOG_WARN, SYS_QDL_BUILD, SYS_QDL_BUILD_VERSION, SYS_QDL_VERSION, SYS_QDL_VERSION_BUILD_JDK, SYS_QDL_VERSION_BUILD_NUMBER, SYS_QDL_VERSION_BUILD_TIME, SYS_QDL_VERSION_CREATED_BY, SYS_SCRIPTS_PATH, SYS_VAR_TYPE_BOOLEAN, SYS_VAR_TYPE_CHARACTERS, SYS_VAR_TYPE_DECIMAL, SYS_VAR_TYPE_INTEGER, SYS_VAR_TYPE_NULL, SYS_VAR_TYPE_SET, SYS_VAR_TYPE_STEM, SYS_VAR_TYPE_STRING, SYS_VAR_TYPE_UNDEFINED, SYS_VAR_TYPES, URI_AUTHORITY, URI_FIELDS, URI_FRAGMENT, URI_HOST, URI_PATH, URI_PORT, URI_QUERY, URI_SCHEME, URI_SCHEME_SPECIFIC_PART, URI_USER_INFO
-
-
Constructor Summary
Constructors Constructor Description OA2State(edu.uiuc.ncsa.qdl.variables.VStack vStack, edu.uiuc.ncsa.qdl.evaluate.OpEvaluator opEvaluator, edu.uiuc.ncsa.qdl.evaluate.MetaEvaluator metaEvaluator, edu.uiuc.ncsa.qdl.functions.FStack ft, edu.uiuc.ncsa.qdl.module.MTStack mTemplates, edu.uiuc.ncsa.qdl.module.MIStack mInstance, edu.uiuc.ncsa.security.core.util.MyLoggingFacade myLoggingFacade, boolean isServerMode, boolean isRestrictedIO, boolean assertionsOn, boolean strictACLs, edu.uiuc.ncsa.security.util.jwk.JSONWebKeys keys)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<edu.uiuc.ncsa.security.core.Identifier>
getAclBlackList()
List<edu.uiuc.ncsa.security.core.Identifier>
getAclList()
List<edu.uiuc.ncsa.security.core.Identifier>
getAdminIDs()
edu.uiuc.ncsa.security.core.Identifier
getClientID()
edu.uiuc.ncsa.security.util.jwk.JSONWebKeys
getJsonWebKeys()
OA2SE
getOa2se()
javax.servlet.http.HttpServletRequest
getRequest()
OA2ServiceTransaction
getTransaction()
TXRecord
getTxRecord()
boolean
isStrictACLs()
If ACLs are enforced strictly.edu.uiuc.ncsa.qdl.state.State
newCleanState()
edu.uiuc.ncsa.qdl.state.State
newFunctionState()
edu.uiuc.ncsa.qdl.state.State
newInstance(edu.uiuc.ncsa.qdl.variables.VStack vStack, edu.uiuc.ncsa.qdl.evaluate.OpEvaluator opEvaluator, edu.uiuc.ncsa.qdl.evaluate.MetaEvaluator metaEvaluator, edu.uiuc.ncsa.qdl.functions.FStack fStack, edu.uiuc.ncsa.qdl.module.MTStack mTemplates, edu.uiuc.ncsa.qdl.module.MIStack mInstances, edu.uiuc.ncsa.security.core.util.MyLoggingFacade myLoggingFacade, boolean isServerMode, boolean isRestrictedIO, boolean assertionsOn)
edu.uiuc.ncsa.qdl.state.State
newLocalState()
void
readExtraXMLElements(XMLEvent xe, XMLEventReader xer)
void
setAclBlackList(List<edu.uiuc.ncsa.security.core.Identifier> aclBlackList)
void
setAclList(List<edu.uiuc.ncsa.security.core.Identifier> aclList)
void
setJsonWebKeys(edu.uiuc.ncsa.security.util.jwk.JSONWebKeys jsonWebKeys)
void
setOa2se(OA2SE oa2se)
void
setRequest(javax.servlet.http.HttpServletRequest request)
void
setStrictACLs(boolean strictACLs)
void
setTransaction(OA2ServiceTransaction transaction)
void
setTxRecord(TXRecord txRecord)
void
writeExtraXMLElements(XMLStreamWriter xsw)
-
Methods inherited from class edu.uiuc.ncsa.qdl.state.State
addLibEntries, addLibEntry, addManifestConstants, addModule, addVFSProvider, buildSO, createSystemConstants, createSystemInfo, doXMLImportedModules, fromXML, fromXML, getDebugUtil, getExtrinsicVars, getFileFromVFS, getInternalID, getLibMap, getScriptFromVFS, getStackSize, getStateID, getSystemConstants, getSystemInfo, getTargetState, getTempVariableName, getThreadTable, getVFS, getVfsFileProviders, getWorkspaceCommands, hasMountPoint, hasVFSProviders, injectTransientFields, isAllowBaseFunctionOverrides, isAssertionsOn, isRestrictedIO, isServerMode, isVFSFile, newLocalState, newStateWithImportsNEW, newStateWithImportsNEW, readExtraXMLAttributes, removeScriptProvider, removeVFSProvider, setAllowBaseFunctionOverrides, setAssertionsOn, setDebugUtil, setRestrictedIO, setServerMode, setStateID, setSystemConstants, setSystemInfo, setTargetState, setThreadTable, setVfsFileProviders, setWorkspaceCommands, toXML, toXML, writeExtraXMLAttributes
-
Methods inherited from class edu.uiuc.ncsa.qdl.state.FunctionState
getAllFunctionsByName, getFTStack, listAllDocumentation, listFunctionDoc, listFunctions, listFunctions, listModuleDoc, resolveFunction, resolveFunction, setFTStack
-
Methods inherited from class edu.uiuc.ncsa.qdl.state.VariableState
getValue, getValue, gsrNSScalarOp, gsrNSStemOp, isDefined, isExtrinsic, isStem, listVariables, remove, resolveStemIndex, resolveStemIndex, setValue, setValue
-
Methods inherited from class edu.uiuc.ncsa.qdl.state.ModuleState
getImportedModule, getMInstances, getMTemplates, isImportMode, setImportMode, setMInstances, setMTemplates
-
Methods inherited from class edu.uiuc.ncsa.qdl.state.AbstractState
debug, error, error, error, getIoInterface, getLibPath, getLogger, getMetaEvaluator, getModulePaths, getOperatorType, getOpEvaluator, getScriptArgs, getScriptArgStem, getScriptPaths, getScriptStack, getStateRegistry, getSuperState, getUuid, getVStack, hasLogging, hasScriptArgs, hasSuperState, info, isDebugOn, isEnableLibrarySupport, isIntrinsic, isPrintUnicode, pathToList, setDebugOn, setEnableLibrarySupport, setIoInterface, setLibPath, setLibPath, setLogger, setMetaEvaluator, setModulePaths, setModulePaths, setOpEvaluator, setPrintUnicode, setScriptArgs, setScriptArgStem, setScriptPaths, setScriptPaths, setScriptStack, setSuperState, setUuid, setvStack, warn
-
-
-
-
Constructor Detail
-
OA2State
public OA2State(edu.uiuc.ncsa.qdl.variables.VStack vStack, edu.uiuc.ncsa.qdl.evaluate.OpEvaluator opEvaluator, edu.uiuc.ncsa.qdl.evaluate.MetaEvaluator metaEvaluator, edu.uiuc.ncsa.qdl.functions.FStack ft, edu.uiuc.ncsa.qdl.module.MTStack mTemplates, edu.uiuc.ncsa.qdl.module.MIStack mInstance, edu.uiuc.ncsa.security.core.util.MyLoggingFacade myLoggingFacade, boolean isServerMode, boolean isRestrictedIO, boolean assertionsOn, boolean strictACLs, edu.uiuc.ncsa.security.util.jwk.JSONWebKeys keys)
-
-
Method Detail
-
newLocalState
public edu.uiuc.ncsa.qdl.state.State newLocalState()
- Overrides:
newLocalState
in classedu.uiuc.ncsa.qdl.state.State
-
newFunctionState
public edu.uiuc.ncsa.qdl.state.State newFunctionState()
- Overrides:
newFunctionState
in classedu.uiuc.ncsa.qdl.state.State
-
newCleanState
public edu.uiuc.ncsa.qdl.state.State newCleanState()
- Overrides:
newCleanState
in classedu.uiuc.ncsa.qdl.state.State
-
getJsonWebKeys
public edu.uiuc.ncsa.security.util.jwk.JSONWebKeys getJsonWebKeys()
-
setJsonWebKeys
public void setJsonWebKeys(edu.uiuc.ncsa.security.util.jwk.JSONWebKeys jsonWebKeys)
-
setStrictACLs
public void setStrictACLs(boolean strictACLs)
-
isStrictACLs
public boolean isStrictACLs()
If ACLs are enforced strictly. Strictly means that no access control list is ok, connoting general access. Strict ACLs means there must be an exact match of one of the identifiers.
Setting this true in the configuration (with theOA2ConfigurationLoader.STRICT_ACLS
attribute of the qdl tag) will lock down the server so that nothing can execute unless everything is granted explicit permission. Use this wisely.- Returns:
-
getAclList
public List<edu.uiuc.ncsa.security.core.Identifier> getAclList()
-
setAclList
public void setAclList(List<edu.uiuc.ncsa.security.core.Identifier> aclList)
-
getAclBlackList
public List<edu.uiuc.ncsa.security.core.Identifier> getAclBlackList()
-
setAclBlackList
public void setAclBlackList(List<edu.uiuc.ncsa.security.core.Identifier> aclBlackList)
-
getTxRecord
public TXRecord getTxRecord()
-
setTxRecord
public void setTxRecord(TXRecord txRecord)
-
getTransaction
public OA2ServiceTransaction getTransaction()
-
setTransaction
public void setTransaction(OA2ServiceTransaction transaction)
-
getOa2se
public OA2SE getOa2se()
-
setOa2se
public void setOa2se(OA2SE oa2se)
-
getRequest
public javax.servlet.http.HttpServletRequest getRequest()
-
setRequest
public void setRequest(javax.servlet.http.HttpServletRequest request)
-
getAdminIDs
public List<edu.uiuc.ncsa.security.core.Identifier> getAdminIDs()
-
getClientID
public edu.uiuc.ncsa.security.core.Identifier getClientID()
-
readExtraXMLElements
public void readExtraXMLElements(XMLEvent xe, XMLEventReader xer) throws XMLStreamException
- Overrides:
readExtraXMLElements
in classedu.uiuc.ncsa.qdl.state.State
- Throws:
XMLStreamException
-
writeExtraXMLElements
public void writeExtraXMLElements(XMLStreamWriter xsw) throws XMLStreamException
- Overrides:
writeExtraXMLElements
in classedu.uiuc.ncsa.qdl.state.State
- Throws:
XMLStreamException
-
newInstance
public edu.uiuc.ncsa.qdl.state.State newInstance(edu.uiuc.ncsa.qdl.variables.VStack vStack, edu.uiuc.ncsa.qdl.evaluate.OpEvaluator opEvaluator, edu.uiuc.ncsa.qdl.evaluate.MetaEvaluator metaEvaluator, edu.uiuc.ncsa.qdl.functions.FStack fStack, edu.uiuc.ncsa.qdl.module.MTStack mTemplates, edu.uiuc.ncsa.qdl.module.MIStack mInstances, edu.uiuc.ncsa.security.core.util.MyLoggingFacade myLoggingFacade, boolean isServerMode, boolean isRestrictedIO, boolean assertionsOn)
- Overrides:
newInstance
in classedu.uiuc.ncsa.qdl.state.State
-
-