Merge pull request #31166 from schultzp2020/constructor-parameters

refactor: convert constructor parameter properties for erasableSyntaxOnly compatibility
This commit is contained in:
Patrik Oldsberg
2025-10-15 18:56:42 +02:00
committed by GitHub
187 changed files with 1893 additions and 728 deletions
@@ -22,8 +22,11 @@ const logger = mockServices.logger.mock();
class StaticTokenCredential implements TokenCredential {
private count: number = 0;
private expiryInMs: number;
constructor(private expiryInMs: number) {}
constructor(expiryInMs: number) {
this.expiryInMs = expiryInMs;
}
getToken(): Promise<AccessToken | null> {
this.count++;
@@ -36,10 +36,16 @@ export class AzureIdentityStrategy implements AuthenticationStrategy {
private accessToken: AccessToken = { token: '', expiresOnTimestamp: 0 };
private newTokenPromise: Promise<string> | undefined;
private readonly logger: LoggerService;
private readonly tokenCredential: TokenCredential;
constructor(
private readonly logger: LoggerService,
private readonly tokenCredential: TokenCredential = new DefaultAzureCredential(),
) {}
logger: LoggerService,
tokenCredential: TokenCredential = new DefaultAzureCredential(),
) {
this.logger = logger;
this.tokenCredential = tokenCredential;
}
public async getCredential(): Promise<KubernetesCredential> {
if (!this.tokenRequiresRefresh()) {
@@ -42,12 +42,22 @@ type GkeClusterLocatorOptions = {
};
export class GkeClusterLocator implements KubernetesClustersSupplier {
private readonly options: GkeClusterLocatorOptions;
private readonly client: container.v1.ClusterManagerClient;
private clusterDetails: ClusterDetails[] | undefined;
private hasClusterDetails: boolean;
constructor(
private readonly options: GkeClusterLocatorOptions,
private readonly client: container.v1.ClusterManagerClient,
private clusterDetails: ClusterDetails[] | undefined = undefined,
private hasClusterDetails: boolean = false,
) {}
options: GkeClusterLocatorOptions,
client: container.v1.ClusterManagerClient,
clusterDetails: ClusterDetails[] | undefined = undefined,
hasClusterDetails: boolean = false,
) {
this.options = options;
this.client = client;
this.clusterDetails = clusterDetails;
this.hasClusterDetails = hasClusterDetails;
}
static fromConfigWithClient(
config: Config,
@@ -33,10 +33,16 @@ import {
import { CatalogService } from '@backstage/plugin-catalog-node';
class CombinedClustersSupplier implements KubernetesClustersSupplier {
readonly clusterSuppliers: KubernetesClustersSupplier[];
readonly logger: LoggerService;
constructor(
readonly clusterSuppliers: KubernetesClustersSupplier[],
readonly logger: LoggerService,
) {}
clusterSuppliers: KubernetesClustersSupplier[],
logger: LoggerService,
) {
this.clusterSuppliers = clusterSuppliers;
this.logger = logger;
}
async getClusters(options: {
credentials: BackstageCredentials;
@@ -45,32 +45,26 @@ import {
KubernetesFanOutHandler,
} from './KubernetesFanOutHandler';
export class KubernetesInitializer {
constructor(
private readonly opts: {
fetcher?: KubernetesFetcherFactory;
authStrategyMap?: Map<string, AuthenticationStrategy>;
clusterSupplier?: KubernetesClusterSupplierFactory;
logger: LoggerService;
config: RootConfigService;
catalog: CatalogService;
auth: AuthService;
serviceLocator?: KubernetesServiceLocatorFactory;
objectsProvider?: KubernetesObjectsProviderFactory;
},
) {}
type Opts = {
fetcher?: KubernetesFetcherFactory;
clusterSupplier?: KubernetesClusterSupplierFactory;
serviceLocator?: KubernetesServiceLocatorFactory;
objectsProvider?: KubernetesObjectsProviderFactory;
authStrategyMap?: Map<string, AuthenticationStrategy>;
logger: LoggerService;
config: RootConfigService;
catalog: CatalogService;
auth: AuthService;
};
static create(opts: {
fetcher?: KubernetesFetcherFactory;
clusterSupplier?: KubernetesClusterSupplierFactory;
serviceLocator?: KubernetesServiceLocatorFactory;
objectsProvider?: KubernetesObjectsProviderFactory;
authStrategyMap?: Map<string, AuthenticationStrategy>;
logger: LoggerService;
config: RootConfigService;
catalog: CatalogService;
auth: AuthService;
}) {
export class KubernetesInitializer {
private readonly opts: Opts;
constructor(opts: Opts) {
this.opts = opts;
}
static create(opts: Opts) {
return new KubernetesInitializer(opts);
}
@@ -69,7 +69,11 @@ export class KubernetesRouter {
return new KubernetesRouter(env);
}
constructor(protected readonly env: KubernetesEnvironment) {}
protected readonly env: KubernetesEnvironment;
constructor(env: KubernetesEnvironment) {
this.env = env;
}
public async getRouter() {
const {