Java 类javax.print.attribute.standard.Finishings 实例源码

项目:javify    文件:FinishingsSupported.java   
/**
 * Constructs an array from a set of -supported attributes.
 * @param set set to process
 * @return The constructed array.
 *
 * @see #getAssociatedAttribute()
 */
public static Finishings[]
  getAssociatedAttributeArray(Set<Attribute> set)
{
  Finishings[] result = new Finishings[set.size()];
  int j = 0;
  for (Attribute tmp : set)
    {
      result[j] = ((FinishingsSupported) tmp).getAssociatedAttribute();
      j++;
    }
  return result;
}
项目:javify    文件:IppRequest.java   
/**
 * Writes an attribute in EnumSyntax into the stream.
 * @param attribute the attribute
 * @throws IOException if thrown by the stream
 */
private void write(EnumSyntax attribute) throws IOException
{
  // in JPS API enum syntax is used for enums, keyword and boolean types
  String name = ((Attribute) attribute).getName();

  // the enum value types
  if (attribute instanceof Finishings
      || attribute instanceof OrientationRequested
      || attribute instanceof PrintQuality)
    {
      out.writeByte(IppValueTag.ENUM);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(4); // length, enum is 4 bytes
      out.writeInt(attribute.getValue());
    }
  // the boolean value type
  else if (attribute instanceof Fidelity)
    {
      out.writeByte(IppValueTag.BOOLEAN);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(1); // length, boolean is 1 bytes
      out.writeByte(attribute.getValue() == 0 ? 0x00 : 0x01);
    }
  // the keyword value types
  else
    {
      String keyword = attribute.toString();
      out.writeByte(IppValueTag.KEYWORD);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(keyword.length());
      out.write(keyword.getBytes());
    }
}
项目:jvm-stm    文件:FinishingsSupported.java   
/**
 * Constructs an array from a set of -supported attributes.
 * @param set set to process
 * @return The constructed array.
 * 
 * @see #getAssociatedAttribute()
 */
public static Finishings[] getAssociatedAttributeArray(Set set) 
{
  FinishingsSupported tmp;
  Finishings[] result = new Finishings[set.size()];      
  Iterator it = set.iterator();
  int j = 0;
  while (it.hasNext())
    {
      tmp = (FinishingsSupported) it.next();
      result[j] = tmp.getAssociatedAttribute();
      j++;
    }            
  return result;
}
项目:jvm-stm    文件:IppRequest.java   
/**
 * Writes an attribute in EnumSyntax into the stream.
 * @param attribute the attribute
 * @throws IOException if thrown by the stream
 */
private void write(EnumSyntax attribute) throws IOException
{
  // in JPS API enum syntax is used for enums, keyword and boolean types
  String name = ((Attribute) attribute).getName();

  // the enum value types
  if (attribute instanceof Finishings
      || attribute instanceof OrientationRequested
      || attribute instanceof PrintQuality)
    {
      out.writeByte(IppValueTag.ENUM);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(4); // length, enum is 4 bytes
      out.writeInt(attribute.getValue());
    }
  // the boolean value type
  else if (attribute instanceof Fidelity)
    {
      out.writeByte(IppValueTag.BOOLEAN);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(1); // length, boolean is 1 bytes
      out.writeByte(attribute.getValue() == 0 ? 0x00 : 0x01);
    }
  // the keyword value types
  else
    {
      String keyword = attribute.toString();
      out.writeByte(IppValueTag.KEYWORD);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(keyword.length());
      out.write(keyword.getBytes());
    }
}
项目:JamVM-PH    文件:FinishingsSupported.java   
/**
 * Constructs an array from a set of -supported attributes.
 * @param set set to process
 * @return The constructed array.
 * 
 * @see #getAssociatedAttribute()
 */
public static Finishings[] getAssociatedAttributeArray(Set set) 
{
  FinishingsSupported tmp;
  Finishings[] result = new Finishings[set.size()];      
  Iterator it = set.iterator();
  int j = 0;
  while (it.hasNext())
    {
      tmp = (FinishingsSupported) it.next();
      result[j] = tmp.getAssociatedAttribute();
      j++;
    }            
  return result;
}
项目:JamVM-PH    文件:IppRequest.java   
/**
 * Writes an attribute in EnumSyntax into the stream.
 * @param attribute the attribute
 * @throws IOException if thrown by the stream
 */
private void write(EnumSyntax attribute) throws IOException
{
  // in JPS API enum syntax is used for enums, keyword and boolean types
  String name = ((Attribute) attribute).getName();

  // the enum value types
  if (attribute instanceof Finishings
      || attribute instanceof OrientationRequested
      || attribute instanceof PrintQuality)
    {
      out.writeByte(IppValueTag.ENUM);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(4); // length, enum is 4 bytes
      out.writeInt(attribute.getValue());
    }
  // the boolean value type
  else if (attribute instanceof Fidelity)
    {
      out.writeByte(IppValueTag.BOOLEAN);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(1); // length, boolean is 1 bytes
      out.writeByte(attribute.getValue() == 0 ? 0x00 : 0x01);
    }
  // the keyword value types
  else
    {
      String keyword = attribute.toString();
      out.writeByte(IppValueTag.KEYWORD);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(keyword.length());
      out.write(keyword.getBytes());
    }
}
项目:classpath    文件:FinishingsSupported.java   
/**
 * Constructs an array from a set of -supported attributes.
 * @param set set to process
 * @return The constructed array.
 *
 * @see #getAssociatedAttribute()
 */
public static Finishings[]
  getAssociatedAttributeArray(Set<Attribute> set)
{
  Finishings[] result = new Finishings[set.size()];
  int j = 0;
  for (Attribute tmp : set)
    {
      result[j] = ((FinishingsSupported) tmp).getAssociatedAttribute();
      j++;
    }
  return result;
}
项目:classpath    文件:IppRequest.java   
/**
 * Writes an attribute in EnumSyntax into the stream.
 * @param attribute the attribute
 * @throws IOException if thrown by the stream
 */
private void write(EnumSyntax attribute) throws IOException
{
  // in JPS API enum syntax is used for enums, keyword and boolean types
  String name = ((Attribute) attribute).getName();

  // the enum value types
  if (attribute instanceof Finishings
      || attribute instanceof OrientationRequested
      || attribute instanceof PrintQuality)
    {
      out.writeByte(IppValueTag.ENUM);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(4); // length, enum is 4 bytes
      out.writeInt(attribute.getValue());
    }
  // the boolean value type
  else if (attribute instanceof Fidelity)
    {
      out.writeByte(IppValueTag.BOOLEAN);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(1); // length, boolean is 1 bytes
      out.writeByte(attribute.getValue() == 0 ? 0x00 : 0x01);
    }
  // the keyword value types
  else
    {
      String keyword = attribute.toString();
      out.writeByte(IppValueTag.KEYWORD);
      out.writeShort(name.length());
      out.write(name.getBytes());
      out.writeShort(keyword.length());
      out.write(keyword.getBytes());
    }
}
项目:javify    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getDefaultAttributeValue(java.lang.Class)
 */
public Object getDefaultAttributeValue(Class<? extends Attribute> category)
{
  // required attributes
  if (category.equals(Fidelity.class))
    return Fidelity.FIDELITY_FALSE;
  if (category.equals(JobName.class))
    return JOB_NAME;
  if (category.equals(RequestingUserName.class))
    return REQUESTING_USER_NAME;

  // optional attributes
  if (category.equals(JobPriority.class)
      && printerAttr.containsKey(JobPriorityDefault.class))
    return getPrinterDefaultAttribute(JobPriorityDefault.class);
  if (category.equals(JobHoldUntil.class)
      && printerAttr.containsKey(JobHoldUntilDefault.class))
    return getPrinterDefaultAttribute(JobHoldUntilDefault.class);
  if (category.equals(JobSheets.class)
      && printerAttr.containsKey(JobSheetsDefault.class))
    return getPrinterDefaultAttribute(JobSheetsDefault .class);
  if (category.equals(MultipleDocumentHandling.class)
      && printerAttr.containsKey(MultipleDocumentHandlingDefault.class))
    return getPrinterDefaultAttribute(MultipleDocumentHandlingDefault.class);
  if (category.equals(Copies.class)
      && printerAttr.containsKey(CopiesDefault.class))
    return getPrinterDefaultAttribute(CopiesDefault.class);
  if (category.equals(Finishings.class)
      && printerAttr.containsKey(FinishingsDefault.class))
    return getPrinterDefaultAttribute(FinishingsDefault.class);
  if (category.equals(Sides.class)
      && printerAttr.containsKey(SidesDefault.class))
    return getPrinterDefaultAttribute(SidesDefault.class);
  if (category.equals(NumberUp.class)
      && printerAttr.containsKey(NumberUpDefault.class))
    return getPrinterDefaultAttribute(NumberUpDefault.class);
  if (category.equals(OrientationRequested.class)
      && printerAttr.containsKey(OrientationRequestedDefault.class))
    return getPrinterDefaultAttribute(OrientationRequestedDefault.class);
  if (category.equals(Media.class)
      && printerAttr.containsKey(MediaDefault.class))
    return getPrinterDefaultAttribute(MediaDefault.class);
  if (category.equals(PrinterResolution.class)
      && printerAttr.containsKey(PrinterResolutionDefault.class))
    return getPrinterDefaultAttribute(PrinterResolutionDefault.class);
  if (category.equals(PrintQuality.class)
      && printerAttr.containsKey(PrintQualityDefault.class))
    return getPrinterDefaultAttribute(PrintQualityDefault.class);
  if (category.equals(Compression.class)
      && printerAttr.containsKey(CompressionSupported.class))
    return Compression.NONE;
  if (category.equals(PageRanges.class))
    return new PageRanges(1, Integer.MAX_VALUE);

  return null;
}
项目:javify    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getSupportedAttributeCategories()
 */
public Class<?>[] getSupportedAttributeCategories()
{
  Set<Class<? extends Attribute>> categories =
    new HashSet<Class<? extends Attribute>>();

  // Should only be job template attributes as of section 4.2
  if (printerAttr.containsKey(JobPrioritySupported.class))
    categories.add(JobPriority.class);
  if (printerAttr.containsKey(JobHoldUntilSupported.class))
    categories.add(JobHoldUntil.class);
  if (printerAttr.containsKey(JobSheetsSupported.class))
    categories.add(JobSheets.class);
  if (printerAttr.containsKey(MultipleDocumentHandlingSupported.class))
    categories.add(MultipleDocumentHandling.class);
  if (printerAttr.containsKey(CopiesSupported.class))
    categories.add(Copies.class);
  if (printerAttr.containsKey(FinishingsSupported.class))
    {
      // if only none finishing is supported - it does not count as supported
      Set<FinishingsSupported> set = getPrinterAttributeSet(FinishingsSupported.class);
      if (! (set.size() == 1 && set.contains(FinishingsSupported.NONE)))
        categories.add(Finishings.class);
    }
  if (printerAttr.containsKey(PageRangesSupported.class))
    categories.add(PageRanges.class);
  if (printerAttr.containsKey(SidesSupported.class))
    categories.add(Sides.class);
  if (printerAttr.containsKey(NumberUpSupported.class))
    categories.add(NumberUp.class);
  if (printerAttr.containsKey(OrientationRequestedSupported.class))
    categories.add(OrientationRequested.class);
  if (printerAttr.containsKey(MediaSupported.class))
    categories.add(Media.class);
  if (printerAttr.containsKey(PrinterResolutionSupported.class))
    categories.add(PrinterResolution.class);
  if (printerAttr.containsKey(PrintQualitySupported.class))
    categories.add(PrintQuality.class);

  // Chromaticity, Destination, MediaPrintableArea,
  // SheetCollate, PresentationDirection - not IPP attributes

  // attributes outside section 4.2
  if (printerAttr.containsKey(CompressionSupported.class))
    categories.add(Compression.class);
  if (printerAttr.containsKey(JobImpressionsSupported.class))
    categories.add(JobImpressions.class);
  if (printerAttr.containsKey(JobKOctetsSupported.class))
    categories.add(JobKOctets.class);
  if (printerAttr.containsKey(JobMediaSheetsSupported.class))
    categories.add(JobMediaSheets.class);

  // always supported as required by IPP specification
  categories.add(Fidelity.class);
  categories.add(JobName.class);
  categories.add(RequestingUserName.class);

  return categories.toArray(new Class[categories.size()]);
}
项目:jvm-stm    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getDefaultAttributeValue(java.lang.Class)
 */
public Object getDefaultAttributeValue(Class category)
{ 
  // required attributes
  if (category.equals(Fidelity.class))
    return Fidelity.FIDELITY_FALSE;    
  if (category.equals(JobName.class))
    return JOB_NAME;
  if (category.equals(RequestingUserName.class))
    return REQUESTING_USER_NAME;

  // optional attributes
  if (category.equals(JobPriority.class) 
      && printerAttr.containsKey(JobPriorityDefault.class))
    return getPrinterDefaultAttribute(JobPriorityDefault.class);
  if (category.equals(JobHoldUntil.class) 
      && printerAttr.containsKey(JobHoldUntilDefault.class))
    return getPrinterDefaultAttribute(JobHoldUntilDefault.class);
  if (category.equals(JobSheets.class) 
      && printerAttr.containsKey(JobSheetsDefault.class))
    return getPrinterDefaultAttribute(JobSheetsDefault .class);
  if (category.equals(MultipleDocumentHandling.class) 
      && printerAttr.containsKey(MultipleDocumentHandlingDefault.class))
    return getPrinterDefaultAttribute(MultipleDocumentHandlingDefault.class);
  if (category.equals(Copies.class) 
      && printerAttr.containsKey(CopiesDefault.class))
    return getPrinterDefaultAttribute(CopiesDefault.class);
  if (category.equals(Finishings.class) 
      && printerAttr.containsKey(FinishingsDefault.class))
    return getPrinterDefaultAttribute(FinishingsDefault.class);
  if (category.equals(Sides.class) 
      && printerAttr.containsKey(SidesDefault.class))
    return getPrinterDefaultAttribute(SidesDefault.class);
  if (category.equals(NumberUp.class) 
      && printerAttr.containsKey(NumberUpDefault.class))
    return getPrinterDefaultAttribute(NumberUpDefault.class);
  if (category.equals(OrientationRequested.class) 
      && printerAttr.containsKey(OrientationRequestedDefault.class))
    return getPrinterDefaultAttribute(OrientationRequestedDefault.class);
  if (category.equals(Media.class) 
      && printerAttr.containsKey(MediaDefault.class))
    return getPrinterDefaultAttribute(MediaDefault.class);
  if (category.equals(PrinterResolution.class) 
      && printerAttr.containsKey(PrinterResolutionDefault.class))
    return getPrinterDefaultAttribute(PrinterResolutionDefault.class);
  if (category.equals(PrintQuality.class) 
      && printerAttr.containsKey(PrintQualityDefault.class))
    return getPrinterDefaultAttribute(PrintQualityDefault.class);
  if (category.equals(Compression.class) 
      && printerAttr.containsKey(CompressionSupported.class))
    return Compression.NONE;
  if (category.equals(PageRanges.class))
    return new PageRanges(1, Integer.MAX_VALUE);

  return null; 
}
项目:jvm-stm    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getSupportedAttributeCategories()
 */
public Class[] getSupportedAttributeCategories()
{
  Set categories = new HashSet();

  // Should only be job template attributes as of section 4.2    
  if (printerAttr.containsKey(JobPrioritySupported.class))
    categories.add(JobPriority.class);
  if (printerAttr.containsKey(JobHoldUntilSupported.class))
    categories.add(JobHoldUntil.class);
  if (printerAttr.containsKey(JobSheetsSupported.class))
    categories.add(JobSheets.class);
  if (printerAttr.containsKey(MultipleDocumentHandlingSupported.class))
    categories.add(MultipleDocumentHandling.class);    
  if (printerAttr.containsKey(CopiesSupported.class))
    categories.add(Copies.class);
  if (printerAttr.containsKey(FinishingsSupported.class))
    {
      // if only none finishing is supported - it does not count as supported
      Set set = getPrinterAttributeSet(FinishingsSupported.class);        
      if (! (set.size() == 1 && set.contains(FinishingsSupported.NONE)))          
        categories.add(Finishings.class);
    }
  if (printerAttr.containsKey(PageRangesSupported.class))
    categories.add(PageRanges.class);
  if (printerAttr.containsKey(SidesSupported.class))
    categories.add(Sides.class);
  if (printerAttr.containsKey(NumberUpSupported.class))
    categories.add(NumberUp.class);
  if (printerAttr.containsKey(OrientationRequestedSupported.class))
    categories.add(OrientationRequested.class);
  if (printerAttr.containsKey(MediaSupported.class))
    categories.add(Media.class);
  if (printerAttr.containsKey(PrinterResolutionSupported.class))
    categories.add(PrinterResolution.class);
  if (printerAttr.containsKey(PrintQualitySupported.class))
    categories.add(PrintQuality.class);

  // Chromaticity, Destination, MediaPrintableArea, 
  // SheetCollate, PresentationDirection - not IPP attributes

  // attributes outside section 4.2   
  if (printerAttr.containsKey(CompressionSupported.class))
    categories.add(Compression.class);
  if (printerAttr.containsKey(JobImpressionsSupported.class))
    categories.add(JobImpressions.class);
  if (printerAttr.containsKey(JobKOctetsSupported.class))
    categories.add(JobKOctets.class);
  if (printerAttr.containsKey(JobMediaSheetsSupported.class))
    categories.add(JobMediaSheets.class);

  // always supported as required by IPP specification
  categories.add(Fidelity.class);
  categories.add(JobName.class);
  categories.add(RequestingUserName.class);

  return (Class[]) categories.toArray(new Class[categories.size()]);
}
项目:cn1    文件:GetSupportedAttributeValuesTest.java   
public void testGetSupportedAttributeValues() {
    System.out
            .println("============= START testGetSupportedAttributeValues ================");

    PrintService[] services;
    DocFlavor[] flavors = new DocFlavor[] { DocFlavor.INPUT_STREAM.GIF,
            DocFlavor.INPUT_STREAM.POSTSCRIPT,
            DocFlavor.INPUT_STREAM.TEXT_PLAIN_US_ASCII };

    services = PrintServiceLookup.lookupPrintServices(null, null);
    TestUtil.checkServices(services);
    for (int i = 0, ii = services.length; i < ii; i++) {
        System.out.println("\n----------- " + services[i].getName()
                + "----------");

        Class[] cats = services[i].getSupportedAttributeCategories();
        HashAttributeSet aset = new HashAttributeSet();
        aset.add(MediaSizeName.ISO_A0);
        aset.add(OrientationRequested.LANDSCAPE);
        aset.add(Finishings.SADDLE_STITCH);

        for (int l = 0, ll = flavors.length; l < ll; l++) {
            if (services[i].isDocFlavorSupported(flavors[l])) {
                System.out.println("    " + flavors[l]);

                for (int j = 0, jj = cats.length; j < jj; j++) {
                    System.out.println("        " + cats[j]);

                    Object obj = services[i].getSupportedAttributeValues(
                            cats[j], flavors[l], aset);
                    if (obj != null && obj.getClass().isArray()) {
                        Object[] a = (Object[]) obj;
                        for (int k = 0, kk = a.length; k < kk; k++) {
                            System.out.println("            " + a[k]);
                        }
                    } else {
                        System.out.println("            " + obj);
                    }
                }
            }
        }
    }

    System.out
            .println("============= END testGetSupportedAttributeValues ================");
}
项目:cn1    文件:GetUnsupportedAttributesTest.java   
public void testIsAttributeValueSupported() throws Exception {
    System.out
            .println("============= START GetUnsupportedAttributesTest ================");

    PrintService[] services;
    DocFlavor[] flavors = new DocFlavor[] { DocFlavor.INPUT_STREAM.GIF,
            DocFlavor.INPUT_STREAM.POSTSCRIPT,
            DocFlavor.INPUT_STREAM.TEXT_PLAIN_US_ASCII };

    services = PrintServiceLookup.lookupPrintServices(null, null);
    TestUtil.checkServices(services);
    if (services.length > 0) {
        for (int i = 0, ii = services.length; i < ii; i++) {
            System.out.println("----------- " + services[i].getName()
                    + "----------");

            URI uri = null;
            try {
                uri = new URI("file:///c:/no/such/dir/print.out");
                //uri = File.createTempFile("xxx", null).toURI();
            } catch (URISyntaxException e) {
                fail();
            }

            AttributeSet attrs = new HashAttributeSet();
            attrs.add(Finishings.EDGE_STITCH);
            attrs.add(MediaSizeName.JAPANESE_DOUBLE_POSTCARD);
            attrs.add(new Destination(uri));
            attrs.add(new DocumentName("Doc X", Locale.US));
            attrs.add(new JobName("Job Y", Locale.US));
            attrs.add(new RequestingUserName("User Z", Locale.US));

            for (int j = 0; j < flavors.length; j++) {
                if (services[i].isDocFlavorSupported(flavors[j])) {
                    AttributeSet aset = services[i]
                            .getUnsupportedAttributes(flavors[j], attrs);
                    if (aset == null) {
                        fail("At least one attribute is unsupported");
                    }
                    if (aset != null) {
                        Attribute[] aarr = aset.toArray();
                        System.out
                                .println("Usupported attributes fo DocFlavor "
                                        + flavors[j]);
                        for (int k = 0, kk = aarr.length; k < kk; k++) {
                            System.out.println("\t" + aarr[k]);
                        }
                    }
                }
            }
        }
    }

    System.out
            .println("============= END GetUnsupportedAttributesTest ================");
}
项目:JamVM-PH    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getDefaultAttributeValue(java.lang.Class)
 */
public Object getDefaultAttributeValue(Class category)
{ 
  // required attributes
  if (category.equals(Fidelity.class))
    return Fidelity.FIDELITY_FALSE;    
  if (category.equals(JobName.class))
    return JOB_NAME;
  if (category.equals(RequestingUserName.class))
    return REQUESTING_USER_NAME;

  // optional attributes
  if (category.equals(JobPriority.class) 
      && printerAttr.containsKey(JobPriorityDefault.class))
    return getPrinterDefaultAttribute(JobPriorityDefault.class);
  if (category.equals(JobHoldUntil.class) 
      && printerAttr.containsKey(JobHoldUntilDefault.class))
    return getPrinterDefaultAttribute(JobHoldUntilDefault.class);
  if (category.equals(JobSheets.class) 
      && printerAttr.containsKey(JobSheetsDefault.class))
    return getPrinterDefaultAttribute(JobSheetsDefault .class);
  if (category.equals(MultipleDocumentHandling.class) 
      && printerAttr.containsKey(MultipleDocumentHandlingDefault.class))
    return getPrinterDefaultAttribute(MultipleDocumentHandlingDefault.class);
  if (category.equals(Copies.class) 
      && printerAttr.containsKey(CopiesDefault.class))
    return getPrinterDefaultAttribute(CopiesDefault.class);
  if (category.equals(Finishings.class) 
      && printerAttr.containsKey(FinishingsDefault.class))
    return getPrinterDefaultAttribute(FinishingsDefault.class);
  if (category.equals(Sides.class) 
      && printerAttr.containsKey(SidesDefault.class))
    return getPrinterDefaultAttribute(SidesDefault.class);
  if (category.equals(NumberUp.class) 
      && printerAttr.containsKey(NumberUpDefault.class))
    return getPrinterDefaultAttribute(NumberUpDefault.class);
  if (category.equals(OrientationRequested.class) 
      && printerAttr.containsKey(OrientationRequestedDefault.class))
    return getPrinterDefaultAttribute(OrientationRequestedDefault.class);
  if (category.equals(Media.class) 
      && printerAttr.containsKey(MediaDefault.class))
    return getPrinterDefaultAttribute(MediaDefault.class);
  if (category.equals(PrinterResolution.class) 
      && printerAttr.containsKey(PrinterResolutionDefault.class))
    return getPrinterDefaultAttribute(PrinterResolutionDefault.class);
  if (category.equals(PrintQuality.class) 
      && printerAttr.containsKey(PrintQualityDefault.class))
    return getPrinterDefaultAttribute(PrintQualityDefault.class);
  if (category.equals(Compression.class) 
      && printerAttr.containsKey(CompressionSupported.class))
    return Compression.NONE;
  if (category.equals(PageRanges.class))
    return new PageRanges(1, Integer.MAX_VALUE);

  return null; 
}
项目:JamVM-PH    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getSupportedAttributeCategories()
 */
public Class[] getSupportedAttributeCategories()
{
  Set categories = new HashSet();

  // Should only be job template attributes as of section 4.2    
  if (printerAttr.containsKey(JobPrioritySupported.class))
    categories.add(JobPriority.class);
  if (printerAttr.containsKey(JobHoldUntilSupported.class))
    categories.add(JobHoldUntil.class);
  if (printerAttr.containsKey(JobSheetsSupported.class))
    categories.add(JobSheets.class);
  if (printerAttr.containsKey(MultipleDocumentHandlingSupported.class))
    categories.add(MultipleDocumentHandling.class);    
  if (printerAttr.containsKey(CopiesSupported.class))
    categories.add(Copies.class);
  if (printerAttr.containsKey(FinishingsSupported.class))
    {
      // if only none finishing is supported - it does not count as supported
      Set set = getPrinterAttributeSet(FinishingsSupported.class);        
      if (! (set.size() == 1 && set.contains(FinishingsSupported.NONE)))          
        categories.add(Finishings.class);
    }
  if (printerAttr.containsKey(PageRangesSupported.class))
    categories.add(PageRanges.class);
  if (printerAttr.containsKey(SidesSupported.class))
    categories.add(Sides.class);
  if (printerAttr.containsKey(NumberUpSupported.class))
    categories.add(NumberUp.class);
  if (printerAttr.containsKey(OrientationRequestedSupported.class))
    categories.add(OrientationRequested.class);
  if (printerAttr.containsKey(MediaSupported.class))
    categories.add(Media.class);
  if (printerAttr.containsKey(PrinterResolutionSupported.class))
    categories.add(PrinterResolution.class);
  if (printerAttr.containsKey(PrintQualitySupported.class))
    categories.add(PrintQuality.class);

  // Chromaticity, Destination, MediaPrintableArea, 
  // SheetCollate, PresentationDirection - not IPP attributes

  // attributes outside section 4.2   
  if (printerAttr.containsKey(CompressionSupported.class))
    categories.add(Compression.class);
  if (printerAttr.containsKey(JobImpressionsSupported.class))
    categories.add(JobImpressions.class);
  if (printerAttr.containsKey(JobKOctetsSupported.class))
    categories.add(JobKOctets.class);
  if (printerAttr.containsKey(JobMediaSheetsSupported.class))
    categories.add(JobMediaSheets.class);

  // always supported as required by IPP specification
  categories.add(Fidelity.class);
  categories.add(JobName.class);
  categories.add(RequestingUserName.class);

  return (Class[]) categories.toArray(new Class[categories.size()]);
}
项目:classpath    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getDefaultAttributeValue(java.lang.Class)
 */
public Object getDefaultAttributeValue(Class<? extends Attribute> category)
{
  // required attributes
  if (category.equals(Fidelity.class))
    return Fidelity.FIDELITY_FALSE;
  if (category.equals(JobName.class))
    return JOB_NAME;
  if (category.equals(RequestingUserName.class))
    return REQUESTING_USER_NAME;

  // optional attributes
  if (category.equals(JobPriority.class)
      && printerAttr.containsKey(JobPriorityDefault.class))
    return getPrinterDefaultAttribute(JobPriorityDefault.class);
  if (category.equals(JobHoldUntil.class)
      && printerAttr.containsKey(JobHoldUntilDefault.class))
    return getPrinterDefaultAttribute(JobHoldUntilDefault.class);
  if (category.equals(JobSheets.class)
      && printerAttr.containsKey(JobSheetsDefault.class))
    return getPrinterDefaultAttribute(JobSheetsDefault .class);
  if (category.equals(MultipleDocumentHandling.class)
      && printerAttr.containsKey(MultipleDocumentHandlingDefault.class))
    return getPrinterDefaultAttribute(MultipleDocumentHandlingDefault.class);
  if (category.equals(Copies.class)
      && printerAttr.containsKey(CopiesDefault.class))
    return getPrinterDefaultAttribute(CopiesDefault.class);
  if (category.equals(Finishings.class)
      && printerAttr.containsKey(FinishingsDefault.class))
    return getPrinterDefaultAttribute(FinishingsDefault.class);
  if (category.equals(Sides.class)
      && printerAttr.containsKey(SidesDefault.class))
    return getPrinterDefaultAttribute(SidesDefault.class);
  if (category.equals(NumberUp.class)
      && printerAttr.containsKey(NumberUpDefault.class))
    return getPrinterDefaultAttribute(NumberUpDefault.class);
  if (category.equals(OrientationRequested.class)
      && printerAttr.containsKey(OrientationRequestedDefault.class))
    return getPrinterDefaultAttribute(OrientationRequestedDefault.class);
  if (category.equals(Media.class)
      && printerAttr.containsKey(MediaDefault.class))
    return getPrinterDefaultAttribute(MediaDefault.class);
  if (category.equals(PrinterResolution.class)
      && printerAttr.containsKey(PrinterResolutionDefault.class))
    return getPrinterDefaultAttribute(PrinterResolutionDefault.class);
  if (category.equals(PrintQuality.class)
      && printerAttr.containsKey(PrintQualityDefault.class))
    return getPrinterDefaultAttribute(PrintQualityDefault.class);
  if (category.equals(Compression.class)
      && printerAttr.containsKey(CompressionSupported.class))
    return Compression.NONE;
  if (category.equals(PageRanges.class))
    return new PageRanges(1, Integer.MAX_VALUE);

  return null;
}
项目:classpath    文件:IppPrintService.java   
/**
 * @see javax.print.PrintService#getSupportedAttributeCategories()
 */
public Class<?>[] getSupportedAttributeCategories()
{
  Set<Class<? extends Attribute>> categories =
    new HashSet<Class<? extends Attribute>>();

  // Should only be job template attributes as of section 4.2
  if (printerAttr.containsKey(JobPrioritySupported.class))
    categories.add(JobPriority.class);
  if (printerAttr.containsKey(JobHoldUntilSupported.class))
    categories.add(JobHoldUntil.class);
  if (printerAttr.containsKey(JobSheetsSupported.class))
    categories.add(JobSheets.class);
  if (printerAttr.containsKey(MultipleDocumentHandlingSupported.class))
    categories.add(MultipleDocumentHandling.class);
  if (printerAttr.containsKey(CopiesSupported.class))
    categories.add(Copies.class);
  if (printerAttr.containsKey(FinishingsSupported.class))
    {
      // if only none finishing is supported - it does not count as supported
      Set<FinishingsSupported> set = getPrinterAttributeSet(FinishingsSupported.class);
      if (! (set.size() == 1 && set.contains(FinishingsSupported.NONE)))
        categories.add(Finishings.class);
    }
  if (printerAttr.containsKey(PageRangesSupported.class))
    categories.add(PageRanges.class);
  if (printerAttr.containsKey(SidesSupported.class))
    categories.add(Sides.class);
  if (printerAttr.containsKey(NumberUpSupported.class))
    categories.add(NumberUp.class);
  if (printerAttr.containsKey(OrientationRequestedSupported.class))
    categories.add(OrientationRequested.class);
  if (printerAttr.containsKey(MediaSupported.class))
    categories.add(Media.class);
  if (printerAttr.containsKey(PrinterResolutionSupported.class))
    categories.add(PrinterResolution.class);
  if (printerAttr.containsKey(PrintQualitySupported.class))
    categories.add(PrintQuality.class);

  // Chromaticity, Destination, MediaPrintableArea,
  // SheetCollate, PresentationDirection - not IPP attributes

  // attributes outside section 4.2
  if (printerAttr.containsKey(CompressionSupported.class))
    categories.add(Compression.class);
  if (printerAttr.containsKey(JobImpressionsSupported.class))
    categories.add(JobImpressions.class);
  if (printerAttr.containsKey(JobKOctetsSupported.class))
    categories.add(JobKOctets.class);
  if (printerAttr.containsKey(JobMediaSheetsSupported.class))
    categories.add(JobMediaSheets.class);

  // always supported as required by IPP specification
  categories.add(Fidelity.class);
  categories.add(JobName.class);
  categories.add(RequestingUserName.class);

  return categories.toArray(new Class[categories.size()]);
}
项目:freeVM    文件:GetSupportedAttributeValuesTest.java   
public void testGetSupportedAttributeValues() {
    System.out
            .println("============= START testGetSupportedAttributeValues ================");

    PrintService[] services;
    DocFlavor[] flavors = new DocFlavor[] { DocFlavor.INPUT_STREAM.GIF,
            DocFlavor.INPUT_STREAM.POSTSCRIPT,
            DocFlavor.INPUT_STREAM.TEXT_PLAIN_US_ASCII };

    services = PrintServiceLookup.lookupPrintServices(null, null);
    TestUtil.checkServices(services);
    for (int i = 0, ii = services.length; i < ii; i++) {
        System.out.println("\n----------- " + services[i].getName()
                + "----------");

        Class[] cats = services[i].getSupportedAttributeCategories();
        HashAttributeSet aset = new HashAttributeSet();
        aset.add(MediaSizeName.ISO_A0);
        aset.add(OrientationRequested.LANDSCAPE);
        aset.add(Finishings.SADDLE_STITCH);

        for (int l = 0, ll = flavors.length; l < ll; l++) {
            if (services[i].isDocFlavorSupported(flavors[l])) {
                System.out.println("    " + flavors[l]);

                for (int j = 0, jj = cats.length; j < jj; j++) {
                    System.out.println("        " + cats[j]);

                    Object obj = services[i].getSupportedAttributeValues(
                            cats[j], flavors[l], aset);
                    if (obj != null && obj.getClass().isArray()) {
                        Object[] a = (Object[]) obj;
                        for (int k = 0, kk = a.length; k < kk; k++) {
                            System.out.println("            " + a[k]);
                        }
                    } else {
                        System.out.println("            " + obj);
                    }
                }
            }
        }
    }

    System.out
            .println("============= END testGetSupportedAttributeValues ================");
}
项目:freeVM    文件:GetUnsupportedAttributesTest.java   
public void testIsAttributeValueSupported() throws Exception {
    System.out
            .println("============= START GetUnsupportedAttributesTest ================");

    PrintService[] services;
    DocFlavor[] flavors = new DocFlavor[] { DocFlavor.INPUT_STREAM.GIF,
            DocFlavor.INPUT_STREAM.POSTSCRIPT,
            DocFlavor.INPUT_STREAM.TEXT_PLAIN_US_ASCII };

    services = PrintServiceLookup.lookupPrintServices(null, null);
    TestUtil.checkServices(services);
    if (services.length > 0) {
        for (int i = 0, ii = services.length; i < ii; i++) {
            System.out.println("----------- " + services[i].getName()
                    + "----------");

            URI uri = null;
            try {
                uri = new URI("file:///c:/no/such/dir/print.out");
                //uri = File.createTempFile("xxx", null).toURI();
            } catch (URISyntaxException e) {
                fail();
            }

            AttributeSet attrs = new HashAttributeSet();
            attrs.add(Finishings.EDGE_STITCH);
            attrs.add(MediaSizeName.JAPANESE_DOUBLE_POSTCARD);
            attrs.add(new Destination(uri));
            attrs.add(new DocumentName("Doc X", Locale.US));
            attrs.add(new JobName("Job Y", Locale.US));
            attrs.add(new RequestingUserName("User Z", Locale.US));

            for (int j = 0; j < flavors.length; j++) {
                if (services[i].isDocFlavorSupported(flavors[j])) {
                    AttributeSet aset = services[i]
                            .getUnsupportedAttributes(flavors[j], attrs);
                    if (aset == null) {
                        fail("At least one attribute is unsupported");
                    }
                    if (aset != null) {
                        Attribute[] aarr = aset.toArray();
                        System.out
                                .println("Usupported attributes fo DocFlavor "
                                        + flavors[j]);
                        for (int k = 0, kk = aarr.length; k < kk; k++) {
                            System.out.println("\t" + aarr[k]);
                        }
                    }
                }
            }
        }
    }

    System.out
            .println("============= END GetUnsupportedAttributesTest ================");
}
项目:freeVM    文件:GetSupportedAttributeValuesTest.java   
public void testGetSupportedAttributeValues() {
    System.out
            .println("============= START testGetSupportedAttributeValues ================");

    PrintService[] services;
    DocFlavor[] flavors = new DocFlavor[] { DocFlavor.INPUT_STREAM.GIF,
            DocFlavor.INPUT_STREAM.POSTSCRIPT,
            DocFlavor.INPUT_STREAM.TEXT_PLAIN_US_ASCII };

    services = PrintServiceLookup.lookupPrintServices(null, null);
    TestUtil.checkServices(services);
    for (int i = 0, ii = services.length; i < ii; i++) {
        System.out.println("\n----------- " + services[i].getName()
                + "----------");

        Class[] cats = services[i].getSupportedAttributeCategories();
        HashAttributeSet aset = new HashAttributeSet();
        aset.add(MediaSizeName.ISO_A0);
        aset.add(OrientationRequested.LANDSCAPE);
        aset.add(Finishings.SADDLE_STITCH);

        for (int l = 0, ll = flavors.length; l < ll; l++) {
            if (services[i].isDocFlavorSupported(flavors[l])) {
                System.out.println("    " + flavors[l]);

                for (int j = 0, jj = cats.length; j < jj; j++) {
                    System.out.println("        " + cats[j]);

                    Object obj = services[i].getSupportedAttributeValues(
                            cats[j], flavors[l], aset);
                    if (obj != null && obj.getClass().isArray()) {
                        Object[] a = (Object[]) obj;
                        for (int k = 0, kk = a.length; k < kk; k++) {
                            System.out.println("            " + a[k]);
                        }
                    } else {
                        System.out.println("            " + obj);
                    }
                }
            }
        }
    }

    System.out
            .println("============= END testGetSupportedAttributeValues ================");
}
项目:freeVM    文件:GetUnsupportedAttributesTest.java   
public void testIsAttributeValueSupported() throws Exception {
    System.out
            .println("============= START GetUnsupportedAttributesTest ================");

    PrintService[] services;
    DocFlavor[] flavors = new DocFlavor[] { DocFlavor.INPUT_STREAM.GIF,
            DocFlavor.INPUT_STREAM.POSTSCRIPT,
            DocFlavor.INPUT_STREAM.TEXT_PLAIN_US_ASCII };

    services = PrintServiceLookup.lookupPrintServices(null, null);
    TestUtil.checkServices(services);
    if (services.length > 0) {
        for (int i = 0, ii = services.length; i < ii; i++) {
            System.out.println("----------- " + services[i].getName()
                    + "----------");

            URI uri = null;
            try {
                uri = new URI("file:///c:/no/such/dir/print.out");
                //uri = File.createTempFile("xxx", null).toURI();
            } catch (URISyntaxException e) {
                fail();
            }

            AttributeSet attrs = new HashAttributeSet();
            attrs.add(Finishings.EDGE_STITCH);
            attrs.add(MediaSizeName.JAPANESE_DOUBLE_POSTCARD);
            attrs.add(new Destination(uri));
            attrs.add(new DocumentName("Doc X", Locale.US));
            attrs.add(new JobName("Job Y", Locale.US));
            attrs.add(new RequestingUserName("User Z", Locale.US));

            for (int j = 0; j < flavors.length; j++) {
                if (services[i].isDocFlavorSupported(flavors[j])) {
                    AttributeSet aset = services[i]
                            .getUnsupportedAttributes(flavors[j], attrs);
                    if (aset == null) {
                        fail("At least one attribute is unsupported");
                    }
                    if (aset != null) {
                        Attribute[] aarr = aset.toArray();
                        System.out
                                .println("Usupported attributes fo DocFlavor "
                                        + flavors[j]);
                        for (int k = 0, kk = aarr.length; k < kk; k++) {
                            System.out.println("\t" + aarr[k]);
                        }
                    }
                }
            }
        }
    }

    System.out
            .println("============= END GetUnsupportedAttributesTest ================");
}
项目:javify    文件:FinishingsSupported.java   
/**
 * Returns the equally enum of the standard attribute class
 * of this SupportedValuesAttribute enum.
 *
 * @return The enum of the standard attribute class.
 */
public Finishings getAssociatedAttribute()
{
  return (Finishings) IppUtilities.getEnumAttribute(
         "finishings", new Integer(getValue()));
}
项目:jvm-stm    文件:FinishingsSupported.java   
/**
 * Returns the equally enum of the standard attribute class
 * of this SupportedValuesAttribute enum.
 * 
 * @return The enum of the standard attribute class.
 */
public Finishings getAssociatedAttribute() 
{
  return (Finishings) IppUtilities.getEnumAttribute(
         "finishings", new Integer(getValue()));
}
项目:JamVM-PH    文件:FinishingsSupported.java   
/**
 * Returns the equally enum of the standard attribute class
 * of this SupportedValuesAttribute enum.
 * 
 * @return The enum of the standard attribute class.
 */
public Finishings getAssociatedAttribute() 
{
  return (Finishings) IppUtilities.getEnumAttribute(
         "finishings", new Integer(getValue()));
}
项目:classpath    文件:FinishingsSupported.java   
/**
 * Returns the equally enum of the standard attribute class
 * of this SupportedValuesAttribute enum.
 *
 * @return The enum of the standard attribute class.
 */
public Finishings getAssociatedAttribute()
{
  return (Finishings) IppUtilities.getEnumAttribute(
         "finishings", new Integer(getValue()));
}