public ArrayInstance ListEntities(object filterCriteria) { var criteria = new EntityFilterCriteriaInstance(Engine.Object.InstancePrototype); if (filterCriteria is FolderInstance) { criteria.EntityFilterCriteria.Path = (filterCriteria as FolderInstance).FullPath; } else if (filterCriteria is string || filterCriteria is StringInstance || filterCriteria is ConcatenatedString) { criteria.EntityFilterCriteria.Path = filterCriteria.ToString(); } else if (filterCriteria != null && filterCriteria != Null.Value && filterCriteria != Undefined.Value) { criteria = JurassicHelper.Coerce <EntityFilterCriteriaInstance>(Engine, filterCriteria); } var result = Engine.Array.Construct(); foreach (var entity in m_repository.ListEntities(criteria.EntityFilterCriteria)) { ArrayInstance.Push(result, new EntityInstance(Engine, entity)); } return(result); }
public ArrayInstance ListEntityComments(object entityId, object path) { if (entityId == Null.Value || entityId == Undefined.Value || entityId == null) { throw new JavaScriptException(Engine, "Error", "Entity Id must be specified."); } var id = ConvertFromJsObjectToGuid(entityId); var result = Engine.Array.Construct(); var strPath = String.Empty; if (path != Null.Value && path != Undefined.Value && path != null) { strPath = TypeConverter.ToString(path); } foreach (var comment in m_repository.ListEntityComments(id, strPath)) { ArrayInstance.Push(result, new CommentInstance(Engine, comment)); } return(result); }
public ArrayInstance ListFolders(object path) { string stringPath; if (path is FolderInstance) { stringPath = (path as FolderInstance).FullPath; } else if (path == Undefined.Value || path == Null.Value || path == null) { stringPath = String.Empty; } else { stringPath = path.ToString(); } var result = Engine.Array.Construct(); var folders = m_repository.ListFolders(stringPath); if (folders != null) { foreach (var folder in folders) { ArrayInstance.Push(result, new FolderInstance(Engine, folder)); } } return(result); }
public ObjectInstance SearchWindowsPrincipals(SPWebApplicationInstance webApp, string input, string principalType, int maxCount) { if (webApp == null) { throw new JavaScriptException(this.Engine, "Error", "A webapp must be specified as the first parameter."); } SPPrincipalType scopes; principalType.TryParseEnum(true, SPPrincipalType.All, out scopes); bool reachedMaxCount; var principals = SPUtility.SearchWindowsPrincipals(webApp.SPWebApplication, input, scopes, maxCount, out reachedMaxCount); var arrPrincipals = this.Engine.Array.Construct(); foreach (var principal in principals) { ArrayInstance.Push(arrPrincipals, new SPPrincipalInfoInstance(this.Engine, principal)); } var result = this.Engine.Object.Construct(); result.SetPropertyValue("principals", arrPrincipals, false); result.SetPropertyValue("reachedMaxCount", reachedMaxCount, false); return(result); }
public object InstallBundle(Jurassic.ScriptEngine engine) { var baristaInstance = engine.GetGlobalValue("barista") as BaristaGlobal; if (baristaInstance == null) { throw new InvalidOperationException("Barista Global bundle could not be obtained."); } var dependencyResultObj = engine.Object.Construct(); //Require all dependencies.. foreach (var dependency in m_dependencies) { var result = baristaInstance.Common.Require(dependency.Key, null); dependencyResultObj.SetPropertyValue(dependency.Value, result, false); } //If it's a function dependency, execute that. if (this.ScriptFunction != null) { var args = new List <object>(); if (this.ScriptFunction is UserDefinedFunction) { var udf = this.ScriptFunction as UserDefinedFunction; args.AddRange(udf.ArgumentNames.Select(argumentName => dependencyResultObj.HasProperty(argumentName) ? dependencyResultObj.GetPropertyValue(argumentName) : Null.Value)); } return(this.ScriptFunction.Call(engine.Global, args.ToArray())); } //Use the implemented "include" function to include the scripts. //this promotes loose coupling between the script bundle and the include. var variableNames = dependencyResultObj.Properties.Select(pn => pn.Name).ToArray(); var resultArray = engine.Array.Construct(); foreach (var scriptReference in m_scriptReferences) { //Create a new scope, and eval the script within the new scope. var scope = DeclarativeScope.CreateRuntimeScope(engine.CreateGlobalScope(), variableNames); foreach (var property in dependencyResultObj.Properties) { if (property.Value == Undefined.Value || property.Value == Null.Value || property.Value == null) { continue; } scope.SetValue(property.Name, property.Value); } var result = baristaInstance.Include(scriptReference, scope, engine.Global, engine.ForceStrictMode); ArrayInstance.Push(resultArray, result); } return(resultArray.Length == 1 ? resultArray[0] : resultArray); }
public ArrayInstance SearchAllDirectoryEntities(string searchText, int maxResults, string principalType) { var principalTypeEnum = PrincipalType.All; if (String.IsNullOrEmpty(principalType) == false) { principalTypeEnum = (PrincipalType)Enum.Parse(typeof(PrincipalType), principalType); } var entities = ADHelper.SearchAllDirectoryEntities(searchText, maxResults, principalTypeEnum, LdapPath); var result = Engine.Array.Construct(); foreach (var entity in entities) { if (entity is ADGroup) { ArrayInstance.Push(result, new ADGroupInstance(Engine.Object.InstancePrototype, entity as ADGroup, LdapPath)); } else if (entity is ADUser) { ArrayInstance.Push(result, new ADUserInstance(Engine.Object.InstancePrototype, entity as ADUser, LdapPath)); } } return(result); }
public void Process(IList <DiffInfoInstance> source, IList <DiffInfoInstance> target) { foreach (var sourceDiffInfo in source) { var info = sourceDiffInfo; var targetDiffInfo = target.FirstOrDefault(t => String.Equals(t.Url, info.Url, StringComparison.InvariantCultureIgnoreCase)); if (targetDiffInfo == null) { ArrayInstance.Push(this.Removed, sourceDiffInfo); continue; } ArrayInstance.Push( String.Equals(sourceDiffInfo.Hash, targetDiffInfo.Hash) ? this.Identical : this.Changed, targetDiffInfo); } foreach (var targetDiffInfo in target) { var info = targetDiffInfo; var sourceDiffInfo = source.FirstOrDefault(t => String.Equals(t.Url, info.Url, StringComparison.InvariantCultureIgnoreCase)); if (sourceDiffInfo == null) { ArrayInstance.Push(this.Added, targetDiffInfo); } } }
public object Move(SPContentDatabaseInstance destinationDatabase, ArrayInstance sitesToMove) { var sitesToMoveList = new List <SPSite>(); foreach (var site in sitesToMove.ElementValues.OfType <SPSiteInstance>()) { if (site != null) { sitesToMoveList.Add(site.Site); } } Dictionary <SPSite, string> failedSites; m_contentDatabase.Move(destinationDatabase.SPContentDatabase, sitesToMoveList, out failedSites); var result = this.Engine.Array.Construct(); foreach (var site in failedSites) { var resultObj = this.Engine.Object.Construct(); resultObj.SetPropertyValue("site", new SPSiteInstance(this.Engine.Object.InstancePrototype, site.Key), false); resultObj.SetPropertyValue("status", site.Value, false); ArrayInstance.Push(result, resultObj); } return(result); }
public ArrayInstance ListTeamProjectCollections() { var configurationServer = TfsConfigurationServerFactory.GetConfigurationServer(m_tfsUri); configurationServer.Credentials = m_credentialsProvider.Credential; configurationServer.EnsureAuthenticated(); var catalogNode = configurationServer.CatalogNode; var tpcNodes = catalogNode.QueryChildren( new[] { CatalogResourceTypes.ProjectCollection }, false, CatalogQueryOptions.None); var result = this.Engine.Array.Construct(); foreach (var teamProjectCollection in tpcNodes .Select(p => configurationServer.GetTeamProjectCollection(new Guid(p.Resource.Properties["InstanceId"]))) .Where(teamProjectCollection => teamProjectCollection != null)) { ArrayInstance.Push(result, new TfsTeamProjectCollectionInstance(this.Engine.Object.InstancePrototype, teamProjectCollection)); } return(result); }
public override object CallLateBound(object thisObject, params object[] argumentValues) { var path = argumentValues.ElementAtOrDefault(0); if (path == Undefined.Value || path == Null.Value || path == null) { return(thisObject); } var sPath = TypeConverter.ToString(path); var s1 = JSONObject.Stringify(this.Engine, thisObject, null, null); var o1 = JToken.Parse(s1); var tokens = o1.SelectTokens(sPath, false); var result = this.Engine.Array.Construct(); foreach (var token in tokens) { ArrayInstance.Push(result, JSONObject.Parse(this.Engine, token.ToString(), null)); } return(result); }
private void GetAllIterationsRecursive(Node node, ArrayInstance array) { foreach (Node item in node.ChildNodes) { ArrayInstance.Push(array, node.Name); GetAllIterationsRecursive(item, array); } }
public ArrayInstance ToArray() { var result = Engine.Array.Construct(); foreach (var listTemplate in m_listTemplateCollection.OfType <SPListTemplate>()) { ArrayInstance.Push(result, new SPListTemplateInstance(Engine.Object.InstancePrototype, listTemplate)); } return(result); }
public ArrayInstance ToArray() { var result = Engine.Array.Construct(); foreach (var roleDefinition in m_roleDefinitionCollection.OfType <SPRoleDefinition>()) { ArrayInstance.Push(result, new SPRoleDefinitionInstance(Engine.Object.InstancePrototype, roleDefinition)); } return(result); }
public ArrayInstance GetActivityDetails() { var result = Engine.Array.Construct(); foreach (var ad in m_workflow.GetActivityDetails()) { ArrayInstance.Push(result, ad.ToString()); } return(result); }
public ArrayInstance ToArray() { var result = this.Engine.Array.Construct(); foreach (var sheet in this.m_excelWorksheets) { ArrayInstance.Push(result, new ExcelWorksheetInstance(this.Engine.Object.InstancePrototype, sheet)); } return(result); }
public ArrayInstance GetTerms() { var result = Engine.Array.Construct(); foreach (var term in m_termSet.Terms) { ArrayInstance.Push(result, new TermInstance(Engine.Object.InstancePrototype, term)); } return(result); }
public ArrayInstance ToArray() { var result = Engine.Array.Construct(); foreach (var navigationNode in m_navigationNodeCollection.OfType <SPNavigationNode>()) { ArrayInstance.Push(result, new SPNavigationNodeInstance(Engine.Object.InstancePrototype, navigationNode)); } return(result); }
public ArrayInstance GetTerms([DefaultParameterValue(0)] int pagingLimit) { var result = Engine.Array.Construct(); foreach (var term in m_term.GetTerms(pagingLimit)) { ArrayInstance.Push(result, new TermInstance(Engine.Object.InstancePrototype, term)); } return(result); }
public ArrayInstance GetLabels(int lcid) { var result = Engine.Array.Construct(); foreach (var label in m_term.Labels) { ArrayInstance.Push(result, new TermLabelInstance(Engine.Object.InstancePrototype, label)); } return(result); }
public ArrayInstance ToArray() { var result = Engine.Array.Construct(); foreach (SPWeb web in m_webCollection) { ArrayInstance.Push(result, new SPWebInstance(Engine, web)); } return(result); }
public ArrayInstance ToArray() { var result = Engine.Array.Construct(); foreach (var serviceInstance in m_serviceInstanceDependencyCollection) { ArrayInstance.Push(result, new SPServiceInstanceInstance(Engine.Object.InstancePrototype, serviceInstance)); } return(result); }
public ArrayInstance ToArray() { var result = Engine.Array.Construct(); foreach (var termSet in m_termSetCollection) { ArrayInstance.Push(result, new TermSetInstance(Engine.Object.InstancePrototype, termSet)); } return(result); }
public ArrayInstance GetFeatures() { var result = Engine.Array.Construct(); foreach (var feature in m_webApplication.Features) { ArrayInstance.Push(result, new SPFeatureInstance(Engine.Object.InstancePrototype, feature)); } return(result); }
public ArrayInstance GetGroups() { var result = Engine.Array.Construct(); foreach (var group in m_termStore.Groups) { ArrayInstance.Push(result, new TermGroupInstance(Engine.Object.InstancePrototype, group)); } return(result); }
public ArrayInstance ToArray() { var result = this.Engine.Array.Construct(); foreach (SPFolder folder in this.m_folderCollection) { ArrayInstance.Push(result, new SPFolderInstance(this.Engine.Object.InstancePrototype, folder.ParentWeb.Site, folder.ParentWeb, folder)); } return(result); }
public ArrayInstance ToArray() { var result = this.Engine.Array.Construct(); foreach (var item in m_recycleBinItemCollection.OfType <SPRecycleBinItem>()) { ArrayInstance.Push(result, new SPRecycleBinItemInstance(this.Engine.Object.InstancePrototype, item)); } return(result); }
public ArrayInstance GetAllTermSets() { var result = Engine.Array.Construct(); foreach (var exportObject in m_exportObjectCollection.OfType <SPExportObject>()) { ArrayInstance.Push(result, new SPExportObjectInstance(Engine.Object.InstancePrototype, exportObject)); } return(result); }
public ArrayInstance ToArray() { var result = this.Engine.Array.Construct(); foreach (var version in m_fileVersionCollection.OfType <SPFileVersion>()) { ArrayInstance.Push(result, new SPFileVersionInstance(this.Engine.Object.InstancePrototype, version)); } return(result); }
public ArrayInstance ToArray() { var result = this.Engine.Array.Construct(); foreach (var feature in m_featureCollection) { ArrayInstance.Push(result, new SPFeatureInstance(this.Engine.Object.InstancePrototype, feature)); } return(result); }
public ArrayInstance ToArray() { var result = Engine.Array.Construct(); foreach (var user in m_userCollection.OfType <SPUser>()) { ArrayInstance.Push(result, new SPUserInstance(Engine, user)); } return(result); }