Basically the ONAP rules are all to consider: Java code style
Extentions for SDN-R code in [ccsdk/features]/sdnr
The verfication is done by SonarCloud. Figures are here: ccsdk/features sdnr/wt https://sonarcloud.io/code?id=onap_ccsdk-features&selected=onap_ccsdk-features%3Asdnr%2Fwt
POM
for all pom.xml files:
- mvn tidy:pom
- <name>ccsdk-features :: ${project.artifactId}</name>
- Indent: 4 Spaces, not tab
Eclipse setting for XML:
Lisense header
- Insert if file is created at the top
- Use adapted variant in all files types: pom.xml .xml .java .ts .js
- Intellij Copyright plugin (https://www.jetbrains.com/help/idea/copyright.html)
License Header Text
============LICENSE_START======================================================= ONAP : ccsdk features ================================================================================ Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. All rights reserved. ================================================================================ 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. ============LICENSE_END=========================================================
Note:
If a license pre-exists for other Organization, then add your organization with Update / Modification rights.
Example:
============LICENSE_START======================================================= ONAP : ccsdk features ================================================================================ Copyright (C) 2020 Linux Foundation. All rights reserved. ================================================================================ Update Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. All rights reserved. ================================================================================ 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. ============LICENSE_END=========================================================
Examples
Example Java, JS
Copyright Header goes on top, before Package declaration, keeping an empty line after the header
/* * ============LICENSE_START======================================================= * ONAP : ccsdk features * ================================================================================ * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. * All rights reserved. * ================================================================================ * 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. * ============LICENSE_END========================================================= * */
Example XML
Copyright Header goes on top, after XML declaration tag, keeping an empty line after the header
- http://maven.apache.org/developers/conventions/code.html#POM_Code_Convention
- Code block is optional: <?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?> <!-- ~ ============LICENSE_START======================================================= ~ ONAP : ccsdk features ~ ================================================================================ ~ Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. ~ All rights reserved. ~ ================================================================================ ~ 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. ~ ============LICENSE_END======================================================= ~ -->