Package weka.core.xml

# Class SerialUIDChanger

java.lang.Object
weka.core.xml.SerialUIDChanger

All Implemented Interfaces:
  `RevisionHandler`

public class SerialUIDChanger extends Object implements RevisionHandler
This class enables one to change the UID of a serialized object and therefore not losing the data stored in the binary format.

Version:
  $Revision: 1.3 $
Author:
  FracPete (fracpete at waikato dot ac dot nz)

## Constructor Summary

Constructors
Constructor
Description
`SerialUIDChanger()`

## Method Summary

Modifier and Type
Method
Description
`static void`
`binaryToKOML(String binary, String koml)`
converts a binary file into a KOML XML file
`static void`
`changeUID(long oldUID, long newUID, String fromFile, String toFile)`
changes the oldUID into newUID from the given file (binary/KOML) into the other one (binary/KOML).
`String`
`getRevision()`
Returns the revision string.
`static boolean`
`isKOML(String filename)`
checks whether the given filename ends with ".koml"
`static void`
`komlToBinary(String koml, String binary)`
converts a KOML file into a binary one
`static void`
`main(String[] args)`
exchanges an old UID for a new one.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### SerialUIDChanger

public SerialUIDChanger()

## Method Details

### isKOML

public static boolean isKOML(String filename)
checks whether the given filename ends with ".koml"

Parameters:
  `filename` - the filename to check
Returns:
  whether it is a KOML file or not
See Also:
  - `KOML.FILE_EXTENSION`

### binaryToKOML

public static void binaryToKOML(String binary, String koml) throws Exception
converts a binary file into a KOML XML file

Parameters:
  `binary` - the binary file to convert
  `koml` - where to store the XML output
Throws:
  `Exception` - if conversion fails

### komlToBinary

public static void komlToBinary(String koml, String binary) throws Exception
converts a KOML file into a binary one

Parameters:
  `koml` - the filename with the XML data
  `binary` - the name of the
Throws:
  `Exception`

### changeUID

public static void changeUID(long oldUID, long newUID, String fromFile, String toFile) throws Exception
changes the oldUID into newUID from the given file (binary/KOML) into the other one (binary/KOML). it basically does a replace in the XML, i.e. it looks for " uid='oldUID'" and replaces it with " uid='newUID'".

Parameters:
  `oldUID` - the old UID to change
  `newUID` - the new UID to use
  `fromFile` - the original file with the old UID
  `toFile` - the new file where to store the modified UID
Throws:
  `Exception` - if conversion fails

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Returns:
  the revision

### main

public static void main(String[] args) throws Exception
exchanges an old UID for a new one. a file that doesn't end with ".koml" is considered being binary. takes four arguments: oldUID newUID oldFilename newFilename

Parameters:
  `args` - the command line parameters
Throws:
  `Exception`
See Also:
  - `KOML.FILE_EXTENSION`