mirror of https://github.com/abpframework/abp.git
8 changed files with 110 additions and 46 deletions
@ -0,0 +1,4 @@ |
|||||
|
import { QueueManager } from "../utils/queue"; |
||||
|
import { InjectionToken } from "@angular/core"; |
||||
|
|
||||
|
export const QUEUE_MANAGER = new InjectionToken<QueueManager>("QUEUE_MANAGER"); |
||||
@ -0,0 +1,48 @@ |
|||||
|
export interface QueueManager { |
||||
|
add(fn: () => void): void; |
||||
|
init(interval: number, stackSize: number): void; |
||||
|
} |
||||
|
|
||||
|
export class DefaultQueueManager implements QueueManager { |
||||
|
private queue: Array<() => void> = []; |
||||
|
private isRunning = false; |
||||
|
private stack = 0; |
||||
|
private interval = 0; |
||||
|
private stackSize = 100; |
||||
|
|
||||
|
public init(interval: number, stackSize: number) { |
||||
|
this.interval = interval; |
||||
|
this.stackSize = stackSize; |
||||
|
} |
||||
|
|
||||
|
public add(fn: () => void) { |
||||
|
this.queue.push(fn); |
||||
|
this.run(); |
||||
|
} |
||||
|
|
||||
|
private run() { |
||||
|
if (this.isRunning) return; |
||||
|
this.stack++; |
||||
|
|
||||
|
this.isRunning = true; |
||||
|
|
||||
|
const fn = this.queue.shift(); |
||||
|
|
||||
|
if (!fn) { |
||||
|
this.isRunning = false; |
||||
|
return; |
||||
|
} |
||||
|
|
||||
|
fn(); |
||||
|
if (this.stack > this.stackSize) { |
||||
|
setTimeout(() => { |
||||
|
this.isRunning = false; |
||||
|
this.run(); |
||||
|
this.stack = 0; |
||||
|
}, this.interval); |
||||
|
} else { |
||||
|
this.isRunning = false; |
||||
|
this.run(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -1,31 +1,31 @@ |
|||||
{ |
{ |
||||
"ConnectionStrings": { |
"ConnectionStrings": { |
||||
"Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=MyProjectName;Trusted_Connection=True" |
"Default": "Server=localhost;Database=MyProjectNameHOossos;User Id=sa;password=myPassw0rd;MultipleActiveResultSets=true" |
||||
}, |
}, |
||||
"OpenIddict": { |
"OpenIddict": { |
||||
"Applications": { |
"Applications": { |
||||
"MyProjectName_Web": { |
"MyProjectName_Web": { |
||||
"ClientId": "MyProjectName_Web", |
"ClientId": "MyProjectName_Web", |
||||
"ClientSecret": "1q2w3e*", |
"ClientSecret": "1q2w3e*", |
||||
"RootUrl": "https://localhost:44302" |
"RootUrl": "https://localhost:44302" |
||||
}, |
}, |
||||
"MyProjectName_Blazor": { |
"MyProjectName_Blazor": { |
||||
"ClientId": "MyProjectName_Blazor", |
"ClientId": "MyProjectName_Blazor", |
||||
"RootUrl": "https://localhost:44307" |
"RootUrl": "https://localhost:44307" |
||||
}, |
}, |
||||
"MyProjectName_App": { |
"MyProjectName_App": { |
||||
"ClientId": "MyProjectName_App", |
"ClientId": "MyProjectName_App", |
||||
"RootUrl": "http://localhost:4200" |
"RootUrl": "http://localhost:4200" |
||||
}, |
}, |
||||
"MyProjectName_BlazorServerTiered": { |
"MyProjectName_BlazorServerTiered": { |
||||
"ClientId": "MyProjectName_BlazorServerTiered", |
"ClientId": "MyProjectName_BlazorServerTiered", |
||||
"ClientSecret": "1q2w3e*", |
"ClientSecret": "1q2w3e*", |
||||
"RootUrl": "https://localhost:44309" |
"RootUrl": "https://localhost:44309" |
||||
}, |
}, |
||||
"MyProjectName_Swagger": { |
"MyProjectName_Swagger": { |
||||
"ClientId": "MyProjectName_Swagger", |
"ClientId": "MyProjectName_Swagger", |
||||
"RootUrl": "https://localhost:44305" |
"RootUrl": "https://localhost:44305" |
||||
} |
} |
||||
|
} |
||||
} |
} |
||||
} |
|
||||
} |
} |
||||
|
|||||
@ -1,19 +1,19 @@ |
|||||
{ |
{ |
||||
"App": { |
"App": { |
||||
"SelfUrl": "https://localhost:44305", |
"SelfUrl": "https://localhost:44305", |
||||
"ClientUrl": "http://localhost:4200", |
"ClientUrl": "http://localhost:4200", |
||||
"CorsOrigins": "https://*.MyProjectName.com,http://localhost:4200,https://localhost:44307", |
"CorsOrigins": "https://*.MyProjectName.com,http://localhost:4200,https://localhost:44307", |
||||
"RedirectAllowedUrls": "http://localhost:4200,https://localhost:44307" |
"RedirectAllowedUrls": "http://localhost:4200,https://localhost:44307" |
||||
}, |
}, |
||||
"ConnectionStrings": { |
"ConnectionStrings": { |
||||
"Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=MyProjectName;Trusted_Connection=True" |
"Default": "Server=localhost;Database=MyProjectNameHOossos;User Id=sa;password=myPassw0rd;MultipleActiveResultSets=true" |
||||
}, |
}, |
||||
"AuthServer": { |
"AuthServer": { |
||||
"Authority": "https://localhost:44305", |
"Authority": "https://localhost:44305", |
||||
"RequireHttpsMetadata": "false", |
"RequireHttpsMetadata": "false", |
||||
"SwaggerClientId": "MyProjectName_Swagger" |
"SwaggerClientId": "MyProjectName_Swagger" |
||||
}, |
}, |
||||
"StringEncryption": { |
"StringEncryption": { |
||||
"DefaultPassPhrase": "gsKnGZ041HLL4IM8" |
"DefaultPassPhrase": "gsKnGZ041HLL4IM8" |
||||
} |
} |
||||
} |
} |
||||
|
|||||
Loading…
Reference in new issue