Eiffel Media API
Overview Cluster Class Classes Index      Previous Next      Top Features

xml.resolver.catalog

Class XM_STRING_URI_RESOLVER


Direct ancestors

XM_URI_RESOLVER, XM_SHARED_CATALOG_MANAGER, KL_IMPORTED_STRING_ROUTINES

Creation

Features

Invariants

indexing

description

External URI resolver for the string scheme using%
%the bootstrap resolver's well_known_system_ids.

library

Gobo Eiffel XML Library

copyright

Copyright (c) 2004, Colin Adams and others

license

Eiffel Forum License v2 (see forum.txt)

date

$Date: 2005/07/13 19:49:02 $

revision

$Revision: 1.3 $

class

XM_STRING_URI_RESOLVER

inherit

XM_URI_RESOLVER
XM_SHARED_CATALOG_MANAGER

create

make

-- Create.

feature -- Access

string_: KL_STRING_ROUTINES

-- Routines that ought to be in class STRING

-- (From KL_IMPORTED_STRING_ROUTINES)

ensure
string_routines_not_void: Result /= Void
shared_catalog_manager: XM_CATALOG_MANAGER

-- Shared catalog manager

-- (From XM_SHARED_CATALOG_MANAGER)

ensure
shared_catalog_manager_not_void: Result /= Void

feature -- Status report

scheme: STRING

-- (From XM_URI_RESOLVER)

ensure
result_not_void: Result /= Void
result_not_empty: not Result.is_empty

feature

make

-- Create.

feature -- Action(s)

resolve (a_uri: UT_URI)

-- Resolve file URI.

-- (From XM_URI_RESOLVER)

require
a_uri_not_void: a_uri /= Void
a_uri_absolute: a_uri.is_absolute
a_uri_scheme: STRING_.same_string (scheme, a_uri.scheme)
ensure
stream_open_on_success: not has_error implies last_stream.is_open_read

feature -- Result

has_error: BOOLEAN

-- Is there an error?

-- (From XM_URI_RESOLVER)

has_media_type: BOOLEAN

-- Is the media type available.

-- (From XM_URI_RESOLVER)

last_error: STRING

-- Error

-- (From XM_URI_RESOLVER)

require
has_error: has_error
ensure
not_void: Result /= Void
last_media_type: UT_MEDIA_TYPE

-- Media type, if available.

-- (From XM_URI_RESOLVER)

require
has_media_type: has_media_type
ensure
result_not_void: Result /= Void
last_stream: KI_CHARACTER_INPUT_STREAM

-- File matching stream

-- (From XM_URI_RESOLVER)

require
not_error: not has_error
ensure
not_void: Result /= Void

invariant


-- From ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)

end