Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Enhanced javadoc taglet support so that we can link to the new MongoD…

…B manual at docs.mongogb.org/manual
  • Loading branch information...
commit bef3865df841aa1092326bf27d197164df2adb04 1 parent 0cac416
@jyemin jyemin authored
View
6 build.xml
@@ -210,7 +210,8 @@ limitations under the License.
access="protected">
<link href="http://download.oracle.com/javase/1.5.0/docs/api/"/>
<classpath refid="classpath"/>
- <taglet name="ApiToolsTaglet" path="build/util"/>
+ <taglet name="DochubTaglet" path="build/util"/>
+ <taglet name="ManualTaglet" path="build/util"/>
</javadoc>
<javadoc
@@ -225,7 +226,8 @@ limitations under the License.
access="protected">
<link href="http://download.oracle.com/javase/1.5.0/docs/api/"/>
<classpath refid="classpath"/>
- <taglet name="ApiToolsTaglet" path="build/util"/>
+ <taglet name="DochubTaglet" path="build/util"/>
+ <taglet name="ManualTaglet" path="build/util"/>
</javadoc>
</target>
View
4 src/main/com/mongodb/ReadPreference.java
@@ -21,7 +21,9 @@
/**
- * an abstract class that represents preferred replica set members to which a query or command can be sent
+ * An abstract class that represents preferred replica set members to which a query or command can be sent.
+ *
+ * @mongodb.driver.manual applications/replication/#replica-set-read-preference Read Preference
*/
public abstract class ReadPreference {
View
71 src/util/ApiToolsTaglet.java
@@ -1,71 +0,0 @@
-// ApiToolsTaglet.java
-
-/**
- * Copyright (C) 2008 10gen Inc.
- *
- * Licensed 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.
- */
-
-import java.util.*;
-import com.sun.javadoc.*;
-import com.sun.tools.doclets.*;
-
-public class ApiToolsTaglet implements Taglet {
-
- @SuppressWarnings("unchecked")
- public static void register( Map tagletMap ){
- ApiToolsTaglet t = new ApiToolsTaglet();
- tagletMap.put( t.getName() , t );
- }
-
- public String getName(){
- return "dochub";
- }
-
- public boolean inConstructor(){ return true; }
- public boolean inField(){ return true; }
- public boolean inMethod(){ return true; }
- public boolean inOverview(){ return true; }
- public boolean inPackage(){ return true; }
- public boolean inType(){ return true; }
-
- public boolean isInlineTag(){ return false; }
-
- String genLink( String name ){
- return new StringBuilder()
- .append( "<a href='http://dochub.mongodb.org/core/" ).append( name ).append( "' " )
- .append( "name='" ).append( name ).append( "' " )
- .append( ">").append( name ).append( "</a>" )
- .toString();
- }
-
- public String toString( Tag tag ){
- return toString( new Tag[]{ tag } );
- }
-
- public String toString( Tag[] tags ){
- if ( tags.length == 0 )
- return null;
-
- StringBuilder buf = new StringBuilder( "\n<br><DT><B>MongoDB Doc Links</B><DD>" );
- buf.append( "<ul>" );
- for ( Tag t : tags ){
- buf.append( "<li>" ).append( genLink( t.text() ) ).append( "</li>" );
- }
- buf.append( "</ul>" );
- buf.append( "</DD>\n" );
- return buf.toString();
- }
-
-
-}
View
65 src/util/DocTaglet.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2008 - 2012 10gen, Inc. <http://10gen.com>
+ * <p/>
+ * Licensed 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
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * 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.
+ */
+
+import com.sun.javadoc.Tag;
+import com.sun.tools.doclets.Taglet;
+
+public abstract class DocTaglet implements Taglet {
+
+ public boolean inConstructor() { return true; }
+ public boolean inField() { return true; }
+ public boolean inMethod() { return true; }
+ public boolean inOverview() { return true; }
+ public boolean inPackage() { return true; }
+ public boolean inType() { return true; }
+
+ public boolean isInlineTag() { return false; }
+
+ public String toString( Tag[] tags ){
+ if ( tags.length == 0 )
+ return null;
+
+ StringBuilder buf = new StringBuilder( "\n<br><DT><B>MongoDB Doc Links</B><DD>" );
+ buf.append( "<ul>" );
+ for ( Tag t : tags ){
+ buf.append( "<li>" ).append( genLink( t.text() ) ).append( "</li>" );
+ }
+ buf.append( "</ul>" );
+ buf.append( "</DD>\n" );
+ return buf.toString();
+ }
+
+ public String toString( Tag tag ){
+ return toString(new Tag[]{tag});
+ }
+
+ protected String genLink( String text ){
+ String relativePath = text;
+ String display = text;
+
+ int firstSpace = text.indexOf(' ');
+ if (firstSpace != -1) {
+ relativePath = text.substring(0, firstSpace);
+ display = text.substring(firstSpace, text.length()).trim();
+ }
+
+ return new StringBuilder()
+ .append( "<a href='" ).append(getBaseDocURI()).append(relativePath).append( "'>" ).append(display).append( "</a>" )
+ .toString();
+ }
+
+ protected abstract String getBaseDocURI();
+}
View
36 src/util/DochubTaglet.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2008 - 2012 10gen, Inc. <http://10gen.com>
+ * <p/>
+ * Licensed 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
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * 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.
+ */
+
+import com.sun.tools.doclets.Taglet;
+
+import java.util.Map;
+
+public class DochubTaglet extends DocTaglet {
+
+ public static void register( Map<String, Taglet> tagletMap ){
+ DochubTaglet t = new DochubTaglet();
+ tagletMap.put( t.getName() , t );
+ }
+
+ public String getName(){
+ return "dochub";
+ }
+
+ @Override
+ protected String getBaseDocURI() {
+ return "http://dochub.mongodb.org/core/";
+ }
+}
View
37 src/util/ManualTaglet.java
@@ -0,0 +1,37 @@
+/**
+ * Copyright (c) 2008 - 2012 10gen, Inc. <http://10gen.com>
+ * <p/>
+ * Licensed 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
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * 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.
+ */
+
+import com.sun.tools.doclets.Taglet;
+
+import java.util.Map;
+
+public class ManualTaglet extends DocTaglet {
+
+ public static void register( Map<String, Taglet> tagletMap ){
+ ManualTaglet t = new ManualTaglet();
+ tagletMap.put( t.getName() , t );
+ }
+
+ public String getName(){
+ return "mongodb.driver.manual";
+ }
+
+ @Override
+ protected String getBaseDocURI() {
+ return "http://docs.mongodb.org/manual/";
+ }
+
+}
Please sign in to comment.
Something went wrong with that request. Please try again.