Ignore:
Timestamp:
06/27/14 23:41:03 (10 years ago)
Author:
Oliver Schonefeld
Message:
  • some more re-factoring and renaming
File:
1 edited

Legend:

Unmodified
Added
Removed
  • CMDIValidator/trunk/cmdi-validator-core/src/main/java/eu/clarin/cmdi/validator/extensions/CheckHandlesExtension.java

    r5394 r5402  
    3131import eu.clarin.cmdi.validator.CMDIValidatorExtension;
    3232import eu.clarin.cmdi.validator.CMDIValidatorInitException;
    33 import eu.clarin.cmdi.validator.CMDIValidatorWriteableResult;
     33import eu.clarin.cmdi.validator.CMDIWriteableValidationReport;
    3434import eu.clarin.cmdi.validator.utils.HandleResolver;
    35 import eu.clarin.cmdi.validator.utils.SaxonLocationUtils;
     35import eu.clarin.cmdi.validator.utils.LocationUtils;
    3636
    3737public class CheckHandlesExtension extends CMDIValidatorExtension {
     
    7979
    8080    @Override
    81     public void validate(XdmNode document, CMDIValidatorWriteableResult result)
     81    public void validate(final XdmNode document,
     82            final CMDIWriteableValidationReport report)
    8283            throws CMDIValidatorException {
    8384        try {
     
    8687            for (XdmItem item : selector) {
    8788                String handle = null;
    88                 final int line   = SaxonLocationUtils.getLineNumber(item);
    89                 final int column = SaxonLocationUtils.getColumnNumber(item);
     89                final int line   = LocationUtils.getLineNumber(item);
     90                final int column = LocationUtils.getColumnNumber(item);
    9091                final String h = item.getStringValue();
    9192                if (h != null) {
     
    9596                    } else {
    9697                        if (!handle.equals(h)) {
    97                             result.reportWarning(line, column, "handle '" + h +
     98                            report.reportWarning(line, column, "handle '" + h +
    9899                                    "' contains leading or tailing spaces " +
    99100                                    "within <ResourceRef> element");
     
    103104
    104105                if (handle != null) {
    105                     checkHandleURISyntax(handle, result, line, column);
    106                 } else {
    107                     result.reportError(line, column,
     106                    checkHandleURISyntax(report, handle, line, column);
     107                } else {
     108                    report.reportError(line, column,
    108109                            "invalid handle (<ResourceRef> was empty)");
    109110                }
     
    115116
    116117
    117     private void checkHandleURISyntax(String handle,
    118             CMDIValidatorWriteableResult result, int line, int column)
    119             throws CMDIValidatorException {
     118    private void checkHandleURISyntax(
     119            final CMDIWriteableValidationReport report, final String handle,
     120            final int line, final int column) throws CMDIValidatorException {
    120121        try {
    121122            final URI uri = new URI(handle);
     
    128129                    final URI actionableURI =
    129130                            new URI(HDL_PROXY_HTTP, HDL_PROXY_HOST, path, null);
    130                     checkHandleResolves(actionableURI, result, line, column);
     131                    checkHandleResolves(report, actionableURI, line, column);
    131132                } catch (URISyntaxException e) {
    132133                    /* should not happen */
     
    136137            } else if (URN_SCHEME.equals(uri.getScheme())) {
    137138                if (resolveHandles) {
    138                     result.reportInfo(line, column, "PID '" + handle +
     139                    report.reportInfo(line, column, "PID '" + handle +
    139140                            "' skipped, because URN resolving is not supported");
    140141                } else {
    141                     result.reportInfo(line, column, "PID '" + handle +
     142                    report.reportInfo(line, column, "PID '" + handle +
    142143                            "' skipped, because URN sytax checking is not supported");
    143144                }
     
    146147                if (uri.getHost() != null) {
    147148                    if (!HDL_PROXY_HOST.equalsIgnoreCase(uri.getHost())) {
    148                         result.reportError(line, column,
     149                        report.reportError(line, column,
    149150                                "The URI of PID '" + handle +
    150151                                "' contains an unexpected host part of '" +
    151152                                uri.getHost() + "'");
    152153                    }
    153                     checkHandleResolves(uri, result, line, column);
    154                 } else {
    155                     result.reportError(line, column, "The URI of PID '" +
     154                    checkHandleResolves(report, uri, line, column);
     155                } else {
     156                    report.reportError(line, column, "The URI of PID '" +
    156157                            handle + "' is missing the host part");
    157158                }
    158159            } else {
    159160                if (uri.getScheme() != null) {
    160                     result.reportError(line, column,
     161                    report.reportError(line, column,
    161162                            "The URI of PID '" + handle +
    162163                            "' contains an unexpected schema part of '" +
    163164                            uri.getScheme() + "'");
    164165                } else {
    165                     result.reportError(line, column, "The URI of PID '" +
     166                    report.reportError(line, column, "The URI of PID '" +
    166167                            handle + "' is missing a proper schema part");
    167168                }
    168169            }
    169170        } catch (URISyntaxException e) {
    170             result.reportError(line, column, "PID '" + handle +
     171            report.reportError(line, column, "PID '" + handle +
    171172                    "' is not a well-formed URI: " + e.getMessage());
    172173        }
     
    174175
    175176
    176     private void checkHandleResolves(URI uri,
    177             CMDIValidatorWriteableResult result, int line, int column)
    178             throws CMDIValidatorException {
     177    private void checkHandleResolves(
     178            final CMDIWriteableValidationReport result, final URI uri,
     179            final int line, final int column) throws CMDIValidatorException {
    179180        if (resolver != null) {
    180181            try {
Note: See TracChangeset for help on using the changeset viewer.