Example #1
0
        private static TaskType[] listTasks(modelPortType modelPort)
        {
            // Let's say we want to retrieve tasks' next scheduled time (because this may be a costly operation if
            // JDBC based quartz scheduler is used, the fetching of this attribute has to be explicitly requested)
            SelectorQualifiedGetOptionType getNextScheduledTimeOption = new SelectorQualifiedGetOptionType();

            // prepare a selector (described by path) + options (saying to retrieve that attribute)
            ObjectSelectorType selector = new ObjectSelectorType();

            selector.path = createItemPathType("nextRunStartTimestamp");
            getNextScheduledTimeOption.selector = selector;

            GetOperationOptionsType selectorOptions = new GetOperationOptionsType();

            selectorOptions.retrieve           = RetrieveOptionType.include;
            selectorOptions.retrieveSpecified  = true;
            getNextScheduledTimeOption.options = selectorOptions;

            SelectorQualifiedGetOptionType[] operationOptions = new SelectorQualifiedGetOptionType[] { getNextScheduledTimeOption };

            searchObjects         request  = new searchObjects(TASK_TYPE, null, operationOptions);
            searchObjectsResponse response = modelPort.searchObjects(request);

            ObjectListType  objectList = response.objectList;
            List <TaskType> tasks      = new List <TaskType>();

            foreach (ObjectType1 object1 in response.objectList.@object)
            {
                tasks.Add((TaskType)object1);
            }
            return(tasks.ToArray());
        }
Example #2
0
        private static ObjectType1[] listObjects(modelPortType modelPort, XmlQualifiedName type)
        {
            searchObjects         request  = new searchObjects(type, null, null);
            searchObjectsResponse response = modelPort.searchObjects(request);

            ObjectListType objectList = response.objectList;

            ObjectType1[] objects = objectList.@object;
            return(objects);
        }
Example #3
0
        private static RoleType searchRoleByName(modelPortType modelPort, String roleName)
        {
            QueryType query = new QueryType();

            query.filter = createNameFilter(roleName);

            searchObjects         request  = new searchObjects(ROLE_TYPE, query, null);
            searchObjectsResponse response = modelPort.searchObjects(request);

            return((RoleType)getOneObject(response, roleName));
        }
Example #4
0
        private static UserType searchUserByName(modelPortType modelPort, String username)
        {
            QueryType query = new QueryType();

            query.filter = createNameFilter(username);

            searchObjects         request  = new searchObjects(USER_TYPE, query, null);
            searchObjectsResponse response = modelPort.searchObjects(request);

            return((UserType)getOneObject(response, username));
        }
Example #5
0
        private static ObjectType1[] listRequestableRoles(modelPortType modelPort)
        {
            SearchFilterType filter = createRequestableFilter();
            QueryType        query  = new QueryType();

            query.filter = filter;

            searchObjects         request  = new searchObjects(ROLE_TYPE, query, null);
            searchObjectsResponse response = modelPort.searchObjects(request);

            ObjectListType objectList = response.objectList;

            ObjectType1[] objects = objectList.@object;
            return(objects);
        }
Example #6
0
 private static ObjectType getOneObject(searchObjectsResponse response, String name)
 {
     ObjectType[] objects = response.objectList.@object;
     if (objects == null || objects.Length == 0)
     {
         return(null);
     }
     else if (objects.Length == 1)
     {
         return((ObjectType)objects[0]);
     }
     else
     {
         throw new InvalidOperationException("Expected to find a object with name '" + name + "' but found " + objects.Length + " ones instead");
     }
 }
Example #7
0
        private static ObjectType1[] listObjectsRestrictedAndSorted(modelPortType modelPort, XmlQualifiedName type)
        {
            // let's say we want to get first 3 users, sorted alphabetically by user name

            QueryType  queryType  = new QueryType();        // holds search query + paging options
            PagingType pagingType = new PagingType();

            pagingType.maxSize = 3;
            ItemPathType orderBy = createItemPathType("name");

            pagingType.orderBy        = orderBy;
            pagingType.orderDirection = OrderDirectionType.ascending;

            queryType.paging = pagingType;

            searchObjects         request  = new searchObjects(type, queryType, null);
            searchObjectsResponse response = modelPort.searchObjects(request);

            ObjectListType objectList = response.objectList;

            ObjectType1[] objects = objectList.@object;
            return(objects);
        }
Example #8
0
 private static ObjectType getOneObject(searchObjectsResponse response, String name)
 {
     ObjectType[] objects = response.objectList.@object;
     if (objects == null || objects.Length == 0)
     {
         return null;
     }
     else if (objects.Length == 1)
     {
         return (ObjectType)objects[0];
     }
     else
     {
         throw new InvalidOperationException("Expected to find a object with name '" + name + "' but found " + objects.Length + " ones instead");
     }
 }