Skip to content

Commit

Permalink
Merge branch 'release/v1.1.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
johnnymillergh committed Oct 20, 2020
2 parents 20b69cd + bcf727d commit ca596e0
Show file tree
Hide file tree
Showing 29 changed files with 507 additions and 160 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jdk: oraclejdk11
# We customize the script for compiling Maven application. For more about customizing the build:
# https://docs.travis-ci.com/user/customizing-the-build
script:
- ./mvnw install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
- ./mvnw install -Dmaven.javadoc.skip=true -B -V

before_install:
- chmod +x mvnw
Expand Down
28 changes: 28 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,31 @@
# 1.1.0 (2020-10-20)

* refactor(media-streaming): rename class `MediaStreamingBootstrap` ([0ca94d0](https://github.com/johnnymillergh/media-streaming/commit/0ca94d0))
* feat(FileWatcher): observe file changes on file system ([26ca2eb](https://github.com/johnnymillergh/media-streaming/commit/26ca2eb))
* feat(Reactive): delete file observation ([e9ea525](https://github.com/johnnymillergh/media-streaming/commit/e9ea525))
* perf(Exception): capture NoSuchFileException if the dir is wrong ([bd7c695](https://github.com/johnnymillergh/media-streaming/commit/bd7c695))
* perf(Log): adjust log level ([f5d3264](https://github.com/johnnymillergh/media-streaming/commit/f5d3264))
* perf(Log): print debug logs; enable log switch ([59f4789](https://github.com/johnnymillergh/media-streaming/commit/59f4789))
* perf(media-streaming): assemble all necessary beans in class `MediaStreamingAutoConfiguration` ([d122439](https://github.com/johnnymillergh/media-streaming/commit/d122439))
* perf(Route): reduce code warning ([a6530e1](https://github.com/johnnymillergh/media-streaming/commit/a6530e1))
* perf(WebFlux): reactive VIDEO_CACHE data ([05ec18b](https://github.com/johnnymillergh/media-streaming/commit/05ec18b))
* chore(starter): delete useless resource ([7c00b2b](https://github.com/johnnymillergh/media-streaming/commit/7c00b2b))
* build(GitHub Actions): update trigger actions ([20b69cd](https://github.com/johnnymillergh/media-streaming/commit/20b69cd))
* build(POM): update version to 1.1.0-SNAPSHOT ([4e69455](https://github.com/johnnymillergh/media-streaming/commit/4e69455))
* build(Travis): don't skip tests ([ce6c6b9](https://github.com/johnnymillergh/media-streaming/commit/ce6c6b9))
* test(sample-app): add unit tests for API ([888eb2c](https://github.com/johnnymillergh/media-streaming/commit/888eb2c))
* test(sample-app): correct unit test for API ([1a367a6](https://github.com/johnnymillergh/media-streaming/commit/1a367a6))
* fix(media-streaming): correct route bean factory ([bd9874e](https://github.com/johnnymillergh/media-streaming/commit/bd9874e))
* docs: update README.md ([f5f2c84](https://github.com/johnnymillergh/media-streaming/commit/f5f2c84))
* docs(sample-app): add comment for application.yml ([6d1336d](https://github.com/johnnymillergh/media-streaming/commit/6d1336d))


### BREAKING CHANGE

* observe file changes on file system
* print debug logs; enable log switch


## 1.0.1 (2020-10-19)

* fix(POM): update and fix conflict version number ([cc2a201](https://github.com/johnnymillergh/media-streaming/commit/cc2a201))
Expand Down
28 changes: 15 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
Spring Boot Starter
</div>
</div>

[![GitHub release](https://img.shields.io/github/release/johnnymillergh/media-streaming.svg)](https://github.com/johnnymillergh/media-streaming/releases)
[![Build Status](https://travis-ci.com/johnnymillergh/media-streaming.svg?branch=master)](https://travis-ci.com/johnnymillergh/media-streaming)
![Maven Package](https://github.com/johnnymillergh/media-streaming/workflows/Maven%20Package/badge.svg?branch=master)
[![GitHub issues](https://img.shields.io/github/issues/johnnymillergh/media-streaming)](https://github.com/johnnymillergh/media-streaming/issues)
[![GitHub forks](https://img.shields.io/github/forks/johnnymillergh/media-streaming)](https://github.com/johnnymillergh/media-streaming/network)
[![GitHub stars](https://img.shields.io/github/stars/johnnymillergh/media-streaming)](https://github.com/johnnymillergh/media-streaming)
Expand All @@ -18,7 +18,7 @@

# Media Streaming

**Media Streaming**, a Spring Boot Starter project.
**Media Streaming**, a Spring Boot Starter project, which makes media streaming easier in your Spring Boot based project.

## Features

Expand All @@ -28,21 +28,23 @@ Here is the highlights of **Media Streaming**:

`org.springframework.boot:spring-boot-starter-parent` - [![Spring Boot](https://maven-badges.herokuapp.com/maven-central/org.springframework.boot/spring-boot-starter-parent/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.springframework.boot/spring-boot-starter-parent/)

2. Docker support.

6. API visualization. Enhanced Swagger API documentation.

7. Log compression.
2. Media streaming over HTTP. (Basic media streaming ability was completed, more and more features is coming soon)

8. Request log.
3.

9. Method Argument Validation Aspect.
## Installation

10. Docker container log persistence.
The easiest way is to install the library via its [Maven package](http://search.maven.org/#search|gav|1|g%3A"com.drewnoakes" AND a%3A"metadata-extractor").

11. Startup statistics.
```xml
<dependency>
<groupId>com.jmframework.boot</groupId>
<artifactId>media-streaming-spring-boot-starter</artifactId>
<version>1.0.1</version>
</dependency>
```

12. Customized startup banner.
Alternatively, download it from the [releases page](https://github.com/johnnymillergh/media-streaming/releases).

## Usage

Expand All @@ -52,7 +54,7 @@ Here is the highlights of **Media Streaming**:
$ git clone https://github.com/johnnymillergh/media-streaming.git
```

2. Build with newest Intellij IDEA.
2. Build with the newest IntelliJ IDEA.

3. Click the green triangle to Run.

Expand Down
12 changes: 7 additions & 5 deletions media-streaming-sample-app/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,20 @@
<parent>
<groupId>com.jmframework.boot</groupId>
<artifactId>media-streaming</artifactId>
<version>1.0.1</version>
<version>1.1.0</version>
</parent>
<groupId>com.jmsoftware.boot</groupId>
<artifactId>media-streaming-sample-app</artifactId>
<name>Media Streaming :: Sample App</name>
<description>Media Streaming :: Sample App</description>

<dependencies>
<!-- <dependency>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-web</artifactId>-->
<!-- </dependency>-->
<!-- Do not include org.springframework.boot:spring-boot-starter-web,
Cuz it's not compatible with spring-boot-starter-webflux.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>-->
<dependency>
<groupId>com.jmframework.boot</groupId>
<artifactId>media-streaming-spring-boot-starter</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,34 @@
package com.jmsoftware.boot.mediastreamingsampleapp;

import lombok.extern.slf4j.Slf4j;
import lombok.val;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import java.time.Duration;
import java.time.Instant;
import java.util.TimeZone;

/**
* Description: MediaStreamingSampleAppApplication, change description here.
*
* @author Johnny Miller (鍾俊), email: [email protected]
* date 10/16/2020 2:58 PM
**/
@Slf4j
@SpringBootApplication
public class MediaStreamingSampleAppApplication {
private static final String LINE_SEPARATOR = System.lineSeparator();

public static void main(String[] args) {
val startInstant = Instant.now();
SpringApplication.run(MediaStreamingSampleAppApplication.class, args);
val endInstant = Instant.now();
val duration = Duration.between(startInstant, endInstant);
log.info("🥳 Congratulations! 🎉");
log.info("🖥 {} started!", MediaStreamingSampleAppApplication.class.getSimpleName());
log.info("⏳ Deployment duration: {} seconds ({} ms)", duration.getSeconds(), duration.toMillis());
log.info("⏰ App started at {} (timezone - {})", endInstant, TimeZone.getDefault().getDisplayName());
log.info("{} App running at{} - Local: http://localhost:8080/", LINE_SEPARATOR, LINE_SEPARATOR);
}

}
5 changes: 5 additions & 0 deletions media-streaming-sample-app/src/main/resources/application.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
media-streaming:
video-directory-on-file-system: 'C:\\Users\\Johnny\\Videos\\Mine'

# Configure logging level of Media Streaming
logging:
level:
com.jmframework.boot.mediastreamingspringbootautoconfigure: DEBUG
23 changes: 23 additions & 0 deletions media-streaming-sample-app/src/main/resources/banner.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
${AnsiStyle.BOLD}${AnsiColor.BRIGHT_GREEN}
__
/|/| _ _/'_ ( _/_ _ _ _ ' _
/ |(-(//(/ __)// (-(///)//)(/
_/
__ _
( _ _ /_ /_|
__)(///)/)((- ( |/)/)
/ / /
${AnsiStyle.BOLD}Media Streaming Sample App :: Powered by Spring Boot ::${spring-boot.formatted-version}
${AnsiColor.CYAN}Author: Johnny Miller (鍾俊), email: [email protected]
${AnsiStyle.NORMAL}${AnsiColor.MAGENTA}http://patorjk.com/software/taag/#p=display&f=Italic&t=Media%20Streaming%0ASample%20App
${AnsiColor.BRIGHT_BLACK}
-------------------------------------------Font Info-------------------------------------------
italic.flf Version 2
by: Bas Meijer [email protected] [email protected]
fixed by: Ryan Youck [email protected]

------------------------------------------Banner Info------------------------------------------
Banner generated by Text ASCII Art Generator.
A web app that lets you type in large ASCII Art text lettering.
This can create art you can put in your email signature, on your webpage, etc etc.
More at http://patorjk.com/software/taag/
Original file line number Diff line number Diff line change
@@ -1,13 +1,40 @@
package com.jmsoftware.boot.mediastreamingsampleapp;

import com.jmframework.boot.mediastreamingspringbootautoconfigure.model.Video;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.MediaType;
import org.springframework.test.web.reactive.server.EntityExchangeResult;
import org.springframework.test.web.reactive.server.WebTestClient;

import java.util.List;

/**
* Description: MediaStreamingSampleAppApplicationTests, change description here.
*
* @author Johnny Miller (锺俊), email: [email protected], date: 10/20/2020 1:04 PM
**/
@Slf4j
@SpringBootTest
@AutoConfigureWebTestClient
class MediaStreamingSampleAppApplicationTests {
@Autowired
private WebTestClient webTestClient;

@Test
void contextLoads() {
}

@Test
void videosTest() {
EntityExchangeResult<List<Video>> returnResult = webTestClient
.get()
.uri("/videos")
.accept(MediaType.ALL)
.exchange()
.expectStatus()
.isOk()
.expectBodyList(Video.class)
.returnResult();
log.info("Video test: {}", returnResult.getResponseBody());
}
}
7 changes: 6 additions & 1 deletion media-streaming-spring-boot-autoconfigure/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.jmframework.boot</groupId>
<artifactId>media-streaming</artifactId>
<version>1.0.1</version>
<version>1.1.0</version>
</parent>
<artifactId>media-streaming-spring-boot-autoconfigure</artifactId>
<name>Media Streaming :: Spring Boot Autoconfigure</name>
Expand Down Expand Up @@ -45,5 +45,10 @@
<artifactId>metadata-extractor</artifactId>
<version>2.15.0</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>29.0-jre</version>
</dependency>
</dependencies>
</project>

This file was deleted.

This file was deleted.

Loading

0 comments on commit ca596e0

Please sign in to comment.