http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/registry/artifacts.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/artifacts.js b/products/stratos/conf/temp-artifacts/carbon/scripts/registry/artifacts.js deleted file mode 100644 index a05e567..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/artifacts.js +++ /dev/null @@ -1,595 +0,0 @@ -/* - * - * 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. - * -*/ - -(function (server, registry) { - - var log = new Log(); - - var GenericArtifactManager = Packages.org.wso2.carbon.governance.api.generic.GenericArtifactManager; - var GenericArtifactFilter = Packages.org.wso2.carbon.governance.api.generic.GenericArtifactFilter; - var ByteArrayInputStream = Packages.java.io.ByteArrayInputStream; - var QName = Packages.javax.xml.namespace.QName; - var IOUtils = Packages.org.apache.commons.io.IOUtils; - var PrivilegedCarbonContext = Packages.org.wso2.carbon.context.PrivilegedCarbonContext; //Used regard tenant details - var CarbonContext = Packages.org.wso2.carbon.context.CarbonContext; - var MultitenantConstants = Packages.org.wso2.carbon.utils.multitenancy.MultitenantConstants; - var List = java.util.List; - var Map = java.util.Map; - var ArrayList = java.util.ArrayList; - var HashMap = java.util.HashMap; - - var GovernanceUtils = Packages.org.wso2.carbon.governance.api.util.GovernanceUtils;//Used to obtain Asset Types - var DEFAULT_MEDIA_TYPE = 'application/vnd.wso2.registry-ext-type+xml';//Used to obtain Asset types - var PaginationContext = Packages.org.wso2.carbon.registry.core.pagination.PaginationContext;//Used for pagination on register - - var REGISTRY_ABSOLUTE_PATH = "/_system/governance"; - - var HISTORY_PATH_SEPERATOR = '_'; - var ASSET_PATH_SEPERATOR = '/'; - var lcHistoryRegExpression = new RegExp(ASSET_PATH_SEPERATOR, 'g'); - var HISTORY_PATH = '/_system/governance/_system/governance/repository/components/org.wso2.carbon.governance/lifecycles/history/'; - - - var buildArtifact = function (manager, artifact) { - return { - id: String(artifact.id), - type: String(manager.type), - path: "/_system/governance" + String(artifact.getPath()), - lifecycle: artifact.getLifecycleName(), - lifecycleState: artifact.getLifecycleState(), - mediaType: String(artifact.getMediaType()), - attributes: (function () { - var i, name, - names = artifact.getAttributeKeys(), - length = names.length, - attributes = {}; - for (i = 0; i < length; i++) { - name = names[i]; - - var data = artifact.getAttributes(name); - - //Check if there is only one element - if (data.length == 1) { - attributes[name] = String(artifact.getAttribute(name)); - } - else { - attributes[name] = data; - } - } - return attributes; - }()), - content: function () { - return new Stream(new ByteArrayInputStream(artifact.getContent())); - } - }; - }; - - var createArtifact = function (manager, options) { - var name, attribute, i, length, lc, - artifact = manager.newGovernanceArtifact(new QName(options.name)), - attributes = options.attributes; - for (name in attributes) { - if (attributes.hasOwnProperty(name)) { - attribute = attributes[name]; - if (attribute instanceof Array) { - /*length = attribute.length; - for (i = 0; i < length; i++) { - artifact.addAttribute(name, attribute[i]); - }*/ - artifact.setAttributes(name, attribute); - } else { - artifact.setAttribute(name, attribute); - } - } - } - if (options.id) { - artifact.id = options.id; - } - if (options.content) { - if (options.content instanceof Stream) { - artifact.setContent(IOUtils.toByteArray(options.content.getStream())); - } else { - artifact.setContent(new java.lang.String(options.content).getBytes()); - } - } - lc = options.lifecycles; - if (lc) { - length = lc.length; - for (i = 0; i < length; i++) { - artifact.attachLifeCycle(lc[i]); - } - } - return artifact; - }; - - var ArtifactManager = function (registry, type) { - this.registry = registry; - this.manager = new GenericArtifactManager(registry.registry.getChrootedRegistry("/_system/governance"), type); - this.type = type; - }; - registry.ArtifactManager = ArtifactManager; - - ArtifactManager.prototype.find = function (fn, paging) { - var i, length, artifacts, - artifactz = []; - artifacts = this.manager.findGenericArtifacts(new GenericArtifactFilter({ - matches: function (artifact) { - return fn(buildArtifact(this, artifact)); - } - })); - length = artifacts.length; - for (i = 0; i < length; i++) { - artifactz.push(buildArtifact(this, artifacts[i])); - } - return artifactz; - }; - - - /* - * this funtion is used ArtifactManager find with map for query for solr basicly - * query - for maping attribute of resource - * pagin - pagination details - * return - list of artifacts under the seach request - * - */ - ArtifactManager.prototype.search = function (query, paging) { - - var list, map, key, artifacts, pagination, value, that, - artifactz = []; - pagination = generatePaginationForm(paging); - try { - PaginationContext.init(pagination.start, pagination.count, pagination.sortOrder, - pagination.sortBy, pagination.paginationLimit); - map = HashMap(); - //case senstive search as it using greg with solr 1.4.1 - if (!query) { - //listing for sorting - map = java.util.Collections.emptyMap(); - } else if (query instanceof String || typeof query === 'string') { - list = new ArrayList(); - list.add('*' + query + '*'); - map.put('overview_name', list); - } else { - //support for only on name of attribut - - for (key in query) { - // if attribute is string values - if (query.hasOwnProperty(key)) { - value = query[key]; - list = new ArrayList(); - if (value instanceof Array) { - value.forEach(function (val) { - //solr config update need have '*' as first char in below line - //check life_cycle state - list.add(key == 'lcState' ? val : '*' + val + '*'); - }); - } else { - //solr config update need have '*' as first char in below line - list.add(key == 'lcState' ? value : '*' + value + '*'); - } - map.put(key, list); - } - }//end of attribut looping (all attributes) - } - artifacts = this.manager.findGenericArtifacts(map); - that = this; - artifacts.forEach(function (artifact) { - artifactz.push(buildArtifact(that, artifact)); - }); - } finally { - PaginationContext.destroy(); - } - return artifactz; - }; - - ArtifactManager.prototype.get = function (id) { - return buildArtifact(this, this.manager.getGenericArtifact(id)) - }; - - ArtifactManager.prototype.count = function () { - return this.manager.getAllGenericArtifactIds().length; - }; - - /** - * @deprecated Please use search method instead - * @param paging - * @return {*} - */ - ArtifactManager.prototype.list = function (paging) { - return this.search(null, paging); - }; - - /* - The function returns an array of asset types - @mediaType - The media type of the assets - @return An array of strings containing the asset paths - */ - ArtifactManager.prototype.getAssetTypePaths = function (mediaType) { - - //Use the default media type if one is not provided - if (!mediaType) { - mediaType = DEFAULT_MEDIA_TYPE; - } - - //var assetArray=GovernanceUtils.findGovernanceArtifacts(mediaType,this.registry); - var result = Packages.org.wso2.carbon.governance.api.util.GovernanceUtils.findGovernanceArtifacts(mediaType, registry.registry); - - return result; - //Create an empty array if no asset types are found - //return (!assetArray)?[]:assetArray; - }; - - /* - { - name: 'AndroidApp1', - attributes: { - overview_status: "CREATED", - overview_name: 'AndroidApp1', - overview_version: '1.0.0', - overview_url: 'http://overview.com', - overview_provider: 'admin', - images_thumbnail: 'http://localhost:9763/portal/gadgets/co2-emission/thumbnail.jpg', - images_banner: 'http://localhost:9763/portal/gadgets/electric-power/banner.jpg' - }, - lifecycles : ['lc1', 'lc2'], - content : '<?xml ....>' - } - */ - ArtifactManager.prototype.add = function (options) { - this.manager.addGenericArtifact(createArtifact(this.manager, options)); - }; - - ArtifactManager.prototype.update = function (options) { - this.manager.updateGenericArtifact(createArtifact(this.manager, options)); - }; - - ArtifactManager.prototype.remove = function (id) { - this.manager.removeGenericArtifact(id); - }; - - /* - Attaches the provided lifecycle name to the artifact - @lifecycleName: The name of a valid lifecycle.The lifecycle should be visible to the - registry. - @options: The artifact to which the life cycle must be attached. - */ - ArtifactManager.prototype.attachLifecycle = function (lifecycleName, options) { - var artifact = getArtifactFromImage(this.manager, options); - if (!artifact) { - throw new Error('Specified artifact cannot be found : ' + JSON.stringify(options)); - } - artifact.attachLifecycle(lifecycleName); - }; - - /* - Removes the attached lifecycle from the artifact - @options: The artifact from which the life cycle must be removed - */ - ArtifactManager.prototype.detachLifecycle = function (options) { - var artifact = getArtifactFromImage(this.manager, options); - if (!artifact) { - throw new Error('Specified artifact cannot be found : ' + JSON.stringify(options)); - } - artifact.detachLifecycle(); - }; - - /* - Promotes the artifact to the next stage in its life cycle - @options: An artifact image (Not a real artifact) - */ - ArtifactManager.prototype.promoteLifecycleState = function (state, options) { - var checkListItems, - artifact = getArtifactFromImage(this.manager, options); - if (!artifact) { - throw new Error('Specified artifact cannot be found : ' + JSON.stringify(options)); - } - //checkListItems = artifact.getAllCheckListItemNames(); - artifact.invokeAction(state); - }; - - /* - Gets the current lifecycle state - @options: An artifact object - @returns: The life cycle state - */ - ArtifactManager.prototype.getLifecycleState = function (options) { - var artifact = getArtifactFromImage(this.manager, options); - if (!artifact) { - throw new Error('Specified artifact cannot be found : ' + JSON.stringify(options)); - } - return artifact.getLifecycleState(); - }; - - /* - The function returns the list of check list items for a given state - @options: The artifact - @returns: A String array containing the check list items.(Can be empty if no check list items are present) - */ - ArtifactManager.prototype.getCheckListItemNames = function (options) { - var artifact = getArtifactFromImage(this.manager, options); - - var checkListItems = artifact.getAllCheckListItemNames() || []; - - var checkListItemArray = []; - - //Go through each check list item - for (var index in checkListItems) { - //Get whether the check list item is checked - var state = artifact.isLCItemChecked(index); - checkListItemArray.push({ 'name': checkListItems[index], 'checked': state }); - } - - return checkListItemArray; - }; - - /* - The function checks whether a given check list item at the provided index is checked for the current state - @index: The index of the check list item.This must be a value between 0 and the maximum check list item - that appears in the lifecycle definition - @options: An artifact object - @throws Exception: If the index is not within 0 and the max check list item or if there is an issue ticking the item - */ - ArtifactManager.prototype.isItemChecked = function (index, options) { - - var artifact = getArtifactFromImage(this.manager, options); - - var checkListItems = artifact.getAllCheckListItemNames(); - - var checkListLength = checkListItems.length; - - if ((index < 0) || (index > checkListLength)) { - throw "The index value: " + index + " must be between 0 and " + checkListLength + ".Please refer to the lifecycle definition in the registry.xml for the number of check list items."; - } - - var result = artifact.isLCItemChecked(index); - - return result; - }; - - /* - The method enables the check list item and the given index - @index: The index of the check list item.This must be a value between 0 and the maximum check list item - that appears in the lifecycle definition. - @options: An artifact object - @throws Exception: If the index is not within 0 and max check list item or if there is an issue ticking the item. - */ - ArtifactManager.prototype.checkItem = function (index, options) { - - var artifact = getArtifactFromImage(this.manager, options); - - var checkListItems = artifact.getAllCheckListItemNames(); - - var checkListLength = checkListItems.length; - - if ((index < 0) || (index > checkListLength)) { - throw "The index value: " + index + " must be between 0 and " + checkListLength + ".Please refer to the lifecycle definition in the registry.xml for the number of check list items."; - } - - artifact.checkLCItem(index); - }; - - /* - The method disables the check list item at the given index - @index: The index of the check list item.This must be a value between 0 and the maximum check list item - that appears in the lifecycle definition - @options: An artifact object - @throws Exception: If the index is not within 0 and max check list item or if there is an issue ticking the item - */ - ArtifactManager.prototype.uncheckItem = function (index, options) { - - var artifact = getArtifactFromImage(this.manager, options); - - var checkListItems = artifact.getAllCheckListItemNames(); - - var checkListLength = checkListItems.length; - - if ((index < 0) || (index > checkListLength)) { - throw "The index value: " + index + " must be between 0 and " + checkListLength + ".Please refer to the lifecycle definition in the registry.xml for the number of check list items."; - } - - artifact.uncheckLCItem(index); - }; - - /* - The method obtains the list of all available actions for the current state of the asset - @options: An artifact object - @returns: The list of available actions for the current state,else false - */ - ArtifactManager.prototype.availableActions = function (options) { - var artifact = getArtifactFromImage(this.manager, options); - if (!artifact) { - throw new Error('Specified artifact cannot be found : ' + JSON.stringify(options)); - } - return artifact.getAllLifecycleActions() || []; - }; - - /* - The function returns the life-cycle history path using - the provided asset. - @options: An asset. - @return: A string path of the life-cycle history. - */ - ArtifactManager.prototype.getLifecycleHistoryPath = function (options) { - - return getHistoryPath(options.path); - }; - - /* - The function obtains the lifecycle history for the provided asset - @options: An asset with a valid path.(A path which exists in the registry - @return: A resource object containing the history as an xml - */ - ArtifactManager.prototype.getLifecycleHistory=function(options){ - var historyPath=getHistoryPath(options.path); - return this.registry.get(historyPath); - }; - - /* - The function returns the life-cycle attached to the provided artifact - @options: An asset as returned by the ArtifactManager get method - @return: A string indicating the lifecycle name.If the artifact does not - have a life-cycle then an empty string is returned. - */ - ArtifactManager.prototype.getLifeCycleName = function (options) { - - var artifact = getArtifactFromImage(this.manager, options); - - var lifecycleName = ''; - - if (artifact != null) { - lifecycleName = artifact.getLifecycleName(); - } - - return lifecycleName; - }; - - /* - The function returns all versions of the provided artifact - @options: The artifact to be checked - @return: A list of all the different versions of the provided asset - */ - ArtifactManager.prototype.getAllAssetVersions = function (assetName) { - - var matchingArtifacts = []; - - var pred = { - overview_name: assetName || '' - }; - - this.find(function (artifact) { - - //Add to the matches if the artifact exists - if (assert(artifact.attributes, pred)) { - - //We only need the id and version - matchingArtifacts.push({id: artifact.id, version: artifact.attributes.overview_version}); - } - }); - - return matchingArtifacts; - }; - - /* - The function checks if the two objects a and b are equal.If a property in b is not - in a, then both objects are assumed to be different. - @a: The object to be compared - @b: The object containing properties that must match in a - @return: True if the objects are equal,else false. - */ - var assert = function (a, b) { - - //Assume the objects will be same - var equal = true; - - for (var key in b) { - - - if (a.hasOwnProperty(key)) { - - //If the two keys are not equal - if (a[key] != b[key]) { - return false; - } - } - else { - return false; - } - } - - return equal; - }; - - /* - The function generates the history path of a given asset - using its path - @assetPath:The path of the asset to be retrieved. - @return: The path of lifecycle history information - */ - var getHistoryPath = function (assetPath) { - - //Replace the / in the assetPath - var partialHistoryPath = assetPath.replace(lcHistoryRegExpression, HISTORY_PATH_SEPERATOR); - - var fullPath = HISTORY_PATH + partialHistoryPath; - - return fullPath; - }; - - /* - generatePaginationForm will genrate json for registry pagination context, (pagination consistent handling) - @pagin:The pagination details from UI - @ - */ - var generatePaginationForm = function (pagin) { - - //pagination context for default - var paginationLimit = 300; - var paginationForm = { - 'start': 0, - 'count': 12, - 'sortOrder': 'ASC', - 'sortBy': 'overview_name', - 'paginationLimit': 2147483647 - }; - - if (!pagin) { - return paginationForm; - } - - if (pagin.count != null) { - paginationForm.count = pagin.count; - } - if (pagin.start != null) { - paginationForm.start = pagin.start; - } - if (pagin.paginationLimit != null) { - paginationForm.paginationLimit = pagin.paginationLimit; - } - if (pagin.sortBy != null) { - paginationForm.sortBy = pagin.sortBy; - } - if (paginationForm.sortOrder != null) { - paginationForm.sortOrder = pagin.sortOrder; - } - return paginationForm; - - }; - - /* - Helper function to create an artifact instance from a set of options (an image). - */ - var getArtifactFromImage = function (manager, options) { - - var path = options.path || ''; - var lcName = options.lifecycle || ''; - var artifact = createArtifact(manager, { - id: options.id, - attributes: options.attributes - }); - - path = path.replace(REGISTRY_ABSOLUTE_PATH, ''); - - artifact.setArtifactPath(path); - artifact.setLcName(lcName); - - return artifact; - }; - -}(server, registry));
http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-osgi.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-osgi.js b/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-osgi.js deleted file mode 100644 index eefbaad..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-osgi.js +++ /dev/null @@ -1,466 +0,0 @@ -/* - * - * 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. - * -*/ - -var registry = registry || {}; - -(function (server, registry) { - var log = new Log(); - - var Resource = Packages.org.wso2.carbon.registry.core.Resource; - - var Collection = Packages.org.wso2.carbon.registry.core.Collection; - - var Comment = Packages.org.wso2.carbon.registry.core.Comment; - - var StaticConfiguration = Packages.org.wso2.carbon.registry.core.config.StaticConfiguration; - - var queryPath = '/_system/config/repository/components/org.wso2.carbon.registry/queries/'; - - var content = function (registry, resource, paging) { - if (resource instanceof Collection) { - // #1 : this always sort children by name, so sorting cannot be done for the chunk - return children(registry, resource, paging); - } - if (resource instanceof Comment) { - return String(resource.getText()); - } - var stream = resource.getContentStream(); - if (stream) { - return new Stream(stream); - } - return String(resource.content); - }; - - var resourceSorter = function (key) { - var nameAsc = function (l, r) { - var lname, rname; - if (l instanceof Collection) { - lname = l.getName(); - lname = lname.substring(lname.lastIndexOf('/') + 1); - } else { - lname = l.name; - } - if (r instanceof Collection) { - rname = r.getName(); - rname = rname.substring(rname.lastIndexOf('/') + 1); - } else { - rname = r.name; - } - return lname === rname ? 0 : (lname > rname ? 1 : -1); - }; - switch (key) { - case 'time-created-asc' : - return function (l, r) { - return l.getCreatedTime().getTime() - r.getCreatedTime().getTime(); - }; - case 'time-created-des' : - return function (l, r) { - return r.getCreatedTime().getTime() - l.getCreatedTime().getTime(); - }; - case 'name-asc' : - return nameAsc; - case 'name-des' : - return function (l, r) { - return -nameAsc(l, r); - }; - default: - return resourceSorter('time-created-des'); - } - }; - - var children = function (registry, resource, paging) { - var resources = resource.getChildren(); - //we have to manually sort this due to the bug in registry.getChildren() (#1 above) - //resources.sort(resourceSorter(paging.sort)); - return resources.slice(paging.start, paging.start + paging.count); - }; - - var resource = function (registry, resource) { - var path = String(resource.path), - o = { - created: { - author: String(resource.authorUserName), - time: resource.createdTime.time - }, - content: content(registry, resource, { - start: 0, - count: 10 - }), - id: String(resource.id), - version: resource.versionNumber - }; - if (resource instanceof Comment) { - return o; - } - if (resource instanceof Collection) { - o.collection = (resource instanceof Collection); - } - o.uuid = String(resource.UUID); - o.path = String(path); - o.name = String(resource.name) || resolveName(path); - o.description = String(resource.description); - o.updated = { - author: String(resource.lastUpdaterUserName), - time: resource.lastModified.time - }; - o.mediaType = String(resource.mediaType); - o.properties = function () { - return properties(resource); - }; - o.aspects = function () { - return aspects(resource); - }; - return o; - }; - - var properties = function (resource) { - var prop, - properties = resource.properties, - props = properties.keySet().toArray(), - length = props.length, - o = {}; - for (var i = 0; i < length; i++) { - prop = props[i]; - o[prop] = resource.getPropertyValues(prop).toArray(); - } - return o; - }; - - var aspects = function (resource) { - var aspects = resource.getAspects(); - return aspects ? aspects.toArray() : []; - }; - - var resolveName = function (path) { - path = path.charAt(path.length - 1) === '/' ? path.substring(0, path.length - 1) : path; - return path.substring(path.lastIndexOf('/') + 1); - }; - - var merge = function (def, options) { - if (options) { - for (var op in def) { - if (def.hasOwnProperty(op)) { - def[op] = options[op] || def[op]; - } - } - } - return def; - }; - - var Registry = function (serv, options) { - var registryService = server.osgiService('org.wso2.carbon.registry.core.service.RegistryService'), - carbon = require('carbon'); - if (options) { - this.server = serv; - } else { - this.server = new server.Server(); - options = serv || {}; - } - - if (options.tenantId) { - this.tenantId = options.tenantId; - } else if (options.username || options.domain) { - this.tenantId = server.tenantId({ - domain: options.domain, - username: options.username - }); - } else { - this.tenantId = server.tenantId(); - } - - if (options.username) { - this.username = options.username; - } else if (options.system) { - this.username = carbon.user.systemUser; - } else { - this.username = carbon.user.anonUser; - } - - this.registry = registryService.getRegistry(this.username, this.tenantId); - this.versioning = { - comments: StaticConfiguration.isVersioningComments() - }; - }; - - registry.Registry = Registry; - - Registry.prototype.put = function (path, resource) { - var res; - if (resource.collection) { - res = this.registry.newCollection(); - } else { - res = this.registry.newResource(); - if (resource.content instanceof Stream) { - res.contentStream = resource.content.getStream(); - } else { - res.content = resource.content || null; - } - res.mediaType = resource.mediaType || null; - } - res.name = resource.name; - res.description = resource.description || null; - res.UUID = resource.uuid || null; - - var values, length, i, ArrayList, - properties = resource.properties; - if (properties) { - ArrayList = java.util.ArrayList; - for (var name in properties) { - var list = new ArrayList(); - if (properties.hasOwnProperty(name)) { - values = properties[name]; - values = values instanceof Array ? values : [values]; - length = values.length; - for (i = 0; i < length; i++) { - list.add(values[i]); - } - res.setProperty(name, list); - } - } - } - - var aspects = resource.aspects; - if (aspects) { - length = aspects.length; - for (i = 0; i < length; i++) { - res.addAspect(aspects[i]); - } - } - - this.registry.put(path, res); - }; - - Registry.prototype.remove = function (path) { - this.registry.delete(path); - }; - - Registry.prototype.move = function (src, dest) { - this.registry.move(src, dest); - }; - - Registry.prototype.rename = function (current, newer) { - this.registry.rename(current, newer); - }; - - Registry.prototype.copy = function (src, dest) { - this.registry.copy(src, dest); - }; - - Registry.prototype.restore = function (path) { - this.registry.restoreVersion(path); - }; - - Registry.prototype.get = function (path) { - if (!this.exists(path)) { - return null; - } - var res = this.registry.get(path); - return resource(this, res); - }; - - Registry.prototype.exists = function (path) { - return this.registry.resourceExists(path); - }; - - Registry.prototype.content = function (path, paging) { - if (!this.exists(path)) { - return null; - } - var resource = this.registry.get(path); - paging = merge({ - start: 0, - count: 10, - sort: 'recent' - }, paging); - return content(this, resource, paging); - }; - - Registry.prototype.tags = function (path) { - var tags, i, length, - tagz = []; - tags = this.registry.getTags(path); - length = tags.length; - for (i = 0; i < length; i++) { - tagz.push(String(tags[i].tagName)); - } - return tagz; - }; - - Registry.prototype.tag = function (path, tags) { - var i, length; - tags = tags instanceof Array ? tags : [tags]; - length = tags.length; - for (i = 0; i < length; i++) { - this.registry.applyTag(path, tags[i]); - } - }; - - Registry.prototype.untag = function (path, tags) { - var i, length; - tags = tags instanceof Array ? tags : [tags]; - length = tags.length; - for (i = 0; i < length; i++) { - this.registry.removeTag(path, tags[i]); - } - }; - - Registry.prototype.associate = function (src, dest, type) { - this.registry.addAssociation(src, dest, type); - }; - - Registry.prototype.dissociate = function (src, dest, type) { - this.registry.removeAssociation(src, dest, type); - }; - - Registry.prototype.associations = function (path, type) { - var i, asso, - assos = type ? this.registry.getAssociations(path, type) : this.registry.getAllAssociations(path), - length = assos.length, - associations = []; - for (i = 0; i < length; i++) { - asso = assos[i]; - associations.push({ - type: String(asso.associationType), - src: String(asso.sourcePath), - dest: String(asso.destinationPath) - }); - } - return associations; - }; - - Registry.prototype.addProperty = function (path, name, value) { - var resource = this.registry.get(path); - resource.addProperty(name, value); - }; - - Registry.prototype.removeProperty = function (path, name, value) { - var resource = this.registry.get(path); - (value ? resource.removePropertyValue(name, value) : resource.removeProperty(name)); - }; - - Registry.prototype.properties = function (path) { - var resource = this.registry.get(path); - return properties(resource); - }; - - Registry.prototype.version = function (path) { - this.registry.createVersion(path); - }; - - Registry.prototype.versions = function (path) { - return this.registry.getVersions(path); - }; - - Registry.prototype.unversion = function (path, snapshot) { - this.registry.removeVersionHistory(path, snapshot); - }; - - Registry.prototype.comment = function (path, comment) { - this.registry.addComment(path, new Comment(comment)); - }; - - Registry.prototype.comments = function (path, paging) { - var i, length, comments, comment, key, - commentz = []; - paging = merge({ - start: 0, - count: 25, - sort: 'recent' - }, paging); - - comments = this.registry.getComments(path); - //we have to manually sort this due to the bug in registry.getChildren() (#1 above) - key = paging.sort; - key = (key === 'time-created-des' || key === 'time-created-asc') ? key : 'time-created-des'; - comments = comments.sort(resourceSorter(key)); - comments = comments.slice(paging.start, paging.start + paging.count); - length = comments.length; - for (i = 0; i < length; i++) { - comment = comments[i]; - commentz.push({ - content: comment.getText(), - created: { - author: comment.getUser(), - time: comment.getCreatedTime().getTime() - }, - path: comment.getCommentPath() - }); - } - return commentz; - }; - - Registry.prototype.commentCount = function (path) { - return this.registry.getComments(path).length; - }; - - Registry.prototype.uncomment = function (path) { - this.registry.removeComment(path); - }; - - Registry.prototype.rate = function (path, rating) { - this.registry.rateResource(path, rating); - }; - - Registry.prototype.unrate = function (path) { - this.registry.rateResource(path, 0); - }; - - Registry.prototype.rating = function (path, username) { - var rating = { - average: this.registry.getAverageRating(path) - }; - if (username) { - rating.user = this.registry.getRating(path, username); - } - return rating; - }; - - Registry.prototype.link = function (path, target) { - return this.registry.createLink(path, target); - }; - - Registry.prototype.unlink = function (path) { - return this.registry.removeLink(path); - }; - - Registry.prototype.search = function (query, paging) { - var res = this.registry.searchContent(query); - paging = merge({ - start: 0, - count: 10, - sort: 'recent' - }, paging); - return res ? content(this, res, paging) : []; - }; - - Registry.prototype.query = function (path, params) { - var res, name, - map = new java.util.HashMap(); - for (name in params) { - if (params.hasOwnProperty(name)) { - map.put(name, params[name]); - } - } - res = this.registry.executeQuery(path, map); - return res.getChildren(); - }; - -}(server, registry)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-ws.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-ws.js b/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-ws.js deleted file mode 100644 index 014a75c..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry-ws.js +++ /dev/null @@ -1,77 +0,0 @@ -/* - * - * 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. - * -*/ - -var log = new Log(); - -var Registry = function (server) { - this.server = server; -}; - -var Resource = function (name) { - -}; - -var Collection = function (name) { - -}; - -Registry.prototype.invoke = function (action, payload) { - var options, - ws = require('ws'), - client = new ws.WSRequest(), - server = this.server; - - options = { - useSOAP: 1.2, - useWSA: 1.0, - action: action, - HTTPHeaders: [ - { name: 'Cookie', value: server.cookie } - ] - }; - - try { - client.open(options, server.url + '/services/WSRegistryService', false); - client.send(payload); - return client.responseXML; - } catch (e) { - log.error(e.toString()); - throw new Error('Error while invoking action in WSRegistryService : ' + - action + ', user : ' + server.user.username); - } -}; - -Registry.prototype.putResource = function (path, resource) { - -}; - -Registry.prototype.getResource = function (path) { - var res, payload, - base64 = require('/modules/base64.js'); - - payload = - <api:getContent xmlns:api="http://api.ws.registry.carbon.wso2.org"> - <api:path>{path}</api:path> - </api:getContent>; - - res = this.invoke('urn:getContent', payload); - return base64.decode(String(res.*::['return'].text())); -}; http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry.js b/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry.js deleted file mode 100644 index 43467bc..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/registry/registry.js +++ /dev/null @@ -1,45 +0,0 @@ -/* - * - * 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. - * -*/ - -var registry = {}; - -(function (registry) { - var ActionConstants = Packages.org.wso2.carbon.registry.core.ActionConstants, - AccessControlConstants = Packages.org.wso2.carbon.registry.core.utils.AccessControlConstants; - - registry.Registry = function (server, auth) { - var osgi = require('registry-osgi.js').registry, - o = new osgi.Registry(server, auth); - o.prototype = this; - return o; - }; - - registry.actions = {}; - - registry.actions.GET = ActionConstants.GET; - - registry.actions.PUT = ActionConstants.PUT; - - registry.actions.DELETE = ActionConstants.DELETE; - - registry.actions.AUTHORIZE = AccessControlConstants.AUTHORIZE; - -}(registry)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/server/config.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/server/config.js b/products/stratos/conf/temp-artifacts/carbon/scripts/server/config.js deleted file mode 100644 index fe5078f..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/server/config.js +++ /dev/null @@ -1,53 +0,0 @@ -/* - * - * 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. - * -*/ - -(function (server) { - var process = require('process'), - configDir = 'file:///' + process.getProperty('carbon.config.dir.path').replace(/[\\]/g, '/').replace(/^[\/]/g, '') + '/'; - server.loadConfig = function (path) { - var content, - index = path.lastIndexOf('.'), - ext = (index !== -1 && index < path.length) ? path.substring(index + 1) : '', - file = new File(configDir + path); - if (!file.isExists()) { - throw new Error('Specified config file does not exists : ' + path); - } - if (file.isDirectory()) { - throw new Error('Specified config file is a directory : ' + path); - } - file.open('r'); - content = file.readAll(); - file.close(); - switch (ext) { - case 'xml' : - return new XML(content); - case 'json' : - return parse(content); - case 'properties' : - default : - return content; - - } - }; - - server.home = 'file:///' + require('process').getProperty('carbon.home').replace(/[\\]/g, '/').replace(/^[\/]/g, ''); - -}(server)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/server/osgi.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/server/osgi.js b/products/stratos/conf/temp-artifacts/carbon/scripts/server/osgi.js deleted file mode 100644 index 2175c23..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/server/osgi.js +++ /dev/null @@ -1,31 +0,0 @@ -/* - * - * 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. - * -*/ - -var server = {}; - -(function (server) { - var PrivilegedCarbonContext = Packages.org.wso2.carbon.context.PrivilegedCarbonContext, - Class = java.lang.Class; - - server.osgiService = function (clazz) { - return PrivilegedCarbonContext.getThreadLocalCarbonContext().getOSGiService(Class.forName(clazz)); - }; -}(server)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/server/server.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/server/server.js b/products/stratos/conf/temp-artifacts/carbon/scripts/server/server.js deleted file mode 100644 index ba6300d..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/server/server.js +++ /dev/null @@ -1,115 +0,0 @@ -/* - * - * 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. - * -*/ - -(function (server) { - var log = new Log(); - - var login = function (url, username, password) { - var res, options, payload, - ws = require('ws'), - client = new ws.WSRequest(), - host = url.match(/.*:\/\/([^:\/]*)/)[1]; - - options = { - useSOAP: 1.2, - useWSA: 1.0, - action: 'urn:login' - }; - - payload = - <aut:login xmlns:aut="http://authentication.services.core.carbon.wso2.org"> - <aut:username>{username}</aut:username> - <aut:password>{password}</aut:password> - <aut:remoteAddress>{host}</aut:remoteAddress> - </aut:login>; - - try { - client.open(options, url + '/services/AuthenticationAdmin', false); - client.send(payload); - res = client.responseXML; - if (res.*::["return"].text() != 'true') { - return false; - } - return client.getResponseHeader('Set-Cookie'); - } catch (e) { - log.error(e.toString()); - throw new Error('Error while login to the server : ' + url + ', user : ' + username); - } - }; - - var logout = function (url, cookie) { - var options, - ws = require('ws'), - client = new ws.WSRequest(); - - options = { - useSOAP: 1.2, - useWSA: 1.0, - action: 'urn:logout', - mep: 'in-only', - HTTPHeaders: [ - { name: 'Cookie', value: cookie } - ] - }; - - try { - client.open(options, url + '/services/AuthenticationAdmin', false); - client.send(null); - return true; - } catch (e) { - log.error(e.toString()); - throw new Error('Error while logging out in server : ' + url + ', cookie : ' + cookie); - } - }; - - var Cookie = function (cookie) { - this.cookie = cookie; - }; - - server.Cookie = Cookie; - - var Server = function (options) { - this.url = (options && options.url) ? options.url : 'local:/'; - }; - server.Server = Server; - - Server.prototype.authenticate = function (username, password) { - var realm, user, - carbon = require('carbon'), - realmService = server.osgiService('org.wso2.carbon.user.core.service.RealmService'); - user = carbon.server.tenantUser(username); - realm = realmService.getTenantUserRealm(user.tenantId); - if(realm == null){ - throw new Error("Invalid domain or unactivated tenant login"); - }else{ - return realm.getUserStoreManager().authenticate(user.username, password); - } - }; - - Server.prototype.login = function (username, password) { - var cookie = login(this.url, username, password); - return new Cookie(cookie); - }; - - Server.prototype.logout = function (cookie) { - return logout(this.url, cookie.cookie); - }; -}(server)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/server/tenant.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/server/tenant.js b/products/stratos/conf/temp-artifacts/carbon/scripts/server/tenant.js deleted file mode 100644 index 255e7d7..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/server/tenant.js +++ /dev/null @@ -1,70 +0,0 @@ -/* - * - * 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. - * -*/ - -(function (server) { - var PrivilegedCarbonContext = Packages.org.wso2.carbon.context.PrivilegedCarbonContext, - MultitenantConstants = Packages.org.wso2.carbon.utils.multitenancy.MultitenantConstants, - MultitenantUtils = Packages.org.wso2.carbon.utils.multitenancy.MultitenantUtils, - realmService = server.osgiService('org.wso2.carbon.user.core.service.RealmService'), - tenantManager = realmService.getTenantManager(); - - server.tenantDomain = function (options) { - if (!options) { - return PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain(); - } - if(options.tenantId) { - return tenantManager.getDomain(options.tenantId); - } - if (options.username) { - return MultitenantUtils.getTenantDomain(options.username); - } - if (options.url) { - return MultitenantUtils.getTenantDomainFromRequestURL(options.url); - } - return null; - }; - - server.tenantId = function (options) { - var domain = options ? (options.domain || server.tenantDomain(options)) : server.tenantDomain(); - return domain ? tenantManager.getTenantId(domain) : null; - }; - - server.tenantUser = function (username) { - var domain = server.tenantDomain({ - username: username - }), - id = server.tenantId({ - domain: domain - }); - username = MultitenantUtils.getTenantAwareUsername(username); - return { - domain: domain, - username: username, - tenantId: id - }; - }; - - server.superTenant = { - tenantId: MultitenantConstants.SUPER_TENANT_ID, - domain: MultitenantConstants.SUPER_TENANT_DOMAIN_NAME - }; - -}(server)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/user/registry-space.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/user/registry-space.js b/products/stratos/conf/temp-artifacts/carbon/scripts/user/registry-space.js deleted file mode 100644 index 9536fb4..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/user/registry-space.js +++ /dev/null @@ -1,60 +0,0 @@ -/* - * - * 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. - * -*/ - -(function (server, registry, user) { - - var Space = function (user, space, options) { - var serv = new server.Server(options.serverUrl); - this.registry = new registry.Registry(serv, { - username: options.username || user, - domain: options.domain || server.tenantDomain() - }); - this.prefix = options.path + '/' + user + '/' + space; - if (!this.registry.exists(this.prefix)) { - this.registry.put(this.prefix, { - collection: true - }); - } - }; - user.Space = Space; - - Space.prototype.put = function (key, value) { - value = (!(value instanceof String) && typeof value !== "string") ? stringify(value) : value; - this.registry.put(this.prefix + '/' + key, { - content: value - }); - }; - - Space.prototype.get = function (key) { - var o = this.registry.content(this.prefix + '/' + key); - return o ? o.toString() : null; - }; - - Space.prototype.remove = function (key) { - this.registry.remove(this.prefix + '/' + key); - }; - - Space.prototype.find = function (filter) { - - }; - - -}(server, registry, user)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/user/space.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/user/space.js b/products/stratos/conf/temp-artifacts/carbon/scripts/user/space.js deleted file mode 100644 index c895cc1..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/user/space.js +++ /dev/null @@ -1,31 +0,0 @@ -/* - * - * 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. - * -*/ - -(function (server, user) { - - user.Space = function (user, space, options) { - var reg = require('registry-space.js').user, - o = new reg.Space(user, space, options); - o.prototype = this; - return o; - }; - -}(server, user)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/user/user-manager.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/user/user-manager.js b/products/stratos/conf/temp-artifacts/carbon/scripts/user/user-manager.js deleted file mode 100644 index 56833b9..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/user/user-manager.js +++ /dev/null @@ -1,179 +0,0 @@ -/* - * - * 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. - * -*/ - -(function (server, user) { - - var log = new Log(); - - var processPerms = function (perms, fn) { - var perm, actions, i, length; - for (perm in perms) { - if (perms.hasOwnProperty(perm)) { - actions = perms[perm]; - length = actions.length; - for (i = 0; i < length; i++) { - fn(perm, actions[i]); - } - } - } - }; - - var UserManager = function (serv, tenantId) { - this.server = serv; - this.tenantId = tenantId || server.superTenant.tenantId; - var realmService = server.osgiService('org.wso2.carbon.user.core.service.RealmService'), - realm = realmService.getTenantUserRealm(this.tenantId); - this.manager = realm.getUserStoreManager(); - this.authorizer = realm.getAuthorizationManager(); - }; - user.UserManager = UserManager; - - UserManager.prototype.getUser = function (username) { - if (!this.manager.isExistingUser(username)) { - return null; - } - return new user.User(this, username); - }; - UserManager.prototype.getRoleListOfUser = function (username) { - return this.manager.getRoleListOfUser(username); - }; - UserManager.prototype.addUser = function (username, password, roles, claims, profile) { - this.manager.addUser(username, password, roles || [], claims || null, profile); - }; - - UserManager.prototype.removeUser = function (username) { - this.manager.deleteUser(username); - }; - - UserManager.prototype.userExists = function (username) { - return this.manager.isExistingUser(username); - }; - - UserManager.prototype.roleExists = function (role) { - return this.manager.isExistingRole(role); - }; - UserManager.prototype.updateRole = function (previousRoleName, newRoleName) { - return this.manager.updateRoleName(previousRoleName, newRoleName); - }; - UserManager.prototype.getClaims = function (username, profile) { - return this.manager.getUserClaimValues(username, profile); - }; - UserManager.prototype.getClaimsForSet = function (username,claims, profile) { - return this.manager.getUserClaimValues(username,claims, profile); - }; - UserManager.prototype.getClaim = function (username, claim, profile) { - return this.manager.getUserClaimValue(username, claim, profile); - }; - - UserManager.prototype.setClaims = function (username, claims, profile) { - return this.manager.setUserClaimValues(username, claims, profile); - }; - - UserManager.prototype.setClaim = function (username, claim, value, profile) { - return this.manager.setUserClaimValue(username, claim, value, profile); - }; - - UserManager.prototype.isAuthorized = function (role, permission, action) { - return this.authorizer.isRoleAuthorized(role, permission, action); - }; - UserManager.prototype.updateRoleListOfUser = function(name, deletedRoles, newRoles){ - return this.manager.updateRoleListOfUser(name, deletedRoles, newRoles); - }; - UserManager.prototype.updateUserListOfRole = function(name, deletedUsers, newUsers){ - return this.manager.updateUserListOfRole(name, deletedUsers, newUsers); - }; - UserManager.prototype.listUsers = function () { - return this.manager.listUsers("*", -1); - }; - UserManager.prototype.addRole = function (role, users, permissions) { - var perms = [], - Permission = Packages.org.wso2.carbon.user.api.Permission; - processPerms(permissions, function (id, action) { - perms.push(new Permission(id, action)); - }); - this.manager['addRole(java.lang.String,java.lang.String[],org.wso2.carbon.user.api.Permission[])'] - (role, users, perms); - }; - - UserManager.prototype.removeRole = function (role) { - this.manager.deleteRole(role); - }; - - UserManager.prototype.allRoles = function () { - return this.manager.getRoleNames(); - }; - UserManager.prototype.getUserListOfRole = function (role) { - return this.manager.getUserListOfRole(role); - }; - /** - * um.authorizeRole('store-admin', '/permissions/mypermission', 'ui-execute'); - * - * um.authorizeRole('store-admin', { - * '/permissions/myperm1' : ['read', 'write'], - * '/permissions/myperm2' : ['read', 'write'] - * }); - * - * @param role - * @param permission - * @param action - */ - UserManager.prototype.authorizeRole = function (role, permission, action) { - var that = this; - if (permission instanceof String || typeof permission === 'string') { - if (!that.isAuthorized(role, permission, action)) { - that.authorizer.authorizeRole(role, permission, action); - } - } else { - processPerms(permission, function (id, action) { - if (!that.isAuthorized(role, id, action)) { - that.authorizer.authorizeRole(role, id, action); - if (log.isDebugEnabled()) { - log.debug('permission added(role:permission:action) - ' + role + ':' + id + ':' + action); - } - } - }); - } - }; - - /** - * um.denyRole('store-admin', '/permissions/mypermission', 'ui-execute'); - * - * um.denyRole('store-admin', { - * '/permissions/myperm1' : ['read', 'write'], - * '/permissions/myperm2' : ['read', 'write'] - * }); - * - * @param role - * @param permission - * @param action - */ - UserManager.prototype.denyRole = function (role, permission, action) { - var deny = this.authorizer.denyRole; - if (permission instanceof String || typeof permission === 'string') { - deny(role, permission, action); - } else { - processPerms(permission, function (id, action) { - deny(role, id, action); - }); - } - }; - -}(server, user)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/carbon/scripts/user/user.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/carbon/scripts/user/user.js b/products/stratos/conf/temp-artifacts/carbon/scripts/user/user.js deleted file mode 100644 index 66b253d..0000000 --- a/products/stratos/conf/temp-artifacts/carbon/scripts/user/user.js +++ /dev/null @@ -1,99 +0,0 @@ -/* - * - * 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. - * -*/ - -var user = {}; - -(function (user) { - - var CarbonConstants = Packages.org.wso2.carbon.CarbonConstants; - - user.systemUser = CarbonConstants.REGISTRY_SYSTEM_USERNAME; - - user.anonUser = CarbonConstants.REGISTRY_ANONNYMOUS_USERNAME; - - user.anonRole = CarbonConstants.REGISTRY_ANONNYMOUS_ROLE_NAME; - - var User = function (manager, username) { - this.um = manager; - this.tenantId = manager.tenantId; - this.username = username; - }; - user.User = User; - - User.prototype.getClaims = function (profile) { - return this.um.getClaims(this.username, profile); - }; - User.prototype.getClaimsForSet = function (claims,profile) { - return this.um.getClaimsForSet(this.username, claims, profile); - }; - - User.prototype.setClaims = function (claims, profile) { - this.um.setClaims(this.username, claims, profile); - }; - - User.prototype.getRoles = function () { - return this.um.manager.getRoleListOfUser(this.username); - }; - - User.prototype.hasRoles = function (roles) { - var i, j, role, - rs = this.getRoles(), - length1 = roles.length, - length2 = rs.length; - L1: - for (i = 0; i < length1; i++) { - //Array.indexOf() fails due to Java String vs JS String difference - role = roles[i]; - for (j = 0; j < length2; j++) { - if (role == rs[j]) { - continue L1; - } - } - return false; - } - return true; - }; - - User.prototype.addRoles = function (roles) { - return this.um.manager.updateRoleListOfUser(this.username, [], roles); - }; - - User.prototype.removeRoles = function (roles) { - return this.um.manager.updateRoleListOfUser(this.username, roles, []); - }; - - User.prototype.updateRoles = function (remove, add) { - return this.um.manager.updateRoleListOfUser(this.username, remove, add); - }; - - User.prototype.isAuthorized = function (permission, action) { - var i, - roles = this.getRoles(), - length = roles.length; - for (i = 0; i < length; i++) { - if (this.um.authorizer.isRoleAuthorized(roles[i], permission, action)) { - return true; - } - } - return false; - }; - -}(user)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/org.jaggeryjs.hostobjects.xhr_0.9.0.ALPHA4_wso2v1.jar ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/org.jaggeryjs.hostobjects.xhr_0.9.0.ALPHA4_wso2v1.jar b/products/stratos/conf/temp-artifacts/org.jaggeryjs.hostobjects.xhr_0.9.0.ALPHA4_wso2v1.jar deleted file mode 100644 index 60f6f07..0000000 Binary files a/products/stratos/conf/temp-artifacts/org.jaggeryjs.hostobjects.xhr_0.9.0.ALPHA4_wso2v1.jar and /dev/null differ http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/org.wso2.store.sso.common_1.0.0.jar ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/org.wso2.store.sso.common_1.0.0.jar b/products/stratos/conf/temp-artifacts/org.wso2.store.sso.common_1.0.0.jar deleted file mode 100644 index 4a74e5b..0000000 Binary files a/products/stratos/conf/temp-artifacts/org.wso2.store.sso.common_1.0.0.jar and /dev/null differ http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/org.wso2.stratos.identity.saml2.sso.mgt_2.2.0.jar ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/org.wso2.stratos.identity.saml2.sso.mgt_2.2.0.jar b/products/stratos/conf/temp-artifacts/org.wso2.stratos.identity.saml2.sso.mgt_2.2.0.jar deleted file mode 100644 index 29a9fb7..0000000 Binary files a/products/stratos/conf/temp-artifacts/org.wso2.stratos.identity.saml2.sso.mgt_2.2.0.jar and /dev/null differ http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/sso/module.xml ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/sso/module.xml b/products/stratos/conf/temp-artifacts/sso/module.xml deleted file mode 100644 index 159203b..0000000 --- a/products/stratos/conf/temp-artifacts/sso/module.xml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version='1.0'?> -<!-- - - 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. - ---> - -<module name="sso" xmlns="http://wso2.org/projects/jaggery/module.xml"> - <script> - <name>client</name> - <path>scripts/sso.client.js</path> - </script> -</module> http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/temp-artifacts/sso/scripts/sso.client.js ---------------------------------------------------------------------- diff --git a/products/stratos/conf/temp-artifacts/sso/scripts/sso.client.js b/products/stratos/conf/temp-artifacts/sso/scripts/sso.client.js deleted file mode 100644 index 9553220..0000000 --- a/products/stratos/conf/temp-artifacts/sso/scripts/sso.client.js +++ /dev/null @@ -1,193 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * Following module act as a client to create a saml request and also to - * unwrap and return attributes of a returning saml response - * @type {{}} - */ - -var client = {}; - -(function (client) { - - var Util = Packages.org.wso2.store.sso.common.util.Util, - carbon = require('carbon'), - log = new Log(); - - /** - * obtains an encoded saml response and return a decoded/unmarshalled saml obj - * @param samlResp - * @return {*} - */ - client.getSamlObject = function (samlResp) { - var decodedResp = Util.decode(samlResp); - return Util.unmarshall(decodedResp); - }; - - /** - * validating the signature of the response saml object - */ - client.validateSignature = function (samlObj, config) { - var tDomain = Util.getDomainName(samlObj); - var tId = carbon.server.tenantId({domain: tDomain}); - - return Util.validateSignature(samlObj, - config.KEY_STORE_NAME, config.KEY_STORE_PASSWORD, config.IDP_ALIAS, tId, tDomain); - }; - - /** - * Checking if the request is a logout call - */ - client.isLogoutRequest = function (samlObj) { - return samlObj instanceof Packages.org.opensaml.saml2.core.LogoutRequest; - }; - - /** - * Checking if the request is a logout call - */ - client.isLogoutResponse = function (samlObj) { - return samlObj instanceof Packages.org.opensaml.saml2.core.LogoutResponse; - }; - - /** - * getting url encoded saml authentication request - * @param issuerId - */ - client.getEncodedSAMLAuthRequest = function (issuerId) { - return Util.encode( - Util.marshall( - new Packages.org.wso2.store.sso.common.builders.AuthReqBuilder().buildAuthenticationRequest(issuerId) - )); - }; - - /** - * get url encoded saml logout request - */ - client.getEncodedSAMLLogoutRequest = function (user, sessionIndex, issuerId) { - return Util.encode( - Util.marshall( - new Packages.org.wso2.store.sso.common.builders.LogoutRequestBuilder().buildLogoutRequest(user, sessionIndex, - Packages.org.wso2.store.sso.common.constants.SSOConstants.LOGOUT_USER, - issuerId))); - }; - - /** - * Reads the returning SAML login response and populates a session info object - */ - client.decodeSAMLLoginResponse = function (samlObj, samlResp, sessionId) { - var samlSessionObj = { - // sessionId, loggedInUser, sessionIndex, samlToken - }; - - if (samlObj instanceof Packages.org.opensaml.saml2.core.Response) { - - var assertions = samlObj.getAssertions(); - - // extract the session index - if (assertions != null && assertions.size() > 0) { - var authenticationStatements = assertions.get(0).getAuthnStatements(); - var authnStatement = authenticationStatements.get(0); - if (authnStatement != null) { - if (authnStatement.getSessionIndex() != null) { - samlSessionObj.sessionIndex = authnStatement.getSessionIndex(); - } - } - } - - // extract the username - if (assertions != null && assertions.size() > 0) { - var subject = assertions.get(0).getSubject(); - var samlAssertion = assertions.get(0); - if (subject != null) { - if (subject.getNameID() != null) { - samlSessionObj.loggedInUser = subject.getNameID().getValue(); - } - } - } - samlSessionObj.sessionId = sessionId; - samlSessionObj.samlToken = samlResp; - } - - return samlSessionObj; - }; - - client.getURLencodedB64EncodedSAML2Token = function(samlObj){ - var saml2Token = { - // URLEncodedB64 - }; - if (samlObj instanceof Packages.org.opensaml.saml2.core.Response) { - saml2Token.URLEncodedB64 = Util.getURLEncodedB64SAML2Token(samlObj); - } - return saml2Token; - }; - - client.getB64EncodedtSAMLAssertion = function(samlObj){ - var saml2Token = { - // URLEncodedB64 - }; - if (samlObj instanceof Packages.org.opensaml.saml2.core.Response) { - saml2Token.b64Encoded = Util.getB64EncodedtSAMLAssertion(samlObj); - } - return saml2Token; - }; - - - client.b64encode = function(str){ - return Util.encode(str); - }; - - /** - * This method is to get the session index when a single logout happens - * The IDP sends a logout request to the ACS with the session index, so that - * the app can invalidate the associated HTTP Session - */ - client.decodeSAMLLogoutRequest = function (samlObj) { - var sessionIndex = null; - - if (samlObj instanceof org.opensaml.saml2.core.LogoutRequest) { - var sessionIndexes = samlObj.getSessionIndexes(); - if (sessionIndexes != null && sessionIndexes.size() > 0) { - sessionIndex = sessionIndexes.get(0).getSessionIndex(); - } - } - - return sessionIndex; - - }; - - client.getTenantDomain = function (samlObj) { - var tDomain = Util.getDomainName(samlObj); - return tDomain; - }; - - client.getRoleList = function(samlObj) { - var roleObj = []; - var roleString = Util.getRoles(samlObj); - log.info("role string : " + roleString); - var roleSplit = roleString.split(","); - for(var i=0; i < roleSplit.length;i++){ - roleObj.push(roleSplit[i].trim()); - } - return roleObj; - }; - -}(client)); http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/tenant-mgt.xml ---------------------------------------------------------------------- diff --git a/products/stratos/conf/tenant-mgt.xml b/products/stratos/conf/tenant-mgt.xml deleted file mode 100644 index ddfe83a..0000000 --- a/products/stratos/conf/tenant-mgt.xml +++ /dev/null @@ -1,42 +0,0 @@ -<!-- - ~ 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. - --> -<TenantManagers> - <TenantManager class="org.wso2.carbon.user.core.tenant.JDBCTenantManager"> - <Property name="MultiTenantRealmConfigBuilder">org.wso2.carbon.user.core.config.multitenancy.SimpleRealmConfigBuilder</Property> - </TenantManager> -</TenantManagers> - -<!--If the product is using LDAP user store in MT mode, use following tenant manager.--> -<!--TenantManager class="org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager"> - <Property name="RootPartition">dc=wso2,dc=com</Property> - <Property name="OrganizationalObjectClass">organizationalUnit</Property> - <Property name="OrganizationalAttribute">ou</Property> - <Property name="OrganizationalSubContextObjectClass">organizationalUnit</Property> - <Property name="OrganizationalSubContextAttribute">ou</Property> -</TenantManager--> -<!--Following tenant manager is used by Identity Server (IS) as its default tenant manager. - IS will do token replacement when building the product. Therefore do not change the syntax.--> -<!--TenantManager class="org.wso2.carbon.user.core.tenant.JDBCTenantManager"> - <Property name="RootPartition">dc=wso2,dc=org</Property> - <Property name="OrganizationalObjectClass">organizationalUnit</Property> - <Property name="OrganizationalAttribute">ou</Property> - <Property name="OrganizationalSubContextObjectClass">organizationalUnit</Property> - <Property name="OrganizationalSubContextAttribute">ou</Property> -</TenantManager--> - http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/tenant-reg-agent.xml ---------------------------------------------------------------------- diff --git a/products/stratos/conf/tenant-reg-agent.xml b/products/stratos/conf/tenant-reg-agent.xml deleted file mode 100755 index c39e189..0000000 --- a/products/stratos/conf/tenant-reg-agent.xml +++ /dev/null @@ -1,25 +0,0 @@ -<!-- - ~ 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. - --> -<tenantRegListenerServers> - <!--<server> - <serverUrl>https://10.100.1.206:9443/services/</serverUrl> - <userName>admin</userName> - <password>admin</password> - </server>--> -</tenantRegListenerServers> http://git-wip-us.apache.org/repos/asf/stratos/blob/8d321a26/products/stratos/conf/thrift-client-config.xml ---------------------------------------------------------------------- diff --git a/products/stratos/conf/thrift-client-config.xml b/products/stratos/conf/thrift-client-config.xml deleted file mode 100644 index 5cacada..0000000 --- a/products/stratos/conf/thrift-client-config.xml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ~ 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. - --> - -<!-- Apache thrift client configuration for publishing statistics to WSO2 CEP --> -<thriftClientConfiguration> - <username>admin</username> - <password>admin</password> - <ip>localhost</ip> - <port>7611</port> -</thriftClientConfiguration> \ No newline at end of file
