100 lines
2.1 KiB
TypeScript
100 lines
2.1 KiB
TypeScript
import type { Version } from '../common/types/Version.ts'
|
|
import type { AppProcessInfoParams } from '../process/types/AppProcessInfoParams.ts'
|
|
import type { WindowFormConfig } from '../window/types/WindowFormConfig.ts'
|
|
|
|
export class AppProcessInfo {
|
|
/**
|
|
* 应用进程名称
|
|
* @private
|
|
*/
|
|
private readonly _name: string;
|
|
|
|
/**
|
|
* 应用进程标题
|
|
* @private
|
|
*/
|
|
private readonly _title: string;
|
|
|
|
/**
|
|
* 应用进程描述
|
|
* @private
|
|
*/
|
|
private readonly _description: string;
|
|
|
|
/**
|
|
* 应用进程图标
|
|
* @private
|
|
*/
|
|
private readonly _icon: string;
|
|
|
|
/**
|
|
* 应用进程启动入口
|
|
* 对应windowFrom参数name
|
|
* @private
|
|
*/
|
|
private readonly _startName: string;
|
|
|
|
/**
|
|
* 应用版本信息
|
|
* @private
|
|
*/
|
|
private readonly _version: Version;
|
|
|
|
/**
|
|
* 应用是否只存在一个进程
|
|
* @private
|
|
*/
|
|
private readonly _singleton: boolean;
|
|
|
|
/**
|
|
* 是否只是一个进程
|
|
* @private
|
|
*/
|
|
private readonly _isJustProcess: boolean;
|
|
|
|
/**
|
|
* 进程所有的窗口配置信息
|
|
* @private
|
|
*/
|
|
private readonly _windowFormConfigs: Array<WindowFormConfig>;
|
|
|
|
constructor(info: AppProcessInfoParams) {
|
|
this._name = info.name;
|
|
this._title = info.title || '';
|
|
this._description = info.description || '';
|
|
this._icon = <string> info.icon;
|
|
this._startName = info.startName || '';
|
|
this._version = info.version || { company: 'XZG', major: 1, minor: 0, build: 0, private: 0 };
|
|
this._singleton = info.singleton;
|
|
this._isJustProcess = info.isJustProcess;
|
|
this._windowFormConfigs = info.windowFormConfigs || [];
|
|
}
|
|
|
|
public get name() {
|
|
return this._name;
|
|
}
|
|
public get title() {
|
|
return this._title;
|
|
}
|
|
public get description() {
|
|
return this._description;
|
|
}
|
|
public get icon() {
|
|
return this._icon;
|
|
}
|
|
public get startName() {
|
|
return this._startName;
|
|
}
|
|
public get version() {
|
|
return this._version;
|
|
}
|
|
public get singleton() {
|
|
return this._singleton;
|
|
}
|
|
public get isJustProcess() {
|
|
return this._isJustProcess;
|
|
}
|
|
public get windowFormConfigs() {
|
|
return this._windowFormConfigs;
|
|
}
|
|
} |