% % acceptance vectors for Photoshop connection % page@sel < |Base wireop( %%% "phobase" log)( < |PhoTx wirex( %%% "photx" log)( dup !Pho.Result comment &; "LogValue" Url.(esc) Pho.! % % execute post vector after Photoshop returns data % _Pho.Result "Error: " within? { pop % % if we are processing xacts, mark this with a problem % _Xact.Process zeronull dupnzis { dup !Xact *xactfold "Problem" *shootern _Arching.Vm { *xactunrd } if } if _Xact.Process !Xact.Proced 0 !Xact.Process % % determine the recovery path from the pshop error % _DeskPs < |6 % % in listening mode, stop listener % this is a generic non-deskps error % "Tabber(6);" Pho.! 5 *pshpdskr |1 ~ |2 ~ |3 ~ |4 % % this is a deskps-caused error % "=" !Help.Url 4 *pshpdskr > not { % % this is a generic non-deskps error % 5 *pshpdskr } if } { lf 1 1 1 parse "*" atleft( { "*" right$ execstr } { pop } ifelse } ifelse |PhoDisc _Pho.Comm "phodisc" log)( { % % the connection to Photoshop was somehow terminated % false !Pho.Comm "Photoshop disconnected . . ." *phocsink } { % % keep trying to connect % "Connecting>>(long delay for Photoshop start)" *phocsink 5 !standoff %%% *pshpreup } ifelse |PhoConn true !Pho.Comm "Photoshop connected . . ." *phocsink _Pho.Command isnull { pop *jsphload &"doJS('Boot')" &; &"'Desk Operational'" &; } if "phoconn" log)( *phocomnd % % move to next deploy step % _Pho.Deploy any? { empty !Pho.Deploy *( } { "Photoshop" 1 *phoctoop } ifelse > not { false !found } if > *acceptun % % stack: found %