catch (IOException myIOException) {
}
}
}
PartitionDescriptor myPartitionDescriptor = new PartitionDescriptor();
myPartitionDescriptor.DescriptorTag.TagSerialNumber = tagSerialNumber;
myPartitionDescriptor.DescriptorTag.DescriptorVersion = descriptorVersion;
myPartitionDescriptor.DescriptorTag.TagLocation = tagLocation;
myPartitionDescriptor.VolumeDescriptorSequenceNumber = volumeDescriptorSequenceNumber;
myPartitionDescriptor.PartitionFlags = 1;
myPartitionDescriptor.PartitionNumber = 0;
try {
myPartitionDescriptor.PartitionContents.setIdentifier("+NSR03");
myPartitionDescriptor.ImplementationIdentifier.setIdentifier(applicationIdentifier);
}
catch (Exception myException) {
throw new HandlerException(myException);
}
myPartitionDescriptor.AccessType = 1; // read only
myPartitionDescriptor.PartitonStartingLocation = partitionStartingBlock;
myPartitionDescriptor.PartitionLength = partitionEndingBlock - partitionStartingBlock;
myPartitionDescriptor.ImplementationIdentifier.IdentifierSuffix = applicationIdentifierSuffix;
/*
// full element with descriptor tag
super.data( new ByteArrayDataReference( myPartitionDescriptor.getBytes( blockSize ) ) );
*/
// without descriptor tag (handled in next pipeline section)
super.startElement(new SabreUDFElement(SabreUDFElement.UDFElementType.DescriptorTag));
super.data(new WordDataReference(5)); // tag identifier
super.data(new WordDataReference(tagLocation)); // tag location
super.data(new WordDataReference(tagSerialNumber)); // tag serial number
super.data(new WordDataReference(descriptorVersion)); // descriptor version
super.data(new ByteArrayDataReference(myPartitionDescriptor.getBytesWithoutDescriptorTag()));
super.endElement();
}