Beispiel #1
0
        ///
        ///	 <summary> * simulate makeReady of this node the internal node will be modified to reflect the makeready all required
        ///	 * resources should be available </summary>
        ///
        public virtual void makeReady()
        {
            if (bExpandGrayBox && EnumType.ProcessGroup.Equals(theNode.getEnumType()) && theNode.hasAttribute(AttributeName.TYPES))
            {
                theExpandedNode = theNode.addCombined(theNode.getTypes());
                VElement resLinks = theNode.getResourceLinks(null);
                if (resLinks != null)
                {
                    int size = resLinks.Count;
                    for (int i = 0; i < size; i++)
                    {
                        ((JDFResourceLink)resLinks[i]).removeAttribute(AttributeName.COMBINEDPROCESSINDEX);
                    }
                }

                initAuditPool(theExpandedNode);
                theExpandedNode.copyElement(theNode.getResourceLinkPool(), null);
            }
            else
            {
                theExpandedNode = theNode;
            }
            VElement nodeLinks = getNodeLinks();

            theStatusCounter.setActiveNode(theExpandedNode, null, nodeLinks);

            VElement vResLinks = theExpandedNode.getResourceLinks(null);

            if (vResLinks != null)
            {
                int siz = vResLinks.Count;
                for (int i = 0; i < siz; i++)
                {
                    JDFResourceLink rl = (JDFResourceLink)vResLinks[i];

                    if (EnumUsage.Input.Equals(rl.getUsage()))
                    {
                        VElement vRes = rl.getTargetVector(-1);
                        for (int j = 0; j < vRes.Count; j++)
                        {
                            VElement leaves = ((JDFResource)vRes[j]).getLeaves(false);
                            for (int k = 0; k < leaves.Count; k++)
                            {
                                JDFResource r = (JDFResource)leaves[k];
                                r.setResStatus(EnumResStatus.Available, true);
                            }
                        }
                    }
                }
            }
        }