Inheritance diagram for esiTry:
Collaboration diagram for esiTry:

Public Types

enum  ESIElementType_t {
  ESI_ELEMENT_NONE ,
  ESI_ELEMENT_INCLUDE ,
  ESI_ELEMENT_COMMENT ,
  ESI_ELEMENT_REMOVE ,
  ESI_ELEMENT_TRY ,
  ESI_ELEMENT_ATTEMPT ,
  ESI_ELEMENT_EXCEPT ,
  ESI_ELEMENT_VARS ,
  ESI_ELEMENT_CHOOSE ,
  ESI_ELEMENT_WHEN ,
  ESI_ELEMENT_OTHERWISE ,
  ESI_ELEMENT_ASSIGN
}
 
typedef RefCount< ESIElementPointer
 

Public Member Functions

 esiTry (esiTreeParentPtr aParent)
 
 ~esiTry () override
 
void render (ESISegment::Pointer) override
 
bool addElement (ESIElement::Pointer) override
 
void fail (ESIElement *, char const *=nullptr) override
 
esiProcessResult_t process (int dovars) override
 
void provideData (ESISegment::Pointer data, ESIElement *source) override
 
Pointer makeCacheable () const override
 
Pointer makeUsable (esiTreeParentPtr, ESIVarState &) const override
 
void finish () override
 
virtual bool mayFail () const
 

Static Public Member Functions

static ESIElementType_t IdentifyElement (const char *)
 

Public Attributes

ESIElement::Pointer attempt
 
ESIElement::Pointer except
 
struct {
   unsigned int   attemptok:1
 
   unsigned int   exceptok:1
 
   unsigned int   attemptfailed:1
 
   unsigned int   exceptfailed:1
 
flags
 

Private Member Functions

 MEMPROXY_CLASS (esiTry)
 
void notifyParent ()
 
 esiTry (esiTry const &)
 
esiProcessResult_t bestAttemptRV () const
 

Private Attributes

esiTreeParentPtr parent
 
ESISegment::Pointer exceptbuffer
 

Detailed Description

Definition at line 124 of file Esi.cc.

Member Typedef Documentation

◆ Pointer

Definition at line 46 of file Element.h.

Member Enumeration Documentation

◆ ESIElementType_t

Enumerator
ESI_ELEMENT_NONE 
ESI_ELEMENT_INCLUDE 
ESI_ELEMENT_COMMENT 
ESI_ELEMENT_REMOVE 
ESI_ELEMENT_TRY 
ESI_ELEMENT_ATTEMPT 
ESI_ELEMENT_EXCEPT 
ESI_ELEMENT_VARS 
ESI_ELEMENT_CHOOSE 
ESI_ELEMENT_WHEN 
ESI_ELEMENT_OTHERWISE 
ESI_ELEMENT_ASSIGN 

Definition at line 49 of file Element.h.

Constructor & Destructor Documentation

◆ esiTry() [1/2]

esiTry::esiTry ( esiTreeParentPtr  aParent)

Definition at line 1628 of file Esi.cc.

References flags.

Referenced by makeCacheable(), and makeUsable().

◆ ~esiTry()

esiTry::~esiTry ( )
override

Definition at line 1623 of file Esi.cc.

References debugs.

◆ esiTry() [2/2]

esiTry::esiTry ( esiTry const &  )
private

Definition at line 1823 of file Esi.cc.

References attempt, except, exceptbuffer, flags, and parent.

Member Function Documentation

◆ addElement()

bool esiTry::addElement ( ESIElement::Pointer  element)
overridevirtual

Reimplemented from ESIElement.

Definition at line 1658 of file Esi.cc.

References attempt, DBG_IMPORTANT, debugs, except, and RefCount< C >::getRaw().

◆ bestAttemptRV()

esiProcessResult_t esiTry::bestAttemptRV ( ) const
private

Definition at line 1694 of file Esi.cc.

References ESI_PROCESS_COMPLETE, ESI_PROCESS_PENDING_MAYFAIL, and flags.

Referenced by process().

◆ fail()

void esiTry::fail ( ESIElement source,
char const *  anError = nullptr 
)
overridevirtual

Reimplemented from esiTreeParent.

Definition at line 1794 of file Esi.cc.

References assert, attempt, debugs, except, flags, and notifyParent().

◆ finish()

void esiTry::finish ( )
overridevirtual

Implements ESIElement.

Definition at line 1870 of file Esi.cc.

References attempt, except, ESIElement::finish(), RefCount< C >::getRaw(), and parent.

◆ IdentifyElement()

◆ makeCacheable()

ESIElement::Pointer esiTry::makeCacheable ( ) const
overridevirtual

Implements ESIElement.

Definition at line 1836 of file Esi.cc.

References esiTry(), attempt, debugs, except, RefCount< C >::getRaw(), and ESIElement::makeCacheable().

◆ makeUsable()

ESIElement::Pointer esiTry::makeUsable ( esiTreeParentPtr  newParent,
ESIVarState newVarState 
) const
overridevirtual

Implements ESIElement.

Definition at line 1852 of file Esi.cc.

References esiTry(), attempt, debugs, except, RefCount< C >::getRaw(), ESIElement::makeUsable(), and parent.

◆ mayFail()

virtual bool ESIElement::mayFail ( ) const
inlinevirtualinherited

Reimplemented in esiSequence.

Definition at line 77 of file Element.h.

Referenced by ESIContext::send().

◆ MEMPROXY_CLASS()

esiTry::MEMPROXY_CLASS ( esiTry  )
private

◆ notifyParent()

void esiTry::notifyParent ( )
private

◆ process()

◆ provideData()

void esiTry::provideData ( ESISegment::Pointer  data,
ESIElement source 
)
overridevirtual

◆ render()

void esiTry::render ( ESISegment::Pointer  output)
overridevirtual

Member Data Documentation

◆ attempt

ESIElement::Pointer esiTry::attempt

Definition at line 140 of file Esi.cc.

Referenced by esiTry(), addElement(), fail(), finish(), makeCacheable(), makeUsable(), process(), provideData(), and render().

◆ attemptfailed

unsigned int esiTry::attemptfailed

Definition at line 146 of file Esi.cc.

◆ attemptok

unsigned int esiTry::attemptok

Definition at line 144 of file Esi.cc.

◆ except

◆ exceptbuffer

ESISegment::Pointer esiTry::exceptbuffer
private

Definition at line 154 of file Esi.cc.

Referenced by esiTry(), notifyParent(), provideData(), and render().

◆ exceptfailed

unsigned int esiTry::exceptfailed

Definition at line 147 of file Esi.cc.

◆ exceptok

unsigned int esiTry::exceptok

Definition at line 145 of file Esi.cc.

◆ 

struct { ... } esiTry::flags

◆ parent

esiTreeParentPtr esiTry::parent
private

Definition at line 153 of file Esi.cc.

Referenced by esiTry(), finish(), makeUsable(), notifyParent(), and provideData().


The documentation for this class was generated from the following file:

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors