2 * Licensed under the Apache License, Version 2.0 (the "License");
3 * you may not use this file except in compliance with the License.
4 * You may obtain a copy of the License at
6 * http://www.apache.org/licenses/LICENSE-2.0
8 * Unless required by applicable law or agreed to in writing, software
9 * distributed under the License is distributed on an "AS IS" BASIS,
10 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 * See the License for the specific language governing permissions and
12 * limitations under the License.
16 * @fileoverview Representation of a organization.
22 * Base interface for all organization objects.
24 * @name opensocial.Organization
29 * Base interface for all organization objects.
34 opensocial.Organization = function() {};
40 * All of the fields that a organization has. These are the supported keys for
41 * the <a href="opensocial.Organization.html#getField">
42 * Organization.getField()</a> method.
44 * @name opensocial.Organization.Field
46 opensocial.Organization.Field = {
48 * The name of the organization, specified as a string.
49 * For example, could be a school name or a job company.
50 * Container support for this field is OPTIONAL.
51 * This field may be used interchangeably with the string 'name'.
52 * @member opensocial.Organization.Field
57 * The title or role the person has in the organization, specified as a
58 * string. This could be graduate student, or software engineer.
59 * Container support for this field is OPTIONAL.
60 * This field may be used interchangeably with the string 'title'.
61 * @member opensocial.Organization.Field
66 * A description or notes about the person's work in the organization,
67 * specified as a string. This could be the courses taken by a student, or a
68 * more detailed description about a Organization role.
69 * Container support for this field is OPTIONAL.
70 * This field may be used interchangeably with the string 'description'.
71 * @member opensocial.Organization.Field
73 DESCRIPTION : 'description',
76 * The field the organization is in, specified as a string. This could be the
77 * degree pursued if the organization is a school.
78 * Container support for this field is OPTIONAL.
79 * This field may be used interchangeably with the string 'field'.
80 * @member opensocial.Organization.Field
85 * The subfield the Organization is in, specified as a string.
86 * Container support for this field is OPTIONAL.
87 * This field may be used interchangeably with the string 'subField'.
88 * @member opensocial.Organization.Field
90 SUB_FIELD : 'subField',
93 * The date the person started at the organization, specified as a Date.
94 * Container support for this field is OPTIONAL.
95 * This field may be used interchangeably with the string 'startDate'.
96 * @member opensocial.Organization.Field
98 START_DATE : 'startDate',
101 * The date the person stopped at the organization, specified as a Date.
102 * A null date indicates that the person is still involved with the
104 * Container support for this field is OPTIONAL.
105 * This field may be used interchangeably with the string 'endDate'.
106 * @member opensocial.Organization.Field
108 END_DATE : 'endDate',
111 * The salary the person receieves from the organization, specified as a
113 * Container support for this field is OPTIONAL.
114 * This field may be used interchangeably with the string 'salary'.
115 * @member opensocial.Organization.Field
120 * The address of the organization, specified as an opensocial.Address.
121 * Container support for this field is OPTIONAL.
122 * This field may be used interchangeably with the string 'address'.
123 * @member opensocial.Organization.Field
128 * A webpage related to the organization, specified as a string.
129 * Container support for this field is OPTIONAL.
130 * This field may be used interchangeably with the string 'webpage'.
131 * @member opensocial.Organization.Field
138 * Gets data for this body type that is associated with the specified key.
140 * @param {String} key The key to get data for;
141 * keys are defined in <a href="opensocial.Organization.Field.html"><code>
142 * Organization.Field</code></a>
143 * @param {Map.<opensocial.DataRequest.DataRequestFields, Object>}
144 * opt_params Additional
145 * <a href="opensocial.DataRequest.DataRequestFields.html">params</a>
146 * to pass to the request
147 * @return {String} The data
149 opensocial.Organization.prototype.getField = function(key, opt_params) {};