You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by gg...@apache.org on 2022/04/14 11:47:10 UTC

[mina-ftpserver] branch 1.1.X updated (5c3a27cd -> 02467a09)

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a change to branch 1.1.X
in repository https://gitbox.apache.org/repos/asf/mina-ftpserver.git


    from 5c3a27cd [FTPSERVER-509] Enable GitHub Action build
     new b6466a92 Javadoc: Replace old style package.html with package-info.java files.
     new 02467a09 [FTPSERVER-506] Fix binary compatibility issues.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../command/impl/listing}/package-info.java        |  7 +-
 .../ftpserver/command/impl/listing/package.html    | 25 -------
 .../ftpserver/command/impl}/package-info.java      |  7 +-
 .../org/apache/ftpserver/command/impl/package.html | 25 -------
 .../apache/ftpserver/command}/package-info.java    |  2 +-
 .../config/spring/factorybeans}/package-info.java  |  2 +-
 .../ftpserver/config/spring}/package-info.java     |  7 +-
 .../apache/ftpserver/config/spring/package.html    | 25 -------
 .../filesystem/nativefs/impl}/package-info.java    |  7 +-
 .../filesystem/nativefs/impl/package.html          | 25 -------
 .../filesystem/nativefs}/package-info.java         |  2 +-
 .../ftpletcontainer/impl}/package-info.java        |  7 +-
 .../ftpserver/ftpletcontainer/impl/package.html    | 25 -------
 .../ftpserver/ftpletcontainer}/package-info.java   |  2 +-
 .../org/apache/ftpserver/impl}/package-info.java   |  4 +-
 .../java/org/apache/ftpserver/impl/package.html    | 24 -------
 .../apache/ftpserver/ipfilter}/package-info.java   |  2 +-
 .../ftpserver/listener/nio}/package-info.java      |  7 +-
 .../org/apache/ftpserver/listener/nio/package.html | 25 -------
 .../apache/ftpserver/listener}/package-info.java   |  2 +-
 .../org/apache/ftpserver/main}/package-info.java   |  2 +-
 .../ftpserver/message/impl}/package-info.java      |  7 +-
 .../org/apache/ftpserver/message/impl/package.html | 25 -------
 .../apache/ftpserver/message}/package-info.java    |  2 +-
 .../java/org/apache/ftpserver}/package-info.java   |  2 +-
 .../apache/ftpserver/ssl/impl}/package-info.java   |  7 +-
 .../org/apache/ftpserver/ssl/impl/package.html     | 25 -------
 .../org/apache/ftpserver/ssl}/package-info.java    |  2 +-
 .../ftpserver/usermanager/impl}/package-info.java  |  2 +-
 .../ftpserver/usermanager}/package-info.java       |  2 +-
 .../org/apache/ftpserver/util/StringUtils.java     | 23 +++---
 .../org/apache/ftpserver/util}/package-info.java   |  2 +-
 distribution/pom.xml                               |  1 +
 examples/ftpserver-example-spring-war/pom.xml      |  1 +
 examples/ftpserver-osgi-ftplet-service/pom.xml     |  1 +
 examples/ftpserver-osgi-spring-service/pom.xml     |  1 +
 examples/pom.xml                                   |  1 +
 .../org/apache/ftpserver/ftplet}/package-info.java |  2 +-
 pom.xml                                            | 82 ++++++++++++++++++----
 39 files changed, 153 insertions(+), 269 deletions(-)
 copy {examples/ftpserver-osgi-ftplet-service/src/main/java/org/apache/ftpserver/example/ftpletservice/impl => core/src/main/java/org/apache/ftpserver/command/impl/listing}/package-info.java (82%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/command/impl/listing/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/command/impl}/package-info.java (85%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/command/impl/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/command}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/config/spring/factorybeans}/package-info.java (93%)
 copy {examples/ftpserver-osgi-ftplet-service/src/main/java/org/apache/ftpserver/example/ftpletservice => core/src/main/java/org/apache/ftpserver/config/spring}/package-info.java (83%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/config/spring/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl}/package-info.java (83%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/filesystem/nativefs}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl}/package-info.java (84%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/ftpletcontainer}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/impl}/package-info.java (90%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/impl/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/ipfilter}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/listener/nio}/package-info.java (85%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/listener/nio/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/listener}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/main}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/message/impl}/package-info.java (84%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/message/impl/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/message}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/ssl/impl}/package-info.java (85%)
 delete mode 100644 core/src/main/java/org/apache/ftpserver/ssl/impl/package.html
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/ssl}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/usermanager/impl}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/usermanager}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => core/src/main/java/org/apache/ftpserver/util}/package-info.java (94%)
 copy {examples/ftpserver-example-spring-war/src/main/java/org/apache/ftpserver/example/springwar => ftplet-api/src/main/java/org/apache/ftpserver/ftplet}/package-info.java (94%)


[mina-ftpserver] 01/02: Javadoc: Replace old style package.html with package-info.java files.

Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch 1.1.X
in repository https://gitbox.apache.org/repos/asf/mina-ftpserver.git

commit b6466a9237724714f3bf5dbc3542d9d81369f1ba
Author: Gary Gregory <gg...@rocketsoftware.com>
AuthorDate: Tue Apr 12 21:24:37 2022 -0400

    Javadoc: Replace old style package.html with package-info.java files.
    
    Some of the package-info.java have empty comments.
---
 .../command/impl/listing/package-info.java         | 27 ++++++++++++++++++++++
 .../ftpserver/command/impl/listing/package.html    | 25 --------------------
 .../ftpserver/command/impl/package-info.java       | 27 ++++++++++++++++++++++
 .../org/apache/ftpserver/command/impl/package.html | 25 --------------------
 .../org/apache/ftpserver/command/package-info.java | 22 ++++++++++++++++++
 .../config/spring/factorybeans/package-info.java   | 22 ++++++++++++++++++
 .../ftpserver/config/spring/package-info.java      | 27 ++++++++++++++++++++++
 .../apache/ftpserver/config/spring/package.html    | 25 --------------------
 .../filesystem/nativefs/impl/package-info.java     | 27 ++++++++++++++++++++++
 .../filesystem/nativefs/impl/package.html          | 25 --------------------
 .../filesystem/nativefs/package-info.java          | 22 ++++++++++++++++++
 .../ftpletcontainer/impl/package-info.java         | 27 ++++++++++++++++++++++
 .../ftpserver/ftpletcontainer/impl/package.html    | 25 --------------------
 .../ftpserver/ftpletcontainer/package-info.java    | 22 ++++++++++++++++++
 .../org/apache/ftpserver/impl/package-info.java    | 24 +++++++++++++++++++
 .../java/org/apache/ftpserver/impl/package.html    | 24 -------------------
 .../apache/ftpserver/ipfilter/package-info.java    | 22 ++++++++++++++++++
 .../ftpserver/listener/nio/package-info.java       | 27 ++++++++++++++++++++++
 .../org/apache/ftpserver/listener/nio/package.html | 25 --------------------
 .../apache/ftpserver/listener/package-info.java    | 22 ++++++++++++++++++
 .../org/apache/ftpserver/main/package-info.java    | 22 ++++++++++++++++++
 .../ftpserver/message/impl/package-info.java       | 27 ++++++++++++++++++++++
 .../org/apache/ftpserver/message/impl/package.html | 25 --------------------
 .../org/apache/ftpserver/message/package-info.java | 22 ++++++++++++++++++
 .../java/org/apache/ftpserver/package-info.java    | 22 ++++++++++++++++++
 .../apache/ftpserver/ssl/impl/package-info.java    | 27 ++++++++++++++++++++++
 .../org/apache/ftpserver/ssl/impl/package.html     | 25 --------------------
 .../org/apache/ftpserver/ssl/package-info.java     | 22 ++++++++++++++++++
 .../ftpserver/usermanager/impl/package-info.java   | 22 ++++++++++++++++++
 .../apache/ftpserver/usermanager/package-info.java | 22 ++++++++++++++++++
 .../org/apache/ftpserver/util/package-info.java    | 22 ++++++++++++++++++
 .../org/apache/ftpserver/ftplet/package-info.java  | 22 ++++++++++++++++++
 32 files changed, 548 insertions(+), 224 deletions(-)

diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/listing/package-info.java b/core/src/main/java/org/apache/ftpserver/command/impl/listing/package-info.java
new file mode 100644
index 00000000..9cafb46b
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/command/impl/listing/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * File listing implementations used by various FTP commands
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.command.impl.listing;
diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/listing/package.html b/core/src/main/java/org/apache/ftpserver/command/impl/listing/package.html
deleted file mode 100644
index 4a250c22..00000000
--- a/core/src/main/java/org/apache/ftpserver/command/impl/listing/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>File listing implementations used by various FTP commands</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/package-info.java b/core/src/main/java/org/apache/ftpserver/command/impl/package-info.java
new file mode 100644
index 00000000..62c548ca
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/command/impl/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * FTP command implementations.
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.command.impl;
diff --git a/core/src/main/java/org/apache/ftpserver/command/impl/package.html b/core/src/main/java/org/apache/ftpserver/command/impl/package.html
deleted file mode 100644
index 399ab0fd..00000000
--- a/core/src/main/java/org/apache/ftpserver/command/impl/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>FTP command implementations</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/command/package-info.java b/core/src/main/java/org/apache/ftpserver/command/package-info.java
new file mode 100644
index 00000000..e30b2c5b
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/command/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.command;
diff --git a/core/src/main/java/org/apache/ftpserver/config/spring/factorybeans/package-info.java b/core/src/main/java/org/apache/ftpserver/config/spring/factorybeans/package-info.java
new file mode 100644
index 00000000..fd4a4219
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/config/spring/factorybeans/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.config.spring.factorybeans;
diff --git a/core/src/main/java/org/apache/ftpserver/config/spring/package-info.java b/core/src/main/java/org/apache/ftpserver/config/spring/package-info.java
new file mode 100644
index 00000000..1da64d8e
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/config/spring/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * Support classes for Spring based XML configuration.
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.config.spring;
diff --git a/core/src/main/java/org/apache/ftpserver/config/spring/package.html b/core/src/main/java/org/apache/ftpserver/config/spring/package.html
deleted file mode 100644
index ca4f67dc..00000000
--- a/core/src/main/java/org/apache/ftpserver/config/spring/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>Support classes for Spring based XML configuration</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl/package-info.java b/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl/package-info.java
new file mode 100644
index 00000000..c7c8e252
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * Native file system implementation.
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.filesystem.nativefs.impl;
diff --git a/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl/package.html b/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl/package.html
deleted file mode 100644
index e1d20c09..00000000
--- a/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/impl/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>Native file system implementation</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/package-info.java b/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/package-info.java
new file mode 100644
index 00000000..b0c6e226
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/filesystem/nativefs/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.filesystem.nativefs;
diff --git a/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/package-info.java b/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/package-info.java
new file mode 100644
index 00000000..c40c1b90
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * Ftplet container implementation.
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.ftpletcontainer.impl;
diff --git a/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/package.html b/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/package.html
deleted file mode 100644
index baac85c3..00000000
--- a/core/src/main/java/org/apache/ftpserver/ftpletcontainer/impl/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>Ftplet container implementation</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/ftpletcontainer/package-info.java b/core/src/main/java/org/apache/ftpserver/ftpletcontainer/package-info.java
new file mode 100644
index 00000000..531b32e9
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/ftpletcontainer/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.ftpletcontainer;
diff --git a/core/src/main/java/org/apache/ftpserver/impl/package-info.java b/core/src/main/java/org/apache/ftpserver/impl/package-info.java
new file mode 100644
index 00000000..cf1f03ce
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/impl/package-info.java
@@ -0,0 +1,24 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.impl;
diff --git a/core/src/main/java/org/apache/ftpserver/impl/package.html b/core/src/main/java/org/apache/ftpserver/impl/package.html
deleted file mode 100644
index 42822ef5..00000000
--- a/core/src/main/java/org/apache/ftpserver/impl/package.html
+++ /dev/null
@@ -1,24 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/ipfilter/package-info.java b/core/src/main/java/org/apache/ftpserver/ipfilter/package-info.java
new file mode 100644
index 00000000..7059c97d
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/ipfilter/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.ipfilter;
diff --git a/core/src/main/java/org/apache/ftpserver/listener/nio/package-info.java b/core/src/main/java/org/apache/ftpserver/listener/nio/package-info.java
new file mode 100644
index 00000000..1d6fea3e
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/listener/nio/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * NIO based listener.
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.listener.nio;
diff --git a/core/src/main/java/org/apache/ftpserver/listener/nio/package.html b/core/src/main/java/org/apache/ftpserver/listener/nio/package.html
deleted file mode 100644
index 324c7294..00000000
--- a/core/src/main/java/org/apache/ftpserver/listener/nio/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>NIO based listener</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/listener/package-info.java b/core/src/main/java/org/apache/ftpserver/listener/package-info.java
new file mode 100644
index 00000000..2d546f3e
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/listener/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.listener;
diff --git a/core/src/main/java/org/apache/ftpserver/main/package-info.java b/core/src/main/java/org/apache/ftpserver/main/package-info.java
new file mode 100644
index 00000000..f6edd402
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/main/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.main;
diff --git a/core/src/main/java/org/apache/ftpserver/message/impl/package-info.java b/core/src/main/java/org/apache/ftpserver/message/impl/package-info.java
new file mode 100644
index 00000000..8eb3b5dd
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/message/impl/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * Message resource implementation
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.message.impl;
diff --git a/core/src/main/java/org/apache/ftpserver/message/impl/package.html b/core/src/main/java/org/apache/ftpserver/message/impl/package.html
deleted file mode 100644
index ce5c9017..00000000
--- a/core/src/main/java/org/apache/ftpserver/message/impl/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>Message resource implementation</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/message/package-info.java b/core/src/main/java/org/apache/ftpserver/message/package-info.java
new file mode 100644
index 00000000..71edd25e
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/message/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.message;
diff --git a/core/src/main/java/org/apache/ftpserver/package-info.java b/core/src/main/java/org/apache/ftpserver/package-info.java
new file mode 100644
index 00000000..8f4de9c0
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver;
diff --git a/core/src/main/java/org/apache/ftpserver/ssl/impl/package-info.java b/core/src/main/java/org/apache/ftpserver/ssl/impl/package-info.java
new file mode 100644
index 00000000..648a6b3e
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/ssl/impl/package-info.java
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+/**
+ * <strong>Internal classes, do not use directly!</strong>
+ * <p>
+ * SSL support implementation.
+ * </p>
+ * 
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.ssl.impl;
diff --git a/core/src/main/java/org/apache/ftpserver/ssl/impl/package.html b/core/src/main/java/org/apache/ftpserver/ssl/impl/package.html
deleted file mode 100644
index 9db0d2b7..00000000
--- a/core/src/main/java/org/apache/ftpserver/ssl/impl/package.html
+++ /dev/null
@@ -1,25 +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.
--->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body>
-<strong>Internal classes, do not use directly!</strong>
-<p>SSL support implementation</p> 
-</body>
-</html>
diff --git a/core/src/main/java/org/apache/ftpserver/ssl/package-info.java b/core/src/main/java/org/apache/ftpserver/ssl/package-info.java
new file mode 100644
index 00000000..222ee9b8
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/ssl/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.ssl;
diff --git a/core/src/main/java/org/apache/ftpserver/usermanager/impl/package-info.java b/core/src/main/java/org/apache/ftpserver/usermanager/impl/package-info.java
new file mode 100644
index 00000000..2efd0cd3
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/usermanager/impl/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.usermanager.impl;
diff --git a/core/src/main/java/org/apache/ftpserver/usermanager/package-info.java b/core/src/main/java/org/apache/ftpserver/usermanager/package-info.java
new file mode 100644
index 00000000..2dfc15d4
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/usermanager/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.usermanager;
diff --git a/core/src/main/java/org/apache/ftpserver/util/package-info.java b/core/src/main/java/org/apache/ftpserver/util/package-info.java
new file mode 100644
index 00000000..0a0608c0
--- /dev/null
+++ b/core/src/main/java/org/apache/ftpserver/util/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.util;
diff --git a/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/package-info.java b/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/package-info.java
new file mode 100644
index 00000000..7abbcca8
--- /dev/null
+++ b/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/package-info.java
@@ -0,0 +1,22 @@
+/*
+ * 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.
+ */
+/**
+ * @author <a href="http://mina.apache.org">Apache MINA Project</a>
+ */
+package org.apache.ftpserver.ftplet;


[mina-ftpserver] 02/02: [FTPSERVER-506] Fix binary compatibility issues.

Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch 1.1.X
in repository https://gitbox.apache.org/repos/asf/mina-ftpserver.git

commit 02467a09beea50b841eabe751d54644d7b3a1566
Author: Gary Gregory <gg...@rocketsoftware.com>
AuthorDate: Wed Apr 13 21:07:39 2022 -0400

    [FTPSERVER-506] Fix binary compatibility issues.
    
    Pick 1.1.2 as the baseline for FTPSERVER-506 but it should be the
    previous version in more normal usage when you've been sure that binary
    compatibility has not been broken from release to release.
---
 .../org/apache/ftpserver/util/StringUtils.java     | 23 +++---
 distribution/pom.xml                               |  1 +
 examples/ftpserver-example-spring-war/pom.xml      |  1 +
 examples/ftpserver-osgi-ftplet-service/pom.xml     |  1 +
 examples/ftpserver-osgi-spring-service/pom.xml     |  1 +
 examples/pom.xml                                   |  1 +
 pom.xml                                            | 82 ++++++++++++++++++----
 7 files changed, 88 insertions(+), 22 deletions(-)

diff --git a/core/src/main/java/org/apache/ftpserver/util/StringUtils.java b/core/src/main/java/org/apache/ftpserver/util/StringUtils.java
index 7bba65dc..a618ed7c 100644
--- a/core/src/main/java/org/apache/ftpserver/util/StringUtils.java
+++ b/core/src/main/java/org/apache/ftpserver/util/StringUtils.java
@@ -28,8 +28,13 @@ import java.util.Map;
  *
  * @author <a href="http://mina.apache.org">Apache MINA Project</a>
  */
-public final class StringUtils {
-    private StringUtils() {
+public class StringUtils {
+	
+	/**
+	 * @deprecated Do not instantiate.
+	 */
+	@Deprecated
+    public StringUtils() {
         // Nothing to do
     }
 
@@ -41,7 +46,7 @@ public final class StringUtils {
      * @param newStr The replacement string
      * @return The modified string
      */
-    public static String replaceString(String source, String oldStr,
+    public static final String replaceString(String source, String oldStr,
             String newStr) {
         StringBuilder sb = new StringBuilder(source.length());
         int sind = 0;
@@ -68,7 +73,7 @@ public final class StringUtils {
      * the original string
      * @return The modified string
      */
-    public static String replaceString(String source, Object[] args) {
+    public static final String replaceString(String source, Object[] args) {
         int startIndex = 0;
         int openIndex = source.indexOf('{', startIndex);
         if (openIndex == -1) {
@@ -117,7 +122,7 @@ public final class StringUtils {
      * the original string
      * @return The modified string
      */
-    public static String replaceString(String source,
+    public static final String replaceString(String source,
             Map<String, Object> args) {
         int startIndex = 0;
         int openIndex = source.indexOf('{', startIndex);
@@ -165,7 +170,7 @@ public final class StringUtils {
      *                          '>' will be replaced by &gt;
      * @param bReplaceQuote if true '\"' will be replaced by &quot;
      */
-    public static String formatHtml(String source, boolean bReplaceNl,
+    public static final String formatHtml(String source, boolean bReplaceNl,
             boolean bReplaceTag, boolean bReplaceQuote) {
 
         StringBuilder sb = new StringBuilder();
@@ -231,7 +236,7 @@ public final class StringUtils {
     /**
      * Pad string object.
      */
-    public static String pad(String src, char padChar, boolean rightPad,
+    public static final String pad(String src, char padChar, boolean rightPad,
             int totalLength) {
 
         int srcLength = src.length();
@@ -255,7 +260,7 @@ public final class StringUtils {
     /**
      * Get hex string from byte array.
      */
-    public static String toHexString(byte[] res) {
+    public static final String toHexString(byte[] res) {
         StringBuilder sb = new StringBuilder(res.length << 1);
         for (int i = 0; i < res.length; i++) {
             String digit = Integer.toHexString(0xFF & res[i]);
@@ -270,7 +275,7 @@ public final class StringUtils {
     /**
      * Get byte array from hex string.
      */
-    public static byte[] toByteArray(String hexString) {
+    public static final byte[] toByteArray(String hexString) {
         int arrLength = hexString.length() >> 1;
         byte buff[] = new byte[arrLength];
         for (int i = 0; i < arrLength; i++) {
diff --git a/distribution/pom.xml b/distribution/pom.xml
index c71d83c5..df87d759 100644
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -25,6 +25,7 @@
 
   <properties>
     <checkstyle.configdir>..</checkstyle.configdir>
+    <japicmp.skip>true</japicmp.skip>
   </properties>
 
   <build>
diff --git a/examples/ftpserver-example-spring-war/pom.xml b/examples/ftpserver-example-spring-war/pom.xml
index a3d27a68..edd0a6bf 100644
--- a/examples/ftpserver-example-spring-war/pom.xml
+++ b/examples/ftpserver-example-spring-war/pom.xml
@@ -25,6 +25,7 @@
 
   <properties>
     <checkstyle.configdir>../..</checkstyle.configdir>
+    <japicmp.skip>true</japicmp.skip>
   </properties>
 
   <dependencies>
diff --git a/examples/ftpserver-osgi-ftplet-service/pom.xml b/examples/ftpserver-osgi-ftplet-service/pom.xml
index 830eeaf8..bdfb0d74 100644
--- a/examples/ftpserver-osgi-ftplet-service/pom.xml
+++ b/examples/ftpserver-osgi-ftplet-service/pom.xml
@@ -30,6 +30,7 @@
 
   <properties>
     <checkstyle.configdir>../..</checkstyle.configdir>
+    <japicmp.skip>true</japicmp.skip>
   </properties>
 
   <dependencies>
diff --git a/examples/ftpserver-osgi-spring-service/pom.xml b/examples/ftpserver-osgi-spring-service/pom.xml
index da53d298..ac6ad356 100644
--- a/examples/ftpserver-osgi-spring-service/pom.xml
+++ b/examples/ftpserver-osgi-spring-service/pom.xml
@@ -30,6 +30,7 @@
 
   <properties>
     <checkstyle.configdir>../..</checkstyle.configdir>
+    <japicmp.skip>true</japicmp.skip>
   </properties>
 
   <dependencies>
diff --git a/examples/pom.xml b/examples/pom.xml
index 323ef219..2e93919c 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -35,6 +35,7 @@
 
   <properties>
     <checkstyle.configdir>..</checkstyle.configdir>
+    <japicmp.skip>true</japicmp.skip>
   </properties>
 
 </project>
diff --git a/pom.xml b/pom.xml
index d64fe237..fd08400e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -40,18 +40,6 @@
     </license>
   </licenses>
 
-  <!-- Temporary add snapshot repository here to be able to resolve snapshot parent pom -->
-  <repositories>
-    <repository>
-      <id>apache.snapshots</id>
-      <name>Apache Snapshot Repository</name>
-      <url>https://repository.apache.org/snapshots</url>
-      <releases>
-        <enabled>false</enabled>
-      </releases>
-    </repository>
-  </repositories>
-
   <mailingLists>
     <mailingList>
       <name>FtpServer Users mailing list</name>
@@ -271,7 +259,7 @@
   </dependencyManagement>
 
   <build>
-    <defaultGoal>clean verify</defaultGoal>
+    <defaultGoal>clean verify japicmp:cmp</defaultGoal>
     <pluginManagement>
       <plugins>
         <plugin>
@@ -359,6 +347,50 @@
             </dependency>
           </dependencies>
         </plugin>
+        
+        <plugin>
+          <groupId>com.github.siom79.japicmp</groupId>
+          <artifactId>japicmp-maven-plugin</artifactId>
+          <version>0.15.7</version>
+          <configuration>
+            <oldVersion>
+              <dependency>
+                <groupId>${project.groupId}</groupId>
+                <artifactId>${project.artifactId}</artifactId>
+                <!-- 
+                Pick 1.1.2 for FTPSERVER-506 but it should be the previous version in more normal usage
+                when you've been sure that binary compatibility has not been broken from release to release. 
+                -->
+                <version>1.1.2</version>
+                <type>jar</type>
+             </dependency>
+            </oldVersion>
+            <newVersion>
+              <file>
+                <path>${project.build.directory}/${project.artifactId}-${project.version}.jar</path>
+              </file>
+            </newVersion>
+            <parameter>
+              <onlyModified>true</onlyModified>
+              <breakBuildOnBinaryIncompatibleModifications>true</breakBuildOnBinaryIncompatibleModifications>
+              <breakBuildOnSourceIncompatibleModifications>true</breakBuildOnSourceIncompatibleModifications>
+              <!-- skip japicmp on "mvn site" - use "mvn package site" to include report -->
+              <ignoreMissingNewVersion>true</ignoreMissingNewVersion>
+              <reportOnlyFilename>true</reportOnlyFilename>
+              <skipPomModules>true</skipPomModules>
+              <ignoreMissingClasses>false</ignoreMissingClasses>
+              <overrideCompatibilityChangeParameters>
+                <overrideCompatibilityChangeParameter>
+                  <compatibilityChange>METHOD_NEW_DEFAULT</compatibilityChange>
+                  <binaryCompatible>true</binaryCompatible>
+                  <sourceCompatible>true</sourceCompatible>
+                  <semanticVersionLevel>PATCH</semanticVersionLevel>
+                </overrideCompatibilityChangeParameter>
+              </overrideCompatibilityChangeParameters>
+            </parameter>
+          </configuration>
+        </plugin>
+
       </plugins>
     </pluginManagement>
 
@@ -565,6 +597,30 @@
         </plugins>
       </build>
     </profile>
+    <profile>
+      <id>japicmp</id>
+      <activation>
+        <property>
+          <name>enforce.japicmp</name>
+        </property>
+      </activation>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>com.github.siom79.japicmp</groupId>
+            <artifactId>japicmp-maven-plugin</artifactId>
+            <executions>
+              <execution>
+                <phase>verify</phase>
+                <goals>
+                  <goal>cmp</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>    
   </profiles>
 
   <modules>