Esempio n. 1
0
        public virtual void testGetResource()
        {
            JDFDoc          doc = new JDFDoc(ElementName.JMF);
            JDFJMF          jmf = doc.getJMFRoot();
            JDFCommand      c   = jmf.appendCommand(EnumType.PipePull);
            JDFPipeParams   pp  = c.appendPipeParams();
            JDFExposedMedia xm  = (JDFExposedMedia)pp.appendResource(ElementName.EXPOSEDMEDIA);

            Assert.AreEqual(EnumResourceClass.Handling, xm.getResourceClass());
            JDFMedia m = (JDFMedia)pp.appendResource(ElementName.MEDIA);

            Assert.AreEqual(EnumResourceClass.Consumable, m.getResourceClass());
            JDFRefElement rm = xm.refElement(m);

            Assert.AreEqual(m, rm.getTarget());
            Assert.AreEqual(xm, pp.getResource(ElementName.EXPOSEDMEDIA));
            Assert.AreEqual(xm, pp.getResource(null));
            Assert.AreEqual(m, pp.getResource(ElementName.MEDIA));
            try
            {
                Assert.IsNull(pp.getResource("MediaLink"));
                Assert.Fail();
            }
            catch (JDFException)
            {
                // nop
            }

            JDFResourceLink rl = pp.appendResourceLink(ElementName.EXPOSEDMEDIA, true);

            rl.setrRef(xm.getID());
            Assert.AreEqual(xm, pp.getResource(null));
            Assert.AreEqual(rl.getTarget(), pp.getResource(null));
        }
Esempio n. 2
0
        ///
        ///	 <summary> * get resource defined by <code>resName</code>
        ///	 *  </summary>
        ///	 * <param name="resName"> name of the resource to get; if null get the resource that is linked by the reslink </param>
        ///	 * <returns> JDFResource: the element </returns>
        ///
        public virtual JDFResource getResource(string resName)
        {
            if (resName == null)
            {
                JDFResourceLink rl = getResourceLink();
                if (rl != null)
                {
                    return(rl.getTarget());
                }
                VElement v = getChildElementVector(null, null, null, true, 0, false);

                for (int i = 0; i < v.Count; i++)
                {
                    KElement e = v.item(i);
                    if (e is JDFResource)
                    {
                        return((JDFResource)e);
                    }
                }
                return(null);
            }
            JDFResource r  = null;
            KElement    e2 = getElement(resName, null, 0);

            if (e2 is JDFResource)
            {
                r = (JDFResource)e2;
            }
            else
            {
                throw new JDFException("JDFPipeParams.getResource tried to return a JDFElement instead of a JDFResource");
            }
            return(r);
        }
Esempio n. 3
0
            internal LinkAmount(StatusUtil pEnclosingInstance, JDFResourceLink _rl)
            {
                enclosingInstance = pEnclosingInstance;

                JDFNode dump = new JDFDoc("JDF").getJDFRoot();

                dump.appendResourceLinkPool().copyElement(_rl, null);
                dump.appendResourcePool().copyElement(_rl.getTarget(), null);
                rl = (JDFResourceLink)dump.getResourceLinkPool().getElement(_rl.Name, null, 0);
                JDFAttributeMap map = (enclosingInstance.m_vPartMap == null || enclosingInstance.m_vPartMap.Count == 0) ? null : enclosingInstance.m_vPartMap[0];

                startAmount = rl.getAmount(map);
                if (startAmount == -1)
                {
                    map = new JDFAttributeMap(map);
                    map.put(EnumPartIDKey.Condition, "Good");
                    startAmount = rl.getAmount(map);
                    if (startAmount == -1)
                    {
                        startAmount = 0;
                    }
                    map.put(EnumPartIDKey.Condition, "Waste");
                    startWaste = rl.getAmount(map);
                    if (startWaste == -1)
                    {
                        startWaste = 0;
                    }
                }
            }
Esempio n. 4
0
        ///
        ///	 <summary> * sets all relevant parameters of this to the values specified in resourceLink or its linked resource or JDF node
        ///	 *  </summary>
        ///	 * <param name="resourceLink"> the resourceLink to extract the information from </param>
        ///	 * <param name="rqp"> parameters </param>
        ///
        public virtual void setLink(JDFResourceLink resourceLink, JDFResourceQuParams rqp)
        {
            if (resourceLink == null)
            {
                return;
            }
            JDFAmountPool ap = resourceLink.getAmountPool();

            if (ap != null)
            {
                copyElement(ap, null);
            }
            else
            {
                if (resourceLink.hasAttribute(AttributeName.ACTUALAMOUNT))
                {
                    setActualAmount(resourceLink.getActualAmount(null));
                }
                if (resourceLink.hasAttribute(AttributeName.AMOUNT))
                {
                    setAmount(resourceLink.getAmount(null));
                }
            }
            setProcessUsage(resourceLink.getEnumProcessUsage());

            JDFResource r = resourceLink.getTarget();

            if (r == null && rqp != null)
            {
                rqp.setExact(false);
            }

            bool bExact = rqp == null ? false : rqp.getExact();

            if (!bExact || r == null) // if we do not have a resource let's limp
            // along and provide as much as we have
            {
                setResourceName(resourceLink.getLinkedResourceName());
                setAttribute(AttributeName.RESOURCEID, resourceLink.getrRef());
                EnumUsage usage = resourceLink.getUsage();
                if (usage != null)
                {
                    setAttribute(AttributeName.USAGE, usage.getName());
                }
                if (r != null && r.hasAttribute(AttributeName.PRODUCTID))
                {
                    setProductID(r.getProductID());
                }
            }
            else
            {
                // create a copy of the resource in the original jdf
                JDFResource rr = (JDFResource)r.getParentNode_KElement().copyElement(r, null);
                rr.inlineRefElements(null, null, true);
                // move resource copy from the original node into this document
                moveElement(rr, null);
            }
        }
Esempio n. 5
0
        ///
        ///	 <summary> * sets all relevant parameters of <code>this</code> to the values specified in resourceLink or its linked resource
        ///	 * or JDF node
        ///	 *  </summary>
        ///	 * <param name="resourceLink"> the resourceLink to extract the information from </param>
        ///
        public virtual void setLink(JDFResourceLink resourceLink)
        {
            if (resourceLink == null)
            {
                return;
            }
            JDFResource r = resourceLink.getTarget();

            JDFNode parentJDF = resourceLink.getParentJDF();

            setJDF(parentJDF);
            setProcessUsage(resourceLink.getEnumProcessUsage());

            if (r.hasAttribute(AttributeName.PRODUCTID))
            {
                setProductID(r.getProductID());
            }
            setResourceID(r.getID());
            setResourceName(r.LocalName);
            setUsage(resourceLink.getUsage());
            setPartMapVector(resourceLink.getPartMapVector());
        }
Esempio n. 6
0
        public virtual void testBugBuild058()
        {
            // get the JDF document root element
            JDFDoc  jdfDoc      = new JDFDoc(ElementName.JDF);
            JDFNode productNode = jdfDoc.getJDFRoot();

            productNode.setType(JDFNode.EnumType.Product.getName(), false);

            // Add an intent resource
            JDFLayoutIntent layoutIntent = (JDFLayoutIntent)productNode.appendMatchingResource("LayoutIntent", JDFNode.EnumProcessUsage.AnyInput, null);

            // set the type attribute
            JDFResourceLink rli = productNode.getMatchingLink("LayoutIntent", JDFNode.EnumProcessUsage.AnyInput, 0);

            bool bValid = rli.isValid(KElement.EnumValidationLevel.Complete);

            Assert.IsTrue(bValid);

            JDFLayoutIntent layoutIntent2 = (JDFLayoutIntent)rli.getTarget();

            bValid = bValid && (layoutIntent2.Equals(layoutIntent));
            Assert.IsTrue(bValid);
        }
Esempio n. 7
0
        ///
        ///	 * <param name="icsLevel"> </param>
        ///
        protected internal virtual void initColorantControl()
        {
            JDFResourceLink ccLink = null;

            if (thePreviousNode != null)
            {
                ccLink = theNode.linkResource(thePreviousNode.getResource(ElementName.COLORANTCONTROL, EnumUsage.Input, 0), EnumUsage.Input, null);
            }
            if (ccLink == null && theParentNode != null)
            {
                ccLink = theNode.linkResource(theParentNode.getResource(ElementName.COLORANTCONTROL, EnumUsage.Input, 0), EnumUsage.Input, null);
            }

            JDFColorantControl cc = (JDFColorantControl)(ccLink == null ? (JDFColorantControl)theNode.getCreateResource(ElementName.COLORANTCONTROL, EnumUsage.Input, 0) : ccLink.getTarget());

            cc.setResStatus(EnumResStatus.Available, false);

            JDFColorPool cp = (JDFColorPool)theNode.getJDFRoot().getChildByTagName(ElementName.COLORPOOL, null, 0, null, false, false);

            if (cp == null)
            {
                cp = (JDFColorPool)theNode.getCreateResource(ElementName.COLORPOOL, EnumUsage.Input, 0);
                if (theParentNode != null)
                {
                    theParentNode.getCreateResourcePool().moveElement(cp, null);
                }
            }

            cc.refColorPool(cp);
            for (int i = 4; i < getNCols(); i++)
            {
                cc.getCreateColorantParams().appendSeparation(cols.stringAt(i));
            }
            for (int i = 0; i < getNCols(); i++)
            {
                string   name = cols.stringAt(i);
                JDFColor c    = cp.getCreateColorWithName(name, null);
                if (i == 0)
                {
                    c.setCMYK(new JDFCMYKColor(1, 0, 0, 0));
                }
                if (i == 1)
                {
                    c.setCMYK(new JDFCMYKColor(0, 1, 0, 0));
                }
                if (i == 2)
                {
                    c.setCMYK(new JDFCMYKColor(0, 0, 1, 0));
                }
                if (i == 3)
                {
                    c.setCMYK(new JDFCMYKColor(0, 0, 0, 1));
                }
            }
            cc.setProcessColorModel("DeviceCMYK");
            if (nCols[0] != nCols[1])
            {
                for (int ii = 0; ii < 2; ii++)
                {
                    JDFColorantControl ccP   = (JDFColorantControl)cc.addPartition(EnumPartIDKey.Side, ii == 0 ? "Front" : "Back");
                    VString            colsP = new VString();
                    for (int iii = 0; iii < nCols[ii]; iii++)
                    {
                        colsP.Add(cols.stringAt(iii));
                    }
                    JDFSeparationList co = ccP.getCreateColorantOrder();
                    co.setSeparations(colsP);
                }
            }
            else
            {
                JDFSeparationList co = cc.getCreateColorantOrder();
                co.setSeparations(cols);
            }
        }