### Boot plugin message catalog

ok = OK

### URL
url.badVariant=Unsupported "platform:" protocol variation {0}
url.invalidURL=Invalid "platform:" URL {0}
url.createConnection=Unable to create connection {0}

### Update
update.expecting=Expecting {0}
update.expectingEnd=Expecting end element </{0}>
update.resourceNotFound=Resource not found {0}
update.conflicts={0} {1} cannot be installed because of conflicts
update.conflictsWith={0} {1} cannot be installed because of conflicts with {2} {3}
update.conflictsId=\   {0} version {1}
update.unableToOpen=Unable to open file
update.unableToWrite=Unable to write to file
update.endOfLine=Unexpected end of line

### Platform Configuration
cfig.unableToLoad.incomplete=Unable to load {0}
cfig.unableToLoad.noURL=Configuration file location not specified
cfig.unableToSave.noURL=Configuration file save location not specified
