All Downloads are FREE. Search and download functionalities are using the official Maven repository.

features.opensocial-reference.message.js Maven / Gradle / Ivy

Go to download

Packages all the features that shindig provides into a single jar file to allow loading from the classpath

The newest version!
/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

/*global opensocial */

/**
 * @fileoverview Representation of a message.
 */


/**
 * @class
 * Base interface for all message objects.
 *
 * 

* See also: * opensocial.newMessage(), * * opensocial.requestSendMessage() * * @name opensocial.Message */ /** * Base interface for all message objects. * * @param {string} body_or_params The main text of the message. * @param {Object.=} opt_params Any other * fields that should be set on the message object. All of the defined * Fields are supported. * @private * @constructor * @deprecated since 1.0 see http://opensocial-resources.googlecode.com/svn/spec/1.0/Social-Gadget.xml#rfc.section.A.37. */ opensocial.Message = function(body_or_params, opt_params) { if (typeof body_or_params == 'string') { // We have a string this.fields_ = opt_params || {}; this.fields_[opensocial.Message.Field.BODY] = body_or_params; } else { this.fields_ = body_or_params || {}; } }; /** * @static * @class * All of the fields that messages can have. * *

* See also: * opensocial.Message.getField() *

* * @name opensocial.Message.Field * @enum {string} * @const * @deprecated since 1.0 see http://opensocial-resources.googlecode.com/svn/spec/1.0/Social-Gadget.xml#rfc.section.A.38. */ opensocial.Message.Field = { /** * The URL of the application that generated this message, if applicable. * @member opensocial.Message.Field */ APP_URL: 'appUrl', /** * The main text of the message. HTML attributes are allowed and are * sanitized by the container. * @member opensocial.Message.Field * @const */ BODY: 'body', /** * The main text of the message as a message template. Specifies the * message ID to use in the gadget xml. * @member opensocial.Message.Field */ BODY_ID: 'bodyId', /** * Collection IDs this Message belongs to * @member opensocial.Message.Field */ COLLECTION_IDS: 'collectionIds', /** * The Unique ID of this message. * @member opensocial.Message.Field */ ID: 'id', /** * The Parent ID of this message. Useful for message threading. * @member opensocial.Message.Field */ PARENT_ID: 'parentId', /** * The Recipients of this message. * @member opensocial.Message.Field */ RECIPIENTS: 'recipients', /** * The Person ID that sent this message. * @member opensocial.Message.Field */ SENDER_ID: 'senderId', /** * The Status of this message. Specified as an opensocial.Message.Status. */ STATUS: 'status', /** * The time this message was sent. */ TIME_SENT: 'timeSent', /** * The title of the message. HTML attributes are allowed and are * sanitized by the container. * @member opensocial.Message.Field */ TITLE: 'title', /** * The title of the message as a message template. Specifies the * message ID to use in the gadget xml. * @member opensocial.Message.Field */ TITLE_ID: 'titleId', /** * The title of the message, specified as an opensocial.Message.Type. * @member opensocial.Message.Field */ TYPE: 'type', /** * The last updated time of this message. * @member opensocial.Message.Field */ UPDATED: 'updated', /** * Urls associated with this message, specified as an array of opensocial.Url */ URLS: 'urls' }; /** * @static * @class * The types of messages that can be sent. * * @name opensocial.Message.Type */ opensocial.Message.Type = { /** * An email. * * @member opensocial.Message.Type */ EMAIL: 'email', /** * A short private message. * * @member opensocial.Message.Type */ NOTIFICATION: 'notification', /** * A message to a specific user that can be seen only by that user. * * @member opensocial.Message.Type */ PRIVATE_MESSAGE: 'privateMessage', /** * A message to a specific user that can be seen by more than that user. * @member opensocial.Message.Type */ PUBLIC_MESSAGE: 'publicMessage' }; /** * @static * @class * The different status states of a message. * @name opensocial.Message.Status */ opensocial.Message.Status = { /** * A new, unread message * @member opensocial.Message.Status */ NEW: 'new', /** * A deleted message * @member opensocial.Message.Status */ DELETED: 'deleted', /** * A flagged message * @member opensocial.Message.Status */ FLAGGED: 'flagged' }; /** * Gets the message data that's associated with the specified key. * * @param {string} key The key to get data for; * see the Field class * for possible values. * @param {Object.} * opt_params Additional * params * to pass to the request. * @return {string} The data. * @member opensocial.Message * @deprecated since 1.0 see http://opensocial-resources.googlecode.com/svn/spec/1.0/Social-Gadget.xml#rfc.section.A.37.1.1. */ opensocial.Message.prototype.getField = function(key, opt_params) { return opensocial.Container.getField(this.fields_, key, opt_params); }; /** * Sets data for this message associated with the given key. * * @param {string} key The key to set data for. * @param {string} data The data to set. * @deprecated since 1.0 see http://opensocial-resources.googlecode.com/svn/spec/1.0/Social-Gadget.xml#rfc.section.A.37.1.2. */ opensocial.Message.prototype.setField = function(key, data) { return (this.fields_[key] = data); };




© 2015 - 2025 Weber Informatics LLC | Privacy Policy