Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
mostroverkhov committed Jan 3, 2023
0 parents commit aa3a737
Show file tree
Hide file tree
Showing 42 changed files with 4,692 additions and 0 deletions.
38 changes: 38 additions & 0 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Build

on:
push:
branches: [ "develop" ]
pull_request:
branches: [ "develop" ]

permissions:
contents: read

jobs:
build:
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: [ ubuntu-20.04, macos-11, windows-2019 ]
jdk: [ 8, 11, 17 ]
fail-fast: false

steps:
- uses: actions/checkout@v3
- name: Set up JDK ${{ matrix.jdk }}
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.jdk }}
distribution: 'temurin'
- name: Cache Gradle packages
uses: actions/cache@v3
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: ${{ runner.os }}-gradle
- name: Build with Gradle
run: ./gradlew clean build --no-daemon


83 changes: 83 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so

# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip

# Logs and databases #
######################
*.log

# OS generated files #
######################
.DS_Store*
ehthumbs.db
Icon?
Thumbs.db

# Editor Files #
################
*~
*.swp

# Gradle Files #
################
.gradle
.ivy2
.ivy2.cache
.m2
!gradle-wrapper.jar

# Build output directies
/target
*/target
/build
*/build

# IntelliJ specific files/directories
out
.idea
*.ipr
*.iws
*.iml
atlassian-ide-plugin.xml

# Eclipse specific files/directories
.classpath
.project
.settings
.metadata

# NetBeans specific files/directories
.nbattrs
/bin

#.gitignore in subdirectory
#.gitignore

### infer ###
# infer- http://fbinfer.com/
infer-out
*/infer-out
.inferConfig
*/.inferConfig

*/src/generated/*

bin
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# netty-websocket-http1
128 changes: 128 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
/*
* Copyright 2022 - present Maksym Ostroverkhov.
*
* 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.
*/

plugins {
id "com.palantir.git-version"
id "com.github.ben-manes.versions"

id "com.github.sherter.google-java-format" apply false
id "com.google.osdetector" apply false
id "io.spring.dependency-management" apply false
}

description = "Netty based implementation of rfc6455 - the websocket protocol. Parent project"

apply from: "gradle/dependency-management.gradle"
apply from: "gradle/publishing.gradle"

subprojects {
apply plugin: "com.google.osdetector"
apply plugin: "com.github.sherter.google-java-format"

version = projectVersion(project)

println "Building module ${name}:${version}"

repositories {
mavenCentral()
}

plugins.withType(JavaPlugin) {

compileJava {
sourceCompatibility = 1.8
targetCompatibility = 1.8
dependsOn "googleJavaFormat"
}

javadoc {
options.with {
links jdkJavaDoc()
links "https://netty.io/4.1/api/"
addBooleanOption("Xdoclint:all,-missing", true)
}
}

test {
if (JavaVersion.current() >= JavaVersion.VERSION_1_9) {
jvmArgs "--add-exports=java.base/sun.security.x509=ALL-UNNAMED"
}

useJUnitPlatform()
testLogging {
events "failed"
exceptionFormat "full"
}

if (project.hasProperty("MAX_FRAME_SIZE")) {
systemProperty "MAX_FRAME_SIZE", project.property("MAX_FRAME_SIZE")
}
}
}

plugins.withType(JavaLibraryPlugin) {

task sourcesJar(type: Jar, dependsOn: classes) {
classifier "sources"
from sourceSets.main.allJava
}

task javadocJar(type: Jar, dependsOn: javadoc) {
classifier "javadoc"
from javadoc.destinationDir
}

artifacts {
archives sourcesJar, javadocJar, jar
}
}

googleJavaFormat {
toolVersion = "1.6"
}
}

task printProjectVersion {
doLast {
println "Project version: ${projectVersion(project)}"
}
}

def jdkJavaDoc() {
def version = JavaVersion.current()
def majorVersion = version.majorVersion
if (version.isJava11Compatible()) {
return "https://docs.oracle.com/en/java/javase/$majorVersion/docs/api/"
} else {
return "https://docs.oracle.com/javase/$majorVersion/docs/api/"
}
}

def projectVersion(project) {
def versionSuffix = ""
def gitBranchName = versionDetails().branchName
def branchName = gitBranchName ?: project.findProperty("branch")
if (branchName != null) {
if (branchName == "develop") {
versionSuffix = "-SNAPSHOT"
} else if (branchName.startsWith("feature")) {
versionSuffix = "-${branchName.replace("/", "-")}-SNAPSHOT"
}
}
return project.version + versionSuffix
}

defaultTasks "clean", "build", "installDist"
21 changes: 21 additions & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
group=com.jauntsdn.netty
version=0.9.0

googleJavaFormatPluginVersion=0.9
dependencyManagementPluginVersion=1.1.0
gitPluginVersion=0.13.0
osDetectorPluginVersion=1.7.1
versionsPluginVersion=0.44.0

nettyVersion=4.1.86.Final
nettyTcnativeVersion=2.0.54.Final
hdrHistogramVersion=2.1.12
slf4jVersion=1.7.36
logbackVersion=1.2.11
jsr305Version=3.0.2

junitVersion=5.9.1
assertjVersion=3.23.1

org.gradle.parallel=true
org.gradle.configureondemand=true
23 changes: 23 additions & 0 deletions gradle/dependency-management.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
subprojects {
apply plugin: "io.spring.dependency-management"

dependencyManagement {
imports {
mavenBom "io.netty:netty-bom:${nettyVersion}"
mavenBom "org.junit:junit-bom:${junitVersion}"
}
dependencies {
dependency "org.hdrhistogram:HdrHistogram:${hdrHistogramVersion}"
dependency "io.netty:netty-tcnative-classes:${nettyTcnativeVersion}"
dependency "io.netty:netty-tcnative-boringssl-static:${nettyTcnativeVersion}"
dependency "org.slf4j:slf4j-api:${slf4jVersion}"
dependency "ch.qos.logback:logback-classic:${logbackVersion}"
dependency "com.google.code.findbugs:jsr305:${jsr305Version}"
dependency "org.assertj:assertj-core:${assertjVersion}"
}

generatedPomCustomization {
enabled = false
}
}
}
Loading

0 comments on commit aa3a737

Please sign in to comment.