13
13
# See the License for the specific language governing permissions and
14
14
# limitations under the License.
15
15
# ==============================================================================
16
- """Generate TensorFlow Lite Java reference docs for TensorFlow.org."""
16
+ """Generate TensorFlow Java reference docs for TensorFlow.org."""
17
17
from __future__ import absolute_import
18
18
from __future__ import division
19
19
from __future__ import print_function
20
20
21
21
import pathlib
22
22
import shutil
23
23
import tempfile
24
+ from git import Repo
24
25
25
26
from absl import app
26
27
from absl import flags
27
28
28
29
from tensorflow_docs .api_generator import gen_java
29
30
30
31
FLAGS = flags .FLAGS
32
+ NDARRAY_VERSION = 'v1.0.0'
31
33
32
34
# These flags are required by infrastructure, not all of them are used.
33
35
flags .DEFINE_string ('output_dir' , '/tmp/java_api/' ,
48
50
TOOLS_DIR = pathlib .Path (__file__ ).resolve ().parent
49
51
REPO_ROOT = TOOLS_DIR .parent
50
52
53
+
54
+ def checkout_ndarray ():
55
+ repo_url = 'https://github.com/tensorflow/java-ndarray'
56
+ local_repo_path = REPO_ROOT / 'ndarray'
57
+ if not pathlib .Path (local_repo_path ).exists ():
58
+ local_repo = Repo .clone_from (repo_url , local_repo_path )
59
+ else :
60
+ local_repo = Repo (local_repo_path )
61
+ local_repo .remotes ['origin' ].fetch ()
62
+ local_repo .git .checkout (NDARRAY_VERSION )
63
+
64
+
51
65
def overlay (from_root , to_root ):
52
66
for from_path in pathlib .Path (from_root ).rglob ('*' ):
53
67
relpath = from_path .relative_to (from_root )
@@ -58,24 +72,28 @@ def overlay(from_root, to_root):
58
72
else :
59
73
to_path .mkdir (exist_ok = True )
60
74
75
+
61
76
def main (unused_argv ):
77
+ checkout_ndarray ()
62
78
merged_source = pathlib .Path (tempfile .mkdtemp ())
63
79
(merged_source / 'java/org' ).mkdir (parents = True )
64
80
65
- shutil .copytree (REPO_ROOT / 'tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/' ,
66
- merged_source / 'java/org/tensorflow' )
67
- overlay (REPO_ROOT / 'tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow' ,
68
- merged_source / 'java/org/tensorflow' )
69
- shutil .copytree (REPO_ROOT / 'tensorflow-framework/src/main/java/org/tensorflow/framework' ,
70
- merged_source / 'java/org/tensorflow/framework' )
71
- shutil .copytree (REPO_ROOT / 'ndarray/src/main/java/org/tensorflow/ndarray' ,
72
- merged_source / 'java/org/tensorflow/ndarray' )
81
+ shutil .copytree (REPO_ROOT / 'tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/' , merged_source / 'java/org/tensorflow' )
82
+ overlay (REPO_ROOT / 'tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow' , merged_source / 'java/org/tensorflow' )
83
+ shutil .copytree (REPO_ROOT / 'tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto' , merged_source / 'java/org/tensorflow/proto' )
84
+ shutil .copytree (REPO_ROOT / 'tensorflow-core/tensorflow-core-native/src/main/java/org/tensorflow/exceptions' , merged_source / 'java/org/tensorflow/exceptions' )
85
+ shutil .copytree (REPO_ROOT / 'tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api' , merged_source / 'java/org/tensorflow/internal/c_api' )
86
+ shutil .copytree (REPO_ROOT / 'tensorflow-framework/src/main/java/org/tensorflow/framework' , merged_source / 'java/org/tensorflow/framework' )
87
+ shutil .copytree (REPO_ROOT / 'ndarray/ndarray/src/main/java/org/tensorflow/ndarray' , merged_source / 'java/org/tensorflow/ndarray' )
73
88
74
89
gen_java .gen_java_docs (
75
90
package = 'org.tensorflow' ,
76
91
source_path = merged_source / 'java' ,
77
92
output_dir = pathlib .Path (FLAGS .output_dir ),
78
- site_path = pathlib .Path (FLAGS .site_path ))
93
+ site_path = pathlib .Path (FLAGS .site_path ),
94
+ # Uncomment for local testing:
95
+ # script_path=pathlib.Path(REPO_ROOT/'tools/run-javadoc-for-tf-local.sh'),
96
+ )
79
97
80
98
81
99
if __name__ == '__main__' :
0 commit comments