Beispiel #1
0
        private static void NormalizeNodeLabelExpressionInRequest(ResourceRequest resReq,
                                                                  QueueInfo queueInfo)
        {
            string labelExp = resReq.GetNodeLabelExpression();

            // if queue has default label expression, and RR doesn't have, use the
            // default label expression of queue
            if (labelExp == null && queueInfo != null && ResourceRequest.Any.Equals(resReq.GetResourceName
                                                                                        ()))
            {
                labelExp = queueInfo.GetDefaultNodeLabelExpression();
            }
            // If labelExp still equals to null, set it to be NO_LABEL
            if (labelExp == null)
            {
                labelExp = RMNodeLabelsManager.NoLabel;
            }
            resReq.SetNodeLabelExpression(labelExp);
        }
Beispiel #2
0
        public virtual ResourceRequest CloneResourceRequest(ResourceRequest request)
        {
            ResourceRequest newRequest = ResourceRequest.NewInstance(request.GetPriority(), request
                                                                     .GetResourceName(), request.GetCapability(), 1, request.GetRelaxLocality());

            return(newRequest);
        }