diff options
Diffstat (limited to 'cpp/sdo/doc')
-rw-r--r-- | cpp/sdo/doc/BuildingSTDCXX.html | 145 | ||||
-rw-r--r-- | cpp/sdo/doc/CommittersGuide.txt | 89 | ||||
-rw-r--r-- | cpp/sdo/doc/DesignNotes.htm | 259 | ||||
-rw-r--r-- | cpp/sdo/doc/css/maven-base.css | 168 | ||||
-rw-r--r-- | cpp/sdo/doc/css/maven-theme.css | 173 |
5 files changed, 0 insertions, 834 deletions
diff --git a/cpp/sdo/doc/BuildingSTDCXX.html b/cpp/sdo/doc/BuildingSTDCXX.html deleted file mode 100644 index 6ffc018157..0000000000 --- a/cpp/sdo/doc/BuildingSTDCXX.html +++ /dev/null @@ -1,145 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. ---> - -<HTML> -<HEAD> - <META CONTENT="text/html; charset=iso-8859-1" HTTP-EQUIV="Content-Type"> - <META CONTENT="text/css" HTTP-EQUIV="Content-Style-Type"> - <STYLE MEDIA="all" TYPE="text/css"> -@import url("css/maven-base.css"); -@import url("css/maven-theme.css"); - </STYLE> - - <LINK HREF="css/maven-theme.css" MEDIA="print" REL="stylesheet" - TYPE="text/css"> - <TITLE>Tuscany SDO C++ - Building STDCXX for Tuscany SDO</TITLE> -</HEAD> - -<BODY> -<DIV ID="bodyColumn"> - <DIV ID="contentBox"> - <DIV CLASS="section"> - <H1>Tuscany SDO C++ - Building STDCXX for Tuscany SDO</H1> - - <P>STDCXX is an implementation of the C++ Standard Library provided by Apache. - </P> - <P>The website is at <A href="http://incubator.apache.org/stdcxx/">http://incubator.apache.org/stdcxx/</A>. - </P> - <P>At the time of writing, the current release is 4.1.3 and is available as - source distribution only. This document explains how to build stdcxx for - Windows XP and Red Hat Enterprise Linux 3 in the way required by the SDO build - process. - </P> - </DIV> - <DIV CLASS="section"> - <H2>Contents</H2> - <OL> - <LI><A HREF="#install">Building STDCXX..</A> - <UL> - <LI><A HREF="#linux">..on Linux</A></LI> - <LI><A HREF="#win">..on Windows</A></LI> - </UL></LI> - </OL> - </DIV> - - <DIV CLASS="section"> - <A NAME="install"><H2>Building STDCXX</H2></A> - <A NAME="linux"><H3>Building STDCXX on Linux</H3></A> - - <OL> - <LI>The release is distributed as a gzipped tar file, called - stdcxx-incubating-4.1.3.tar.gz. Extract the contents of this file into a - convenient directory. For this example, let's assume it is - /home/Tuscany/stdcxx-4.1.3 - </LI> - <LI>Define the STDCXX_HOME environment variable to refer to this directory. The - Tuscany SDO build system uses this environment variable to locate stdcxx. - </LI> - <LI>Change directory to STDCXX_HOME. Then build a debug version of the stdcxx - library using the following command: - <PRE>gmake BUILDDIR=$STDCXX_HOME/Debug BUILDTYPE=15d CONFIG=gcc.config</PRE> - This will create a sub-directory of STDCXX_HOME called Debug and place the - build products below that. - </LI> - <LI>For a release version the command is: - <PRE>gmake BUILDDIR=$STDCXX_HOME/Release BUILDTYPE=12d CONFIG=gcc.config</PRE> - </LI> - </OL> - <P>This provides Tuscany SDO with the versions of stdcxx that it needs for both - Release and Debug builds. - </P> - <A NAME="win"><H3>Building STDCXX on Windows</H3></A> - <P>STDCXX is supported only when used with Microsoft Visual Studio C++ V7.1 - </P> - <OL> - <LI>The release is distributed as a gzipped tar file, called stdcxx-incubating-4.1.3.tar.gz. - Extract the contents of this file into a convenient directory. For this example let's - assume it is C:\Tuscany\stdcxx-4.1.3 - </LI> - <LI>Define the STDCXX_HOME environment variable to refer to this directory. The - Tuscany SDO build system uses this environment variable to locate stdcxx. - </LI> - <LI>Create two directories to contain the results of building stdcxx. The first is - for the debug enabled version and must be: - <PRE><STDCXX_HOME>\Debug</PRE> - </LI> - <LI>The second is for the release (ie optimised) version and must be - <PRE><STDCXX_HOME>\Release</PRE> - </LI> - <LI>Launch an MSVC++ 7.1 command window. In the command window, set the default - directory to <STDCXX_HOME> where there is a file called generate.bat. Create - the project definitions that MSVC++ 7.1 will need in order to build stdcxx by - running generate.bat using the following command: - <PRE>.\generate.bat /BUILDDIR:<STDCXX_HOME>\Debug /CONFIG:VC71</PRE> - It is necessary to provide the full, absolute path to the build directory - it - is not sufficient to provide a relative path. (This restriction will be fixed - in a future release.) - </LI> - <LI>Repeat this operation for the release build, via the command: - <PRE>.\generate.bat /BUILDDIR:<STDCXX_HOME>\Release /CONFIG:VC71</PRE> - </LI> - <LI>Still using the MSVC++ 7.1 command window, set the default directory to one of - the two build directories eg - <PRE>cd <STDCXX_HOME>\Debug</PRE> - </LI> - <LI>Then launch the developer studio via - <PRE>cd <STDCXX_HOME>\Debug</PRE> - </LI> - <LI>Select the configuration to build. For the Debug version of SDO this will be - "15d Debug Thread-safe Dll". Then select "Build Solution". The build will take - a while to complete and runs a test suite when it is finished. The test suite - is extensive and produces a scattering of errors, however the library build - itself is fine. - </LI> - <LI>Repeat this process for the release version, setting the default directory to - <PRE>cd <STDCXX_HOME>\Release</PRE> - and choosing "12d Optimized Thread-safe Dll" as the build configuration. - </LI> - </OL> - <P>This provides Tuscany SDO with the versions of stdcxx that it needs for both - Release and Debug builds. - </P> - </DIV> - </DIV> -</DIV> -</BODY> - -</HTML> - diff --git a/cpp/sdo/doc/CommittersGuide.txt b/cpp/sdo/doc/CommittersGuide.txt deleted file mode 100644 index fb22cbf06d..0000000000 --- a/cpp/sdo/doc/CommittersGuide.txt +++ /dev/null @@ -1,89 +0,0 @@ - -Licensed to the Apache Software Foundation (ASF) under one -or more contributor license agreements. See the NOTICE file -distributed with this work for additional information -regarding copyright ownership. The ASF licenses this file -to you under the Apache License, Version 2.0 (the -"License"); you may not use this file except in compliance -with the License. You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, -software distributed under the License is distributed on an -"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, either express or implied. See the License for the -specific language governing permissions and limitations -under the License. - - - -Tuscany SDO Committers Guide -============================ - -All classes should be in the commonj/sdo namespace. - -The Tuscany SDO codebase consists of a number of abstract classes representing the SDO API. These -are accompanied by a set of classes whose names end in Impl, which are the implementations of the -API. For example the DataObject API is represented by the DataObject class, and implemented by -the DataObjectImpl class. - -When pointers to classes are handed out by the library, they are really pointing at instances of -the Impl class, but the application must not make that assumption. - -DataObjects and DataFactories inherit from a base class which maintains a reference count on -itself (RefCountingObject). The pointers handed out are really classes holding a pointer to -the object, such that they can contribute to the reference count when copied. These RefCountingPointers -must not be deleted, they dispose of the underlying object when the reference count drops to -zero. - -There is trace commented out of RefCountingObject, which can count and report the references. It is -particularly useful to check that all instances are cleared at the end of a program run. - -The API for metadata consists of the DataFactory, Property and Type classes. All Properties and Types -handed out to the client are const, so setting up the modifying the types is done using APIS of the -data factory. - -The process of creating types is usually done by loading them from XSD, but can also be performed -by using the data factory. Properties and Types may both be defined, but the data factory 'locks' -itself as soon as the first DataObject is created. It does this because at that point it needs to -resolve the type hierarchy, and perform validation. For consistency a Type may not be modified once -an instance has been created. - -A data object contains properties, which are of a particular Type, however the API allows access to -all properties using any of the methods. getString() may be called on a Boolean property etc. The -conversion is attempted by the Type class, and either throws an exception or passes back a converted -value according to the tables in the specification. - -The get/set APIs of DataObject are supplied by a set of macros in DataObjectImpl.cpp. These are -duplicated for string and non-string, and also make it hard to debug effectively. They will be -removed and replaced by methods in the future. For now, the easiest way to debug them is to be -aware that each eventually calls the private no-params method, so for example all the getString(...) -methods eventually call getString(). - -The internal string handling is partially working with the SDOXMLString class, and partially still uses -allocated char* buffers, these will be replaced by SDOXMLStrings in the future. - -The parsers for XML are absed on the SAX2Parser class, but the bulk of the processing is done by the -startElementNS and similar methods in the SDOSchemaSAX2parser and SDOSAX2Parser classes. These are called -back by the libxml2 library, and build a picture of the information which it then decoded by the XSDhelper -or XMLHelper class into metadata or data. - -There are easy targets for improvements of performance, particularly in DataObject and parsing of XSD -input, here is a list of a few that I can think of: - -DataObject frequently maps from Property to index, and this could be re-organized to avoid most of these. - -The allocation of space for property values could in most cases be dropped - its usually s fixed size -element. - -The use of DataObject as a means of storing lists of primitives is not optimal, and should be replaced. - -The ChangeSummary class holds the previous value of any property when it is changed. At present, for many- -valued properties, it holds the entire list as it was before an addition. This could just keep a record of -the changes, and only save the old list when serializing. - -Parsing the XSD loops though types checking that all substitutes are covered, it would be good to -replace this. - -
\ No newline at end of file diff --git a/cpp/sdo/doc/DesignNotes.htm b/cpp/sdo/doc/DesignNotes.htm deleted file mode 100644 index f6d532a4cd..0000000000 --- a/cpp/sdo/doc/DesignNotes.htm +++ /dev/null @@ -1,259 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. ---> -<html><head> - - -<meta http-equiv="Content-Type" content="text/html;charset=utf-8"> - <META CONTENT="text/css" HTTP-EQUIV="Content-Style-Type"> - <STYLE MEDIA="all" TYPE="text/css"> -@import url("css/maven-base.css"); -@import url("css/maven-theme.css"); - </STYLE> - - <LINK HREF="css/maven-theme.css" MEDIA="print" REL="stylesheet" - TYPE="text/css"> - - <meta name="robots" content="noindex,nofollow"> - <title>Tuscany SDO for C++ Design Notes</title> - -</head> -<body dir="ltr" lang="en"> -<div id="page" dir="ltr" lang="en"><!-- start page --> - -<h1 id="title">Tuscany SDO for C++ Design Notes</h1> -<div id="content" dir="ltr" lang="en"> -<a id="top"></a> -<p>See the 'live' verson of these notes at <a HREF="http://wiki.apache.org/ws/Tuscany/TuscanyCpp/DesignNotes">http://wiki.apache.org/ws/Tuscany/TuscanyCpp/DesignNotes</A> -<h2 id="head-780571e8917285d0f0c1ebae03ade69ebb3fe51a">1. Logging</h2> - -<p>Logging is not mentioned in the V2.01 specification, however, a -rudimentary logging capability is provided in the current -implementation, using three classes. </p> -<ul> -<li><p> LogWriter </p> -<ul> -<li style="list-style-type: none;"><p>This defines an abstract class with a single <strong>log</strong> method. </p> -</li> -</ul> -</li> -<li class="gap"><p> DefaultLogWriter </p> -<ul> -<li style="list-style-type: none;"><p>Instantiates <strong>LogWriter</strong> implementng a <strong>log</strong> method that writes to <strong>cout</strong> </p> -</li> -</ul> -</li> -<li class="gap"><p> Logger </p> -<ul> -<li style="list-style-type: none;"><p>A class with a static pointer to a <strong>Logwriter</strong> object. When the class is loaded the pointer is initialized to a reference to an instance of <strong>DefaultLogWriter</strong>. <strong>Logger</strong> provides its own <strong>log</strong> and <strong>logArgs</strong> methods that use the <strong>log</strong> method of <strong>DefaultLogWriter</strong> </p> -</li> -</ul> -</li> -</ul> -<p>In the current implementation, logging is seldom used. </p> - -<h2 id="head-7290fb54a6fb6ba18c63fd8a5cd6790051a515fc">2. Conversion from C style strings to C++ style strings</h2> - - -<h2 id="head-507cb2b48b05cbdfcdb3d687945efc737433c25f">3. Debugging the XML parser</h2> - -<p>SDO uses the SAX parser provided by libxml2 (<a rel="nofollow" href="http://xmlsoft.org/index.html"><img src="DesignNotes_files/moin-www.png" alt="[WWW]" height="11" width="11"> http://xmlsoft.org/index.html</a>) -to parse XML documents (and therefore XSD documents also). The SAX -parser uses a callback mechanism to report XML events to its caller. -These callback routines are supplied to the parser using a struct of -type xmlSAXHandler, called SDOSAX2Handler that is defined in -SAX2Parser.cpp. However, since libxml2 is written in C and operates -with no knowledge of objects or classes, it is necessary to bridge the -gap between libxml2's C-style call back mechanism and the objects that -comprise SDO. This is done as follows. </p> -<p>The file SAX2Parser.cpp defines (C style) functions for all the -callback routines required by libxml2. Looking through that file, it is -clear that many of those functions, such as sdo_internalSubset(), are -empty, meaning that SDO will simply ignore that particular event if it -is reported by libxml2. Where a callback function is not empty, the -active contents usually take the form of a call such as </p> -<p>(SAX2Parser*) ctx)->startDocument() </p> -<p>This call is forwarding the event reported by libxml2 to a method within a parser object created by SDO. </p> -<p>To understand this, we have to step back a little. A client of -libxml2 initiates the parse of an XML instance by calling the -xmlSAXUserParseFile() function. This function takes three parameters. -The first is the struct containing the list of callback functions (ie -SDOSAX2Handler) and the third is the name of the XML file to parse. The -second parameter is of type <strong>void*</strong> and is not used by -libxml2 directly. However, it is passed to every callback functon that -libxml2 calls as part of this parse to supply them with whatever -context information it represents. In Tuscany SDO that context is in -fact a pointer to an object that implements the appropriate parsing of -the file and these objects are instances of one of two classes, both of -which are derived from a common base. The base class is SAX2Parser, and -that defines virtual methods to handle events returned by libxml2. (In -fact it defines methods for that subset of the events that SDO will -use.) The two concrete classes are SDOSAX2Parser and -SDOSchemaSAX2Parser. The former is used when parsing XML instance -documents and the latter when parsing XML Schema Definitions. Both -classes re-implement the methods that process SAX events to handle them -in the appropriate way for either XML or XSD. </p> -<p>Therefore, the overall process for parsing an XML or XSD input -document and generating the corresponding data object or meta data -structures in SDO as follows. </p> -<p>1. Create an instance of SDOSAX2Parser for parsing XML instance -documents or an instance of SDOSchemaSAX2Parser for parsing an XSD -document. </p> -<p>2. Pass the address of the SAX2Parser object just created to libxml2 -as the context parameter of the xmlSAXUserParseFile() function. </p> -<p>3. As the parse unfolds, libxml2 will use the SDOSAX2Handler struct -to call the callback function that is appropriate for each event that -it is reporting. These will be C functions in SAX2Parser.cpp </p> -<p>4. Many of those functions will simply return having done nothing -because SDO has no interest in that particular event. However, when a -SAX event is of interest, the C callback function will use the context -parameter that libxml2 has supplied to it (ie the address of a -SAX2Parser object) to call the method on that object that corresponds -to the current SAX event. </p> -<p>Simple. </p> -<p>To watch the parsing of a file as it unfolds there are three broad -options. If the file is an XSD then place breakpoints on the methods of -SDOSchemaSAX2Parser. If it is an XML instance then set breakpoints on -the methods of SDOSAX2Parser. If it could be either, then place -breakpoints on the C functions that are named in SDOSAX2Handler and -that are found in SAX2Parser.cpp </p> - -<h2 id="head-c0ac7aae89a380ef5b343dc5ebc99b721000ad93">4. Modifying the SDO Build to use the Apache stdcxx Standard C++ library</h2> - -<p>stdcxx is an implementation of the C++ Standard Library provided by Apache. The website is at <a rel="nofollow" href="http://incubator.apache.org/stdcxx/"><img src="DesignNotes_files/moin-www.png" alt="[WWW]" height="11" width="11"> http://incubator.apache.org/stdcxx/</a>. </p> -<p>To build SDO using stdcxx rather than the native C++ library on -Windows, the following modifications to the Microsoft Visual Studio -.NET 2003 build environment are necessary. We assume that a source -extract of stdcxx is already available in a directory called -C:\Tuscany\stdcxx-4.1.3 (based on the version number of the current -release at the time of writing). We also assume that debug and release -versions of this library have been built in directories called -C:\Tuscany\stdcxx-4.1.3\Debug and C:\Tuscany\stdcxx-4.1.3\Release. The -process for building these is described here <a href="http://wiki.apache.org/ws-data/attachments/Tuscany%282f%29TuscanyCpp%282f%29DesignNotes/attachments/HowToBuildStdcxxForTuscanySDO.txt">HowToBuildStdcxxForTuscanySDO.txt</a> </p> -<p>1. Define an environment variable, STDCXX_HOME to identify the root of the source extract tree ie C:\Tuscany\stdcxx-4.1.3 </p> -<p>This is not strictly necessary but is convenient given how often we will refer to that location. </p> -<p>2. Add the stdcxx include directories to the appropriate search path. These directories are </p> -<ul> -<li style="list-style-type: none;"><p>$(STDCXX_HOME)\include </p> -<p>$(STDCXX_HOME)\include\ansi </p> -<p>and either </p> -<p>$(STDCXX_HOME)\Debug\include\15d - for a debug build </p> -<p>or </p> -<p>$(STDCXX_HOME)\Release\include\12d - for a release build </p> -</li> -</ul> -<p>For MSVC 7.1 these should be appended to the list found in -Configuration Properties -> C/C++ -> General -> Additional -Include Directories </p> -<p>3. Add environment variable definitions. These variables are </p> -<ul> -<li style="list-style-type: none;"><p>_RWSTD_USE_CONFIG </p> -<p>_RWSHARED </p> -<p>and _RWSTDDEBUG for a debug build </p> -</li> -</ul> -<p>4. Add the stdcxx library directory to the appropriate search path. This directory is </p> -<ul> -<li style="list-style-type: none;"><p>$(STDCXX_HOME)\Debug\lib - for a debug build </p> -<p>and </p> -<p>$(STDCXX_HOME)\Release\lib - for a release build </p> -</li> -</ul> -<p>For MSVC 7.1 these should be appended to the list found in -Configuration Properties -> Linker -> General -> Additional -Library Directories </p> -<p>5. Add the stdcxx library name as a dependency. The library name is </p> -<ul> -<li style="list-style-type: none;"><p>stdlib15d.lib - for a debug build </p> -<p>and </p> -<p>stdlib12d.lib - for a release build </p> -</li> -</ul> -<p>For MSVC 7.1 these should be appended to the list found in -Configuration Properties -> Linker -> Input -> Additional -Dependencies </p> - -<h2 id="head-feededf8be9c9caa8efe879e11523875c15f44ce">5. Discriminated Types</h2> - -<p>Prior to the changes introduced in revision 502599, in response to -JIRA TUSCANY-546, the C++ implementation made extensive use of C style -macros, particularly in DataObjectImpl.cpp. This code had been -motivated by the requirement for SDO to process a variety of different -data types (integer, float, string etc) in very similar ways. -Unfortunately, while macro code makes it easy to clone behaviour by -instantiating the macro for different datatypes, it has several -disdavantages. By far the most serious is the impossibility of -debugging code that has been generated by the macro preprocessor, -closely followed by the fact that most non-trivial macros are difficult -to read and understand. These twin problems lead onto the common result -that macro generated code is often inefficient. </p> -<p>TUSCANY-546 remedies these problems by introducing a new class, -SDOValue, defined in SDOValue.cpp and SDOValue.h. This class consists -fundamentally of a union of all the possible data types that SDO must -accommmodate, together with an enumerated type that identifies which -particular data type is stored in the current object. The union and -enumeration are themselves defined in DataTypeInfo.cpp and -DataTypeInfo.h. </p> -<p>Not surprisingly, SDOValue provides constructors to initialise an -SDOValue object from any of the primitive data types. There are also -retrieval methods that will extract a primitive value from an SDOValue, -converting as necessary (and throwing an exception for those -conversions that are impossible). For the most part these methods are -straightforward. The only slight complications arise when dealing with -primitives that are strings of characters. There are three such data -types - </p> -<p>String: This is a null terminated sequence of single byte -characters. It corresponds to the C notion of a string, and the C++ -std::string class. </p> -<p>WideString: This is a null terminated sequence of double byte -characters. In C++ this might be represented by the std::wstring class, -although in this implementation it is represented in the C fashion, -using a pointer to a null terminated sequence of wchar_t elements. </p> -<p>ByteArray: A sequence of bytes that is not terminated by a null character. An associated length value is therefore required. </p> -<p>SDOValue objects represent such values with pointers to other -objects or allocations of memory, therefore, copy operators and -destructors must allow for the need to copy or delete the items that -are at the far end of these pointers. </p> -<p>From then on, the general strategy is straightforward. All methods -that are part of the SDO external interface must be preserved. However, -as far as possible, other methods that used to be replicated (by macro -expansion) for each different datatype, are replaced by a single method -that works with SDOValue objects. Where it is necessary to work with -the actual primitive data type explicitly, this is normally done via a -switch statement. The external methods that were previously generated -by macro expansion are replaced by explicit code that is little more -than a veneer that converts between the SDOValue that is used -internally and the primitive data type that is required by the public -interface. Numerous examples of this appear in DataObjectImpl.cpp, the -getBoolean and setBoolean methods being typical. </p> -<p>Code to convert between the various primitive data types is already -available in the TypeImpl class. However, this is not ideal since a) as -coded it is dependent on the TypeImpl class, even though that isn't -strictly necessary and therefore b) it tends to bloat the already large -TypeImpl class. The SDOValue code provides it's own conversion methods -in the SDODataConverter class. The intention is to migrate all -conversions in SDO to the methods in that class, however, that -transition is not yet complete. </p> -<a id="bottom"></a> - -</div> -<p id="pageinfo" class="info" dir="ltr" lang="en">last edited 28.02.2007 13:24:53 by <span title="blueice2n1.uk.ibm.com">GeoffWinn</span></p> -</div> <!-- end page --> - -</body></html>
\ No newline at end of file diff --git a/cpp/sdo/doc/css/maven-base.css b/cpp/sdo/doc/css/maven-base.css deleted file mode 100644 index e23caf04e5..0000000000 --- a/cpp/sdo/doc/css/maven-base.css +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -/* $Rev$ $Date$ */ - -body { - margin: 0px; - padding: 0px; -} -img { - border:none; -} -table { - padding:0px; - width: 100%; - margin-left: -2px; - margin-right: -2px; -} -acronym { - cursor: help; - border-bottom: 1px dotted #feb; -} -table.bodyTable th, table.bodyTable td { - padding: 2px 4px 2px 4px; - vertical-align: top; -} -div.clear{ - clear:both; - visibility: hidden; -} -div.clear hr{ - display: none; -} -#bannerLeft, #bannerRight { - font-size: xx-large; - font-weight: bold; -} -#bannerLeft img, #bannerRight img { - margin: 0px; -} -.xleft, #bannerLeft img { - float:left; - text-shadow: #7CFC00; -} -.xright, #bannerRight img { - float:right; - text-shadow: #7CFC00; -} -#banner { - padding: 0px; -} -#banner img { - border: none; -} -#breadcrumbs { - padding: 3px 10px 3px 10px; -} -#leftColumn { - width: 150px; - float:left; -} -#bodyColumn { - margin-right: 1.5em; - margin-left: 30px; -} -#legend { - padding: 8px 0 8px 0; -} -#navcolumn { - padding: 8px 4px 0 8px; -} -#navcolumn h5 { - margin: 0; - padding: 0; - font-size: small; -} -#navcolumn ul { - margin: 0; - padding: 0; - font-size: small; -} -#navcolumn li { - list-style-type: none; - background-image: none; - background-repeat: no-repeat; - background-position: 0 0.4em; - padding-left: 16px; - list-style-position: ouside; - line-height: 1.2em; - font-size: smaller; -} -#navcolumn li.expanded { - background-image: url(../images/expanded.gif); -} -#navcolumn li.collapsed { - background-image: url(../images/collapsed.gif); -} -#poweredBy { - text-align: center; -} -#navcolumn img { - margin-top: 10px; - margin-bottom: 3px; -} -#poweredBy img { - display:block; - margin: 20px 0 20px 17px; - border: 1px solid black; - width: 90px; - height: 30px; -} -#search img { - margin: 0px; - display: block; -} -#search #q, #search #btnG { - border: 1px solid #999; - margin-bottom:10px; -} -#search form { - margin: 0px; -} -#lastPublished { - font-size: x-small; -} -.navSection { - margin-bottom: 2px; - padding: 8px; -} -.navSectionHead { - font-weight: bold; - font-size: x-small; -} -.section { - padding: 4px; -} -#footer { - padding: 3px 10px 3px 10px; - font-size: x-small; -} -#breadcrumbs { - font-size: x-small; - margin: 0pt; -} -.source { - padding: 12px; - margin: 1em 7px 1em 7px; -} -.source pre { - margin: 0px; - padding: 0px; -} diff --git a/cpp/sdo/doc/css/maven-theme.css b/cpp/sdo/doc/css/maven-theme.css deleted file mode 100644 index 91cf29cda2..0000000000 --- a/cpp/sdo/doc/css/maven-theme.css +++ /dev/null @@ -1,173 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -/* $Rev$ $Date$ */ - -body { - padding: 0px 0px 10px 0px; -} -body, td, select, input, li{ - font-family: Verdana, Helvetica, Arial, sans-serif; - #font-size: 13px; - padding: 4px 4px 4px 4px; - line-height: 1.5em; - font-size: small; -} -code{ - font-family: Courier, monospace; - font-size: 13px; -} -a { - text-decoration: none; -} -a:link { - color:#36a; -} -a:visited { - color:#47a; -} -a:active, a:hover { - color:#69c; -} -#legend li.externalLink { - background: url(../images/external.png) left top no-repeat; - padding-left: 18px; -} -a.externalLink, a.externalLink:link, a.externalLink:visited, a.externalLink:active, a.externalLink:hover { - background: url(../images/external.png) right center no-repeat; - padding-right: 18px; -} -#legend li.newWindow { - background: url(../images/newwindow.png) left top no-repeat; - padding-left: 18px; -} -a.newWindow, a.newWindow:link, a.newWindow:visited, a.newWindow:active, a.newWindow:hover { - background: url(../images/newwindow.png) right center no-repeat; - padding-right: 18px; -} -h1 { - font-size: x-large; - line-height: 1em; -} - - -h2 { - padding: 4px 4px 4px 6px; - border: 1px solid #999; - color: #900; - background-color: #ddd; - - font-size: large; -} -h3 { - padding: 4px 4px 4px 6px; - border: 1px solid #aaa; - color: #900; - background-color: #eee; - font-weight: normal; - font-size: large; -} -h4 { - padding: 4px 4px 4px 6px; - border: 1px solid #bbb; - color: #900; - background-color: #fff; - font-weight: normal; - font-size: large; -} -h5 { - padding: 4px 4px 4px 6px; - color: #900; - font-size: normal; -} -p { - line-height: 1.5em; - font-size: small; -} -#breadcrumbs { - border-top: 1px solid #aaa; - border-bottom: 1px solid #aaa; - background-color: #ccc; -} -#leftColumn { - margin: 10px 0 0 5px; - border: 1px solid #999; - background-color: #eee; -} -#navcolumn h5 { - font-size: smaller; - border-bottom: 1px solid #aaaaaa; - padding-top: 2px; - color: #000; -} - -table.bodyTable th { - color: white; - background-color: #bbb; - text-align: left; - font-weight: bold; -} - -table.bodyTable th, table.bodyTable td { - font-size: small; -} - -table.bodyTable tr.a { - background-color: #ddd; -} - -table.bodyTable tr.b { - background-color: #eee; -} - -.source { - border: 1px solid #999; -} -dl { - padding: 4px 4px 4px 6px; - border: 1px solid #aaa; - background-color: #ffc; -} -dt { - color: #900; -} -#organizationLogo img, #projectLogo img, #projectLogo span{ - margin: 8px; -} -#banner { - border-bottom: 1px solid #fff; -} -.sourcecode { - border: 1px solid #999; - font-family: Courier, monospace; - font-size: 13px; - white-space: pre; - padding: 4px 4px 4px 6px; - margin: 4px 4px 4px 6px; -} -pre { - border: 1px solid #999; - font-family: Courier, monospace; - font-size: 13px; - white-space: pre; - padding: 4px 4px 4px 6px; - margin: 4px 4px 4px 6px; -} - - |