/** * R3.API.User * @param apiComponent * * @property googleId * @property fullName * @property givenName * @property familyName * @property imageUrl * @property email * @property uploadFolder * @property idToken * * @constructor */ R3.API.User = function( apiComponent ) { __API_COMPONENT__; if (R3.Utils.UndefinedOrNull(apiComponent.googleId)) { throw new Error('invalid user - no google ID'); } this.googleId = apiComponent.googleId; if (R3.Utils.UndefinedOrNull(apiComponent.fullName)) { apiComponent.fullName = 'unknown full name'; } this.fullName = apiComponent.fullName; if (R3.Utils.UndefinedOrNull(apiComponent.givenName)) { apiComponent.givenName = 'unknown given name'; } this.givenName = apiComponent.givenName; if (R3.Utils.UndefinedOrNull(apiComponent.familyName)) { apiComponent.familyName = 'unknown family name'; } this.familyName = apiComponent.familyName; if (R3.Utils.UndefinedOrNull(apiComponent.imageUrl)) { apiComponent.imageUrl = 'unknown image URL'; } this.imageUrl = apiComponent.imageUrl; if (R3.Utils.UndefinedOrNull(apiComponent.email)) { throw new Error('invalid user - no email address'); } this.email = apiComponent.email; if (R3.Utils.UndefinedOrNull(apiComponent.uploadFolder)) { apiComponent.uploadFolder = email.replace('/','_DS_'); } this.uploadFolder = apiComponent.uploadFolder; if (R3.Utils.UndefinedOrNull(apiComponent.idToken)) { apiComponent.idToken = 'unknown ID token'; } this.idToken = apiComponent.idToken; }; R3.API.User.prototype = Object.create(R3.API.Component.prototype); R3.API.User.prototype.constructor = R3.API.User;