예제 #1
0
        public virtual void testAction()
        {
            JDFAction act = devicecap.appendActionPool().appendActionTest(EnumTerm.or, false);
            JDFTest   tst = act.getTest();

            tst.setContext("/JDF/ResourcePool/Component");
            JDFor or = (JDFor)((JDFnot)tst.getTerm()).getTerm(EnumTerm.or, 0);
            JDFIsPresentEvaluation ipe = (JDFIsPresentEvaluation)or.appendTerm(EnumTerm.IsPresentEvaluation);

            ipe.setRefTarget(ptState);
            Assert.AreEqual(ptState.getID(), ipe.getrRef());

            JDFEnumerationEvaluation enev = (JDFEnumerationEvaluation)or.appendTerm(EnumTerm.EnumerationEvaluation);

            enev.setRefTarget(compState);
            enev.setRegExp("(.+ )*FinalProduct( .+)*");

            JDFDoc  doc  = new JDFDoc("JDF");
            JDFNode node = doc.getJDFRoot();

            node.setType("fnarf", false);
            JDFComponent comp = (JDFComponent)node.addResource("Component", null, EnumUsage.Input, null, null, null, null);

            XMLDoc   rep     = new XMLDoc("root", null);
            KElement eRep    = rep.getRoot();
            bool     fitsJDF = tst.fitsJDF(comp, eRep);

            Assert.IsTrue(fitsJDF);

            comp.setProductType("foobar");
            fitsJDF = tst.fitsJDF(comp, eRep);
            Assert.IsFalse(fitsJDF, "have pt");

            List <ValuedEnum> v = new List <ValuedEnum>();

            v.Add(EnumComponentType.FinalProduct);
            comp.setComponentType(v);
            fitsJDF = tst.fitsJDF(comp, eRep);
            Assert.IsFalse(fitsJDF, "have both");

            comp.removeAttribute("ProductType");
            fitsJDF = tst.fitsJDF(comp, eRep);
            Assert.IsFalse(fitsJDF, "have final");

            v = new List <ValuedEnum>();
            v.Add(EnumComponentType.PartialProduct);
            comp.setComponentType(v);
            fitsJDF = tst.fitsJDF(comp, eRep);
            Assert.IsTrue(fitsJDF, "have no final");
        }
예제 #2
0
        public virtual void createHDCity()
        {
            initCustomerInfo(null, null, "Heidelberger Druckmaschinen AG", "Heidelberg A4 brochure");
            theNode.setDescriptiveName("7.5.5   A4 brochure with spot colors, 4pg Cover 6c/4c, 32 pg Text 4c/4c");
            JDFNode cover = addJDFNode(theNode, EnumType.Product);

            cover.setDescriptiveName("HD Brochure Cover");

            initMediaIntent(cover, 200, EnumSpanCoatings.Glossy, null);
            JDFLayoutIntent li = initLayoutIntent(cover, 21, 29.7, 4, 2);

            initColorIntent(cover, 6, 4, null);
            JDFComponent cCover = initOutputComponent(cover, li, "Cover");

            cCover.setComponentType(EnumComponentType.PartialProduct, EnumComponentType.Sheet);

            JDFNode body = addJDFNode(theNode, EnumType.Product);

            body.setDescriptiveName("HD Brochure Body");
            initColorIntent(body, 4, 4, null);
            initMediaIntent(body, 135, EnumSpanCoatings.Coated, null);
            initLayoutIntent(body, 21, 29.7, 32, 2);
            JDFComponent cBody = initOutputComponent(body, li, "Body");

            cBody.setComponentType(EnumComponentType.PartialProduct, EnumComponentType.Sheet);

            initBindingIntent(cCover, cBody, 2);

            initOutputComponent(theNode, li, null);
            initDeliveryIntent(5000);
        }
예제 #3
0
        public virtual void createAddressBook()
        {
            initCustomerInfo(null, null, "Art Point", "Address Pocketbook");
            theNode.setDescriptiveName("7.5.2   A5 brochure 4c/4c, 4pg Cover, 32 pg Text");
            JDFNode cover = addJDFNode(theNode, EnumType.Product);

            cover.setDescriptiveName("Address Book Cover");

            initMediaIntent(cover, 200, EnumSpanCoatings.Glossy, null);
            JDFLayoutIntent li     = initLayoutIntent(cover, 14.8, 21, 4, 2);
            JDFColorIntent  ci     = initColorIntent(cover, 4, 4, null);
            JDFComponent    cCover = initOutputComponent(cover, li, "Cover");

            cCover.setComponentType(EnumComponentType.PartialProduct, EnumComponentType.Sheet);

            JDFNode body = addJDFNode(theNode, EnumType.Product);

            body.setDescriptiveName("Address Book Body");
            body.linkResource(ci, EnumUsage.Input, null);
            initMediaIntent(body, 135, EnumSpanCoatings.Coated, null);
            initLayoutIntent(body, 14.8, 21, 32, 2);
            JDFComponent cBody = initOutputComponent(body, li, "Body");

            cBody.setComponentType(EnumComponentType.PartialProduct, EnumComponentType.Sheet);

            initBindingIntent(cCover, cBody, 2);

            initOutputComponent(theNode, li, null);
            initDeliveryIntent(5000);
        }
예제 #4
0
        ///
        ///	 * <param name="icsLevel"> </param>
        ///
        protected internal virtual JDFComponent initOutputComponent()
        {
            if (thePreviousNode != null)
            {
                JDFResource parentOutComp = thePreviousNode.getResource(ElementName.COMPONENT, EnumUsage.Output, 0);
                if (parentOutComp != null)
                {
                    theNode.linkResource(parentOutComp, EnumUsage.Input, null);
                }
            }
            JDFComponent outComp = (JDFComponent)(theParentNode != null ? theParentNode.getResource(ElementName.COMPONENT, EnumUsage.Output, 0) : null);

            if (outComp == null)
            {
                outComp = (JDFComponent)theNode.getCreateResource(ElementName.COMPONENT, EnumUsage.Output, 0);
                outComp.setComponentType(EnumComponentType.FinalProduct, EnumComponentType.Sheet);
                outComp.setProductType("Unknown");
            }
            else
            {
                theNode.linkResource(outComp, EnumUsage.Output, null);
            }

            JDFResourceLink rl = theNode.getLink(outComp, EnumUsage.Output);

            if (vParts != null)
            {
                VJDFAttributeMap reducedMap = getReducedMap(new VString("Side Separation", " "));
                if (reducedMap != null)
                {
                    int size = reducedMap.Count;
                    for (int i = 0; i < size; i++)
                    {
                        JDFAttributeMap part     = reducedMap[i];
                        JDFResource     partComp = outComp.getCreatePartition(part, partIDKeys);
                        partComp.setDescriptiveName("Description for Component part# " + i);
                        JDFAttributeMap newMap = new JDFAttributeMap(part);
                        newMap.put(AttributeName.CONDITION, "Good");
                        rl.setAmount(good, newMap);
                    }
                }
            }
            else
            {
                outComp.setDescriptiveName("MIS-CP output Component");
            }
            // outComp.getCreateLayout();
            JDFMedia inMedia = (JDFMedia)theNode.getResource(ElementName.MEDIA, EnumUsage.Input, 0);

            if (inMedia != null)
            {
                outComp.setDimensions(inMedia.getDimension());
            }
            return(outComp);
        }
예제 #5
0
        ///
        ///	 * <param name="icsLevel"> </param>
        ///
        protected internal virtual JDFComponent initOutputComponent(JDFNode node, JDFLayoutIntent li, string productType)
        {
            JDFComponent outComp = (JDFComponent)node.getCreateResource(ElementName.COMPONENT, EnumUsage.Output, 0);

            if (productType == null)
            {
                outComp.setComponentType(EnumComponentType.FinalProduct, EnumComponentType.Sheet);
            }
            else
            {
                outComp.setComponentType(EnumComponentType.PartialProduct, EnumComponentType.Sheet);
                outComp.setProductType(productType);
            }
            theNode.getResource(ElementName.LAYOUTINTENT, null, 0);
            JDFShape s = li.getFinishedDimensions().getActual();

            outComp.setDimensions(s);
            if (theNode != node)
            {
                theNode.getResourcePool().moveElement(outComp, null);
                theNode.linkResource(outComp, EnumUsage.Output, null);
            }
            return(outComp);
        }
예제 #6
0
        ///
        ///	 <summary> * product intent for the drupa flower job
        ///	 *  </summary>
        ///	 * <exception cref="Exception"> </exception>
        ///
        public virtual void createDrupaFlower()
        {
            initCustomerInfo("Jane", "Customer", "Messe Düsseldorf", "CIP4 Drupa Flower Demo Job");
            theNode.setDescriptiveName("Drupa Flower Brochure, 4pg Cover 5c5c, 48 pg Text 5c5c");

            JDFNode cover = addJDFNode(theNode, EnumType.Product);

            cover.setDescriptiveName("Drupa Flower Brochure Cover");

            initMediaIntent(cover, 200, EnumSpanCoatings.Glossy, "Luxocard 2 SB");
            JDFLayoutIntent li = initLayoutIntent(cover, 23.3, 21.6, 4, 2);

            initColorIntent(cover, 5, 5, null);
            JDFComponent cCover = initOutputComponent(cover, li, "Cover");

            cCover.setComponentType(EnumComponentType.PartialProduct, EnumComponentType.Sheet);

            JDFNode body = addJDFNode(theNode, EnumType.Product);

            body.setDescriptiveName("Drupa Flower Brochure Body");
            initColorIntent(body, 5, 5, "Cyan Magenta Yellow Black Blue");
            initMediaIntent(body, 150, EnumSpanCoatings.Glossy, "Scheufelen BVS dull BB");
            initLayoutIntent(body, 23.3, 21.6, 48, 2);
            JDFComponent cBody = initOutputComponent(body, li, "Body");

            cBody.setComponentType(EnumComponentType.PartialProduct, EnumComponentType.Sheet);

            initBindingIntent(cCover, cBody, 2);

            initOutputComponent(theNode, li, null);
            initDeliveryIntent(5000);
            JDFPackingIntent pi = (JDFPackingIntent)theNode.getCreateResource(ElementName.PACKINGINTENT, EnumUsage.Input, 0);

            pi.setDescriptiveName("want cartons of products");
            JDFIntegerSpan @is = pi.appendCartonQuantity();

            @is.setRange(new JDFIntegerRangeList(new JDFIntegerRange(50, 500)));
        }