angular-odata
Version:
Client side OData typescript library for Angular
49 lines • 2.42 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.CsdlEntityContainer = void 0;
const csdl_entity_set_1 = require("./csdl-entity-set");
const csdl_singleton_1 = require("./csdl-singleton");
const csdl_function_action_1 = require("./csdl-function-action");
const csdl_annotation_1 = require("./csdl-annotation");
class CsdlEntityContainer extends csdl_annotation_1.CsdlAnnotable {
constructor(schema, { Name, Extend, EntitySet, Singleton, FunctionImport, ActionImport, Annotation, }) {
super({ Annotation });
this.schema = schema;
this.Name = Name;
this.Extend = Extend;
this.EntitySet = EntitySet === null || EntitySet === void 0 ? void 0 : EntitySet.map((e) => new csdl_entity_set_1.CsdlEntitySet(this, e));
this.Singleton = Singleton === null || Singleton === void 0 ? void 0 : Singleton.map((s) => new csdl_singleton_1.CsdlSingleton(this, s));
this.FunctionImport = FunctionImport === null || FunctionImport === void 0 ? void 0 : FunctionImport.map((f) => new csdl_function_action_1.CsdlFunctionImport(this, f));
this.ActionImport = ActionImport === null || ActionImport === void 0 ? void 0 : ActionImport.map((a) => new csdl_function_action_1.CsdlActionImport(this, a));
}
toJson() {
const json = Object.assign({}, super.toJson());
if (this.Extend !== undefined) {
json['Extend'] = this.Extend;
}
if (Array.isArray(this.EntitySet) && this.EntitySet.length > 0) {
json['EntitySet'] = this.EntitySet.map((a) => a.toJson());
}
if (Array.isArray(this.Singleton) && this.Singleton.length > 0) {
json['Singleton'] = this.Singleton.map((a) => a.toJson());
}
if (Array.isArray(this.FunctionImport) && this.FunctionImport.length > 0) {
json['FunctionImport'] = this.FunctionImport.map((a) => a.toJson());
}
if (Array.isArray(this.ActionImport) && this.ActionImport.length > 0) {
json['ActionImport'] = this.ActionImport.map((a) => a.toJson());
}
return json;
}
name() {
return `${this.Name}`;
}
namespace() {
return `${this.schema.Namespace}`;
}
fullName() {
return `${this.schema.Namespace}.${this.Name}`;
}
}
exports.CsdlEntityContainer = CsdlEntityContainer;
//# sourceMappingURL=csdl-entity-container.js.map
;