Ejemplo n.º 1
0
        public virtual void testGetUsage()
        {
            JDFDoc              d   = new JDFDoc(ElementName.JDF);
            JDFNode             n   = d.getJDFRoot();
            JDFResourceLinkPool rlp = n.appendResourceLinkPool();
            JDFResourceLink     rl  = (JDFResourceLink)rlp.appendElement("FooLink");

            Assert.IsNull(rl.getUsage());
        }
Ejemplo n.º 2
0
        public virtual void testValidName()
        {
            JDFDoc              d    = new JDFDoc(ElementName.JDF);
            JDFNode             n    = d.getJDFRoot();
            JDFResourceLinkPool rlp  = n.appendResourceLinkPool();
            JDFResourceLink     rl   = (JDFResourceLink)rlp.appendElement("FooLink");
            JDFResource         rBar = n.addResource("Bar", EnumResourceClass.Parameter, EnumUsage.Input, null, null, null, null);

            rl.setrRef(rBar.getID());
            Assert.IsFalse((rl.isValid(null)));
            rl = n.getLink(rBar, null);
            Assert.IsNotNull(rl);
            Assert.IsTrue((rl.isValid(null)));
        }
Ejemplo n.º 3
0
        public virtual void testGetLinkRoot()
        {
            JDFDoc  d = new JDFDoc(ElementName.JDF);
            JDFNode n = d.getJDFRoot();

            n.setType("ProcessGroup", true);
            JDFNode         n2     = n.addJDFNode("ConventionalPrinting");
            JDFCustomerInfo ci     = (JDFCustomerInfo)n.addResource(ElementName.CUSTOMERINFO, null, EnumUsage.Input, null, null, null, null);
            JDFResourceLink ciLink = n.getLink(ci, null);

            Assert.IsTrue(ci == ciLink.getLinkRoot(), "getLinkRoot in same node");
            Assert.IsTrue(ci == ciLink.getTarget(), "getLinkTarget in same node");
            Assert.IsTrue(ci == ciLink.getTarget(), "getTarget in same node");

            JDFResourceLink ciLink2 = n2.linkResource(ci, EnumUsage.Input, null);

            Assert.IsTrue(ci == ciLink2.getLinkRoot(), "getLinkRoot in child node");
            Assert.IsTrue(ci == ciLink2.getTarget(), "getLinkTarget in child node");
            Assert.IsTrue(ci == ciLink2.getTarget(), "getTarget in child node");

            JDFNodeInfo     ni     = (JDFNodeInfo)n2.addResource(ElementName.NODEINFO, null, null, null, null, null, null);
            JDFResourceLink niLink = n2.linkResource(ni, EnumUsage.Input, null);

            Assert.IsTrue(ni == niLink.getLinkRoot(), "getLinkRoot both in child node");
            Assert.IsTrue(ni == niLink.getTarget(), "getLinkTarget both in child node");
            Assert.IsTrue(ni == niLink.getTarget(), "getTarget both in child node");

            JDFResourceLink niLink2 = (JDFResourceLink)n.getCreateResourceLinkPool().appendElement("NodeInfoLink", null);

            niLink2.setrRef(ni.getID());
            Assert.IsTrue(niLink2.getLinkRoot() == null, "getLinkRoot illegal in child node");
            Assert.IsTrue(niLink2.getTarget() == null, "getLinkTarget illegal in child node");
            Assert.IsTrue(niLink2.getTarget() == null, "getTarget illegal in child node");

            JDFDoc              d22 = new JDFDoc(ElementName.JDF);
            JDFNode             n22 = d22.getJDFRoot();
            JDFResourceLinkPool rlp = n22.getCreateResourceLinkPool();
            bool bCaught            = false;

            try
            {
                rlp.linkResource(ni, EnumUsage.Input, null);
            }
            catch (JDFException)
            {
                bCaught = true;
            }
            Assert.IsTrue(bCaught, "Resource from other document not linked");
            Assert.IsNull(rlp.getElement("NodeInfoLink"), "NI not linked");
        }
Ejemplo n.º 4
0
        public virtual void testSetAmountPoolAttribute()
        {
            JDFDoc d = new JDFDoc("ResourceLinkPool");
            JDFResourceLinkPool rlp   = (JDFResourceLinkPool)d.getRoot();
            JDFResourceLink     foo   = (JDFResourceLink)rlp.appendElement("FooLink");
            VJDFAttributeMap    vPart = new VJDFAttributeMap();

            vPart.Add(new JDFAttributeMap());
            foo.setAmountPoolAttribute("blub", "123", null, vPart);
            Assert.AreEqual("123", foo.getAttribute("blub"));
            vPart = new VJDFAttributeMap();
            JDFAttributeMap map = new JDFAttributeMap("SheetName", "b");

            vPart.Add(map);
            foo.setAmountPoolAttribute("blub", "123", null, vPart);
            Assert.IsNull(foo.getAttribute("blub", null, null));
            Assert.AreEqual("123", foo.getAmountPoolAttribute("blub", null, map, 0));
        }
Ejemplo n.º 5
0
            ///
            ///		 * <param name="node"> </param>
            ///		 * <returns> the target resource </returns>
            ///
            private JDFResource getTargetResource(JDFNode node)
            {
                if (node == null)
                {
                    return(null);
                }
                JDFResourceLinkPool rlp = node.getResourceLinkPool();

                if (rlp == null)
                {
                    return(null);
                }
                string resID = enclosingInstance.getResourceID();

                if (resID != null && !resID.Equals(""))
                {
                    VElement vRes = rlp.getLinkedResources(null, null, new JDFAttributeMap(AttributeName.ID, resID), false);
                    if (vRes.Count > 0)
                    {
                        return((JDFResource)vRes[0]);
                    }
                }

                string resName = enclosingInstance.getResourceName();

                if (resName != null && !resName.Equals(""))
                {
                    VElement vRes = rlp.getLinkedResources(resName, null, null, false);
                    if (vRes.Count > 0)
                    {
                        return((JDFResource)vRes[0]);
                    }

                    // TODO link usage, process usage etc.
                }
                return(null);
            }
Ejemplo n.º 6
0
        ///
        ///	 <summary> * gets the matching elements in node that match this devcap
        ///	 *  </summary>
        ///	 * <param name="node">
        ///	 *            the node to search in </param>
        ///	 * <returns> VElement - the element vector of matching elements,
        ///	 *         <code>null</code> if none were found </returns>
        ///
        private VElement getMatchingElementsFromNode(JDFNode node)
        {
            VElement vElem = new VElement();

            string              nam         = getName();
            EnumContext         context     = getContext();
            JDFResourceLinkPool resLinkPool = node.getResourceLinkPool();

            if (context.Equals(EnumContext.Element))
            { // vElem - for a common return type in all cases
                if (nam.Equals(ElementName.JDF))
                {
                    vElem.Add(node);
                }
                else
                {
                    vElem = node.getChildElementVector(nam, null, null, true, 0, false);
                }
            }
            else if (context.Equals(EnumContext.Link) || context.Equals(EnumContext.Resource))
            {
                if (resLinkPool != null)
                {
                    EnumUsage linkUsage  = getLinkUsage();
                    string    procUsage  = getProcessUsage();
                    bool      bLink      = context.Equals(EnumContext.Link);
                    VElement  vElemLinks = resLinkPool.getInOutLinks(linkUsage, true, nam, null);
                    if (vElemLinks != null)
                    {
                        int linkSize = vElemLinks.Count - 1;
                        for (int j = linkSize; j >= 0; j--)
                        {
                            JDFResourceLink rl             = (JDFResourceLink)vElemLinks[j];
                            string          rlProcessUsage = rl.getProcessUsage();
                            if (!rlProcessUsage.Equals(procUsage))
                            {
                                vElemLinks.RemoveAt(j);
                            }
                        }
                    }

                    if (!bLink)
                    {
                        vElem = JDFResourceLinkPool.resourceVector(vElemLinks, null);
                    }
                    else
                    {
                        vElem = vElemLinks;
                    }
                }
            }
            else if (context.Equals(EnumContext.JMF))
            {
                // TODO __Lena__ ...
            }
            else
            { // Context_Unknown
                throw new JDFException("JDFDevCaps wrong attribute Context value");
            }

            if (vElem != null && vElem.Count == 0)
            {
                vElem = null;
            }

            return(vElem);
        }