Enable Discovery debug logging for production troubleshooting

- Add DISCOVERY_LOG_LEVEL=debug
- Add DISCOVERY_SHOW_PROGRESS=true
- Temporary changes for debugging InitializerProcessor fixes on production
This commit is contained in:
2025-08-11 20:13:26 +02:00
parent 59fd3dd3b1
commit 55a330b223
3683 changed files with 2956207 additions and 16948 deletions

View File

@@ -4,40 +4,31 @@ declare(strict_types=1);
namespace App\Framework\Reflection;
use ReflectionClass;
use ReflectionMethod;
use ReflectionParameter;
use ReflectionProperty;
use App\Framework\Reflection\Contracts\AttributeReflector;
use App\Framework\Reflection\Contracts\CacheManager;
use App\Framework\Reflection\Contracts\ClassReflector;
use App\Framework\Reflection\Contracts\EnumReflector;
use App\Framework\Reflection\Contracts\InstantiationReflector;
use App\Framework\Reflection\Contracts\MethodReflector;
use App\Framework\Reflection\Contracts\ParameterReflector;
use App\Framework\Reflection\Contracts\PropertyReflector;
interface ReflectionProvider
/**
* Main reflection provider interface combining all reflection capabilities
*
* This interface extends all specialized reflector interfaces to provide
* a unified API for reflection operations. For more focused use cases,
* consider using the specialized interfaces directly.
*/
interface ReflectionProvider extends
ClassReflector,
MethodReflector,
PropertyReflector,
ParameterReflector,
AttributeReflector,
EnumReflector,
InstantiationReflector,
CacheManager
{
// Wrapped Objekte für erweiterte API
public function getWrappedClass(string $className): WrappedReflectionClass;
public function getWrappedMethod(string $className, string $methodName): WrappedReflectionMethod;
// Original Reflection Objekte
public function getClass(string $className): ReflectionClass;
public function getMethod(string $className, string $methodName): ReflectionMethod;
public function getMethodParameters(string $className, string $methodName): array;
public function getProperties(string $className): array;
public function getAttributes(string $className, ?string $attributeClass = null): array;
public function getMethodAttributes(string $className, string $methodName, ?string $attributeClass = null): array;
public function hasAttribute(string $className, string $attributeClass): bool;
public function getParameterInfo(string $className, string $methodName): array;
public function isInstantiable(string $className): bool;
public function implementsInterface(string $className, string $interfaceName): bool;
public function forget(string $className): void;
public function flush(): void;
// No additional methods required
}