File tree Expand file tree Collapse file tree
packages/Ecotone/src/Messaging/Handler/Gateway Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -65,6 +65,9 @@ private function loadProxyClass(GatewayProxyReference $proxyReference): string
6565 {
6666 if (! self ::isLoaded ($ proxyReference )) {
6767 $ file = $ this ->generateCachedProxyFileFor ($ proxyReference , ! $ this ->serviceCacheConfiguration ->shouldUseCache ());
68+ if (! file_exists ($ file )) {
69+ $ file = $ this ->generateCachedProxyFileFor ($ proxyReference , true );
70+ }
6871 require $ file ;
6972 }
7073
@@ -116,8 +119,13 @@ private function dumpFile(string $fileName, string $code): void
116119
117120 $ tmpFileName = $ fileName . '. ' . bin2hex (random_bytes (12 ));
118121
119- file_put_contents ($ tmpFileName , $ code );
122+ if (file_put_contents ($ tmpFileName , $ code ) === false ) {
123+ throw ConfigurationException::create ("Failed to write proxy cache file {$ tmpFileName }" );
124+ }
120125 @chmod ($ tmpFileName , 0664 );
121- rename ($ tmpFileName , $ fileName );
126+ if (rename ($ tmpFileName , $ fileName ) === false ) {
127+ @unlink ($ tmpFileName );
128+ throw ConfigurationException::create ("Failed to rename proxy cache file from {$ tmpFileName } to {$ fileName }" );
129+ }
122130 }
123131}
You can’t perform that action at this time.
0 commit comments