(function(window) { var Gitana = window.Gitana; Gitana.SystemMetadata = Base.extend( /** @lends Gitana.SystemMetadata.prototype */ { /** * @constructs * * @class System Metadata */ constructor: function() { this.base(); }, updateFrom: function(json) { // clear old system properties Gitana.deleteProperties(this, false); Gitana.copyInto(this, json); }, get: function(key) { return this[key]; }, /** * Retrieves the changeset id. * * @public * * @return the changeset id */ getChangesetId: function() { return this.get("changeset"); }, /** * Retrieves the name of the user who created this object. * * @public * * @return the user name of the creator */ getCreatedBy: function() { return this.get("created_by"); }, /** * Retrieves the id of the user who created this object. * * @public * * @return the user id of the creator */ getCreatedByPrincipalId: function() { return this.get("created_by_principal_id"); }, /** * Retrieves the domain id of the user who created this object. * * @public * * @return the user domain id of the creator */ getCreatedByPrincipalDomainId: function() { return this.get("created_by_principal_domain_id"); }, /* readCreatedByPrincipal: function(platform) { return this.subchain(platform).readDomain(this.getCreatedByPrincipalDomainId).readPrincipal(this.getCreatedByPrincipalId); }, */ /** * Retrieves the id of the user who modified this object. * * @public * * @return the user id of the modifier */ getModifiedBy: function() { return this.get("modified_by"); }, /** * Retrieves the id of the user who modified this object. * * @public * * @return the user id of the modifier */ getModifiedByPrincipalId: function() { return this.get("modified_by_principal_id"); }, /** * Retrieves the domain id of the user who modified this object. * * @public * * @return the user domain id of the modifier */ getModifiedByPrincipalDomainId: function() { return this.get("modified_by_principal_domain_id"); }, /* readModifiedByPrincipal: function(platform) { return this.subchain(platform).readDomain(this.getModifiedByPrincipalDomainId).readPrincipal(this.getModifiedByPrincipalId); }, */ /** * Retrieves the timestamp for creation of this object. * * @public * * @return creation timestamp */ getCreatedOn: function() { if (!this.createdOn) { this.createdOn = new Gitana.Timestamp(this.get("created_on")); } return this.createdOn; }, /** * Retrieves the timestamp for modification of this object. * * @public * * @return modification timestamp */ getModifiedOn: function() { if (!this.modifiedOn) { this.modifiedOn = new Gitana.Timestamp(this.get("modified_on")); } return this.modifiedOn; } }); })(window);