Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
browser-backend
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
browser-backend
Commits
d5b01f29
Commit
d5b01f29
authored
Jun 16, 2020
by
xuxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
部分代码添加注释
parent
89b62bef
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
43 changed files
with
453 additions
and
1025 deletions
+453
-1025
AccountServicePool.java
...dgec/browserbackend/account/utils/AccountServicePool.java
+5
-2
OAuthResponseExceptionTranslator.java
...backend/auth/config/OAuthResponseExceptionTranslator.java
+1
-2
ResourceServerConfiguration.java
...owserbackend/auth/config/ResourceServerConfiguration.java
+1
-7
AuthErrorHandler.java
...dgec/browserbackend/auth/controller/AuthErrorHandler.java
+1
-0
MongoOAuth2AccessToken.java
...wserbackend/auth/domain/mongo/MongoOAuth2AccessToken.java
+6
-36
MongoOAuth2RefreshToken.java
...serbackend/auth/domain/mongo/MongoOAuth2RefreshToken.java
+6
-22
IpControlloer.java
...dgec/browserbackend/browser/controller/IpControlloer.java
+6
-0
BindHistory.java
.../com/edgec/browserbackend/browser/domain/BindHistory.java
+2
-37
Group.java
...n/java/com/edgec/browserbackend/browser/domain/Group.java
+28
-36
IpCountRecord.java
...om/edgec/browserbackend/browser/domain/IpCountRecord.java
+6
-32
IpOptions.java
...va/com/edgec/browserbackend/browser/domain/IpOptions.java
+5
-30
IpResource.java
...a/com/edgec/browserbackend/browser/domain/IpResource.java
+12
-262
IpSummary.java
...va/com/edgec/browserbackend/browser/domain/IpSummary.java
+19
-31
IpType.java
.../java/com/edgec/browserbackend/browser/domain/IpType.java
+11
-0
OperationHistory.java
...edgec/browserbackend/browser/domain/OperationHistory.java
+19
-71
PlatformOptions.java
.../edgec/browserbackend/browser/domain/PlatformOptions.java
+5
-18
ProxyConfig.java
.../com/edgec/browserbackend/browser/domain/ProxyConfig.java
+4
-16
Shop.java
...in/java/com/edgec/browserbackend/browser/domain/Shop.java
+81
-113
ShopSummary.java
.../com/edgec/browserbackend/browser/domain/ShopSummary.java
+21
-31
SpecialLine.java
.../com/edgec/browserbackend/browser/domain/SpecialLine.java
+27
-49
UserShop.java
...ava/com/edgec/browserbackend/browser/domain/UserShop.java
+9
-46
Vendor.java
.../java/com/edgec/browserbackend/browser/domain/Vendor.java
+21
-3
IpListRequestDto.java
...om/edgec/browserbackend/browser/dto/IpListRequestDto.java
+5
-3
IpResourceServiceImpl.java
...erbackend/browser/service/Impl/IpResourceServiceImpl.java
+0
-0
ShopServiceImpl.java
.../browserbackend/browser/service/Impl/ShopServiceImpl.java
+42
-46
BrowserTask.java
...va/com/edgec/browserbackend/browser/task/BrowserTask.java
+16
-21
PaymentTask.java
...va/com/edgec/browserbackend/browser/task/PaymentTask.java
+1
-1
KafkaUtils.java
...edgec/browserbackend/common/commons/kafka/KafkaUtils.java
+1
-0
CommonStringUtils.java
...rowserbackend/common/commons/utils/CommonStringUtils.java
+9
-8
Pair.java
...a/com/edgec/browserbackend/common/commons/utils/Pair.java
+1
-0
PriorityThreadPoolExecutor.java
...kend/common/commons/utils/PriorityThreadPoolExecutor.java
+1
-0
RemoteShellExecutor.java
...wserbackend/common/commons/utils/RemoteShellExecutor.java
+18
-14
TimestampUtils.java
...c/browserbackend/common/commons/utils/TimestampUtils.java
+1
-0
UUIDGenerator.java
...ec/browserbackend/common/commons/utils/UUIDGenerator.java
+1
-0
InstanceStatus.java
.../edgec/browserbackend/common/constant/InstanceStatus.java
+1
-0
SpecialUsers.java
...om/edgec/browserbackend/common/constant/SpecialUsers.java
+12
-33
BaseResponse.java
...ava/com/edgec/browserbackend/common/dto/BaseResponse.java
+4
-34
Result.java
...main/java/com/edgec/browserbackend/common/dto/Result.java
+1
-0
Aes.java
src/main/java/com/edgec/browserbackend/common/utils/Aes.java
+13
-3
JsonUtils.java
...java/com/edgec/browserbackend/common/utils/JsonUtils.java
+12
-6
PollerUtils.java
...va/com/edgec/browserbackend/common/utils/PollerUtils.java
+2
-1
ThreadPoolUtils.java
...om/edgec/browserbackend/common/utils/ThreadPoolUtils.java
+4
-6
Trans.java
...ain/java/com/edgec/browserbackend/common/utils/Trans.java
+12
-5
No files found.
src/main/java/com/edgec/browserbackend/account/utils/AccountServicePool.java
View file @
d5b01f29
...
...
@@ -8,13 +8,16 @@ public class AccountServicePool {
private
static
final
int
POOL_COUNT
=
10
;
public
static
final
ExecutorService
taskPool
=
Executors
.
newFixedThreadPool
(
POOL_COUNT
,
new
ThreadFactory
()
{
public
static
final
ExecutorService
taskPool
=
Executors
.
newFixedThreadPool
(
POOL_COUNT
,
new
ThreadFactory
()
{
int
count
=
1
;
@Override
public
Thread
newThread
(
Runnable
runnable
)
{
return
new
Thread
(
runnable
,
"account-service-pool"
+
count
++);
}
});
}
);
}
src/main/java/com/edgec/browserbackend/auth/config/OAuthResponseExceptionTranslator.java
View file @
d5b01f29
...
...
@@ -36,8 +36,7 @@ public class OAuthResponseExceptionTranslator extends DefaultWebResponseExceptio
headers
.
set
(
"WWW-Authenticate"
,
String
.
format
(
"%s %s"
,
OAuth2AccessToken
.
BEARER_TYPE
,
e
.
getSummary
()));
}
ResponseEntity
<
OAuth2Exception
>
response
=
new
ResponseEntity
<
OAuth2Exception
>(
ex
,
headers
,
HttpStatus
.
valueOf
(
status
));
ResponseEntity
<
OAuth2Exception
>
response
=
new
ResponseEntity
<
OAuth2Exception
>(
ex
,
headers
,
HttpStatus
.
valueOf
(
status
));
return
response
;
}
...
...
src/main/java/com/edgec/browserbackend/auth/config/ResourceServerConfiguration.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
auth
.
config
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.security.config.annotation.web.builders.HttpSecurity
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer
;
...
...
@@ -13,14 +9,12 @@ import org.springframework.security.oauth2.config.annotation.web.configuration.R
@EnableResourceServer
public
class
ResourceServerConfiguration
extends
ResourceServerConfigurerAdapter
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
ResourceServerConfiguration
.
class
);
@Override
public
void
configure
(
HttpSecurity
http
)
throws
Exception
{
http
.
authorizeRequests
()
.
antMatchers
(
"/oauth/**"
).
permitAll
()
.
antMatchers
(
"/shop/**"
,
"/ip/**"
,
"/group/**"
,
"/0xadministrator/**"
,
"/user/**"
,
"/history/**"
).
authenticated
()
.
antMatchers
(
"/shop/**"
,
"/ip/**"
,
"/group/**"
,
"/0xadministrator/**"
,
"/user/**"
,
"/history/**"
).
authenticated
()
.
and
()
//关闭跨站请求防护
.
csrf
().
disable
();
...
...
src/main/java/com/edgec/browserbackend/auth/controller/AuthErrorHandler.java
View file @
d5b01f29
...
...
@@ -16,6 +16,7 @@ import org.springframework.web.bind.annotation.ExceptionHandler;
import
org.springframework.web.context.request.WebRequest
;
import
org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler
;
@Deprecated
@ControllerAdvice
public
class
AuthErrorHandler
extends
ResponseEntityExceptionHandler
{
...
...
src/main/java/com/edgec/browserbackend/auth/domain/mongo/MongoOAuth2AccessToken.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
auth
.
domain
.
mongo
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.annotation.PersistenceConstructor
;
import
org.springframework.data.mongodb.core.mapping.Document
;
...
...
@@ -8,6 +11,9 @@ import java.time.Instant;
import
java.util.Arrays
;
import
java.util.Objects
;
@NoArgsConstructor
@Getter
@Setter
@Document
public
class
MongoOAuth2AccessToken
{
...
...
@@ -21,8 +27,6 @@ public class MongoOAuth2AccessToken {
private
String
refreshToken
;
private
long
createdAt
;
public
MongoOAuth2AccessToken
()
{
}
@PersistenceConstructor
public
MongoOAuth2AccessToken
(
final
String
tokenId
,
...
...
@@ -42,33 +46,6 @@ public class MongoOAuth2AccessToken {
this
.
createdAt
=
Instant
.
now
().
toEpochMilli
();
}
public
String
getTokenId
()
{
return
tokenId
;
}
public
byte
[]
getToken
()
{
return
token
;
}
public
String
getAuthenticationId
()
{
return
authenticationId
;
}
public
String
getUsername
()
{
return
username
;
}
public
String
getClientId
()
{
return
clientId
;
}
public
byte
[]
getAuthentication
()
{
return
authentication
;
}
public
String
getRefreshToken
()
{
return
refreshToken
;
}
@Override
public
int
hashCode
()
{
...
...
@@ -100,11 +77,4 @@ public class MongoOAuth2AccessToken {
'}'
;
}
public
long
getCreatedAt
()
{
return
createdAt
;
}
public
void
setCreatedAt
(
long
createdAt
)
{
this
.
createdAt
=
createdAt
;
}
}
src/main/java/com/edgec/browserbackend/auth/domain/mongo/MongoOAuth2RefreshToken.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
auth
.
domain
.
mongo
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
org.apache.commons.lang3.builder.EqualsBuilder
;
import
org.apache.commons.lang3.builder.HashCodeBuilder
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
...
...
@@ -9,6 +12,9 @@ import org.springframework.data.mongodb.core.mapping.Document;
import
java.time.Instant
;
@Getter
@Setter
@NoArgsConstructor
@Document
public
class
MongoOAuth2RefreshToken
{
...
...
@@ -18,8 +24,6 @@ public class MongoOAuth2RefreshToken {
private
byte
[]
authentication
;
private
long
createdAt
;
public
MongoOAuth2RefreshToken
()
{
}
@PersistenceConstructor
public
MongoOAuth2RefreshToken
(
final
String
tokenId
,
...
...
@@ -31,18 +35,6 @@ public class MongoOAuth2RefreshToken {
this
.
createdAt
=
Instant
.
now
().
toEpochMilli
();
}
public
String
getTokenId
()
{
return
tokenId
;
}
public
byte
[]
getToken
()
{
return
token
;
}
public
byte
[]
getAuthentication
()
{
return
authentication
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
...
...
@@ -75,12 +67,4 @@ public class MongoOAuth2RefreshToken {
.
append
(
"authentication"
,
authentication
)
.
toString
();
}
public
long
getCreatedAt
()
{
return
createdAt
;
}
public
void
setCreatedAt
(
long
createdAt
)
{
this
.
createdAt
=
createdAt
;
}
}
src/main/java/com/edgec/browserbackend/browser/controller/IpControlloer.java
View file @
d5b01f29
...
...
@@ -27,6 +27,9 @@ public class IpControlloer {
@Autowired
private
IpResourceService
ipResourceService
;
/**
* 购买IP资源
*/
@RequestMapping
(
value
=
"/buy"
,
method
=
RequestMethod
.
POST
)
public
ResultDto
buyIp
(
Principal
principal
,
@RequestBody
IpResourceRequestDto
ipResourceRequestDto
)
{
ResultDto
resultDto
=
new
ResultDto
();
...
...
@@ -72,6 +75,9 @@ public class IpControlloer {
return
resultDto
;
}
/**
* 删除指定IP资源
*/
@RequestMapping
(
value
=
"/del"
,
method
=
RequestMethod
.
POST
)
public
ResultDto
deleteIp
(
Principal
principal
,
@RequestBody
IpResourceRequestDto
ipResourceRequestDto
)
{
ResultDto
resultDto
=
new
ResultDto
();
...
...
src/main/java/com/edgec/browserbackend/browser/domain/BindHistory.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
java.io.Serializable
;
import
java.util.StringTokenizer
;
import
lombok.Data
;
@Data
public
class
BindHistory
{
private
String
shopName
;
private
String
ip
;
private
String
platform
;
private
String
unbindTime
;
public
BindHistory
(){
}
public
String
getShopName
()
{
return
shopName
;
}
public
void
setShopName
(
String
shopName
)
{
this
.
shopName
=
shopName
;
}
public
String
getIp
()
{
return
ip
;
}
public
void
setPlatform
(
String
platform
)
{
this
.
platform
=
platform
;
}
public
String
getPlatform
()
{
return
platform
;
}
public
void
setIp
(
String
ip
)
{
this
.
ip
=
ip
;
}
public
String
getUnbindTime
()
{
return
unbindTime
;
}
public
void
setUnbindTime
(
String
unbindTime
)
{
this
.
unbindTime
=
unbindTime
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/Group.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
org.apache.commons.lang3.StringUtils
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
org.springframework.util.StringUtils
;
import
java.util.List
;
@Getter
@Setter
@Document
(
collection
=
"groups"
)
public
class
Group
{
/**
* 组 id
*/
@Id
private
String
id
;
/**
* 组名
*/
private
String
name
;
/**
* 组创建者
*/
private
String
owner
;
/**
* 组详情
*/
private
String
details
;
public
void
of
(
Group
group
){
if
(
StringUtils
.
isNotBlank
(
group
.
getId
()))
public
void
of
(
Group
group
)
{
if
(
!
StringUtils
.
isEmpty
(
group
.
getId
()))
{
this
.
setId
(
group
.
getId
());
if
(
StringUtils
.
isNotBlank
(
group
.
getOwner
()))
this
.
setOwner
(
group
.
getOwner
());
if
(
StringUtils
.
isNotBlank
(
group
.
getDetails
()))
this
.
setDetails
(
group
.
getDetails
());
if
(
StringUtils
.
isNotBlank
(
group
.
getName
()))
this
.
setName
(
group
.
getName
());
}
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
public
String
getOwner
()
{
return
owner
;
}
public
void
setOwner
(
String
owner
)
{
this
.
owner
=
owner
;
}
public
String
getName
()
{
return
name
;
if
(!
StringUtils
.
isEmpty
(
group
.
getOwner
()))
{
this
.
setOwner
(
group
.
getOwner
());
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
if
(!
StringUtils
.
isEmpty
(
group
.
getDetails
())
)
{
this
.
setDetails
(
group
.
getDetails
())
;
}
public
String
getDetails
(
)
{
return
details
;
if
(!
StringUtils
.
isEmpty
(
group
.
getName
())
)
{
this
.
setName
(
group
.
getName
())
;
}
public
void
setDetails
(
String
details
)
{
this
.
details
=
details
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/IpCountRecord.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
lombok.Data
;
import
org.springframework.data.mongodb.core.mapping.Document
;
@Data
@Document
(
collection
=
"ipcountrecord"
)
public
class
IpCountRecord
{
private
String
username
;
private
long
timestamp
;
private
long
ip_using
;
private
long
ip_all
;
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
long
getIp_all
()
{
return
ip_all
;
}
public
void
setIp_all
(
long
ip_all
)
{
this
.
ip_all
=
ip_all
;
}
public
long
getIp_using
()
{
return
ip_using
;
}
private
String
username
;
public
void
setIp_using
(
long
ip_using
)
{
this
.
ip_using
=
ip_using
;
}
private
long
timestamp
;
public
long
getTimestamp
()
{
return
timestamp
;
}
private
long
ip_using
;
public
void
setTimestamp
(
long
timestamp
)
{
this
.
timestamp
=
timestamp
;
}
private
long
ip_all
;
}
src/main/java/com/edgec/browserbackend/browser/domain/IpOptions.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
...
...
@@ -11,6 +13,9 @@ import java.util.Map;
* @Author jason
* @CreateTime 2020/3/12 10:30 上午
**/
@Getter
@Setter
@Document
(
"ipOptions"
)
public
class
IpOptions
{
...
...
@@ -25,35 +30,5 @@ public class IpOptions {
private
List
<
String
>
ipDurations
;
public
List
<
String
>
getIpDurations
()
{
return
ipDurations
;
}
public
void
setIpDurations
(
List
<
String
>
ipDurations
)
{
this
.
ipDurations
=
ipDurations
;
}
public
Map
<
String
,
List
<
String
>>
getIpPlatForm
()
{
return
ipPlatForm
;
}
public
void
setIpPlatForm
(
Map
<
String
,
List
<
String
>>
ipPlatForm
)
{
this
.
ipPlatForm
=
ipPlatForm
;
}
public
Map
<
String
,
List
<
String
>>
getIpRegion
()
{
return
ipRegion
;
}
public
void
setIpRegion
(
Map
<
String
,
List
<
String
>>
ipRegion
)
{
this
.
ipRegion
=
ipRegion
;
}
public
Map
<
String
,
Map
<
String
,
List
<
String
>>>
getSupportedPlatForm
()
{
return
supportedPlatForm
;
}
public
void
setSupportedPlatForm
(
Map
<
String
,
Map
<
String
,
List
<
String
>>>
supportedPlatForm
)
{
this
.
supportedPlatForm
=
supportedPlatForm
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/IpResource.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
...
...
@@ -9,6 +12,9 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Objects
;
@Getter
@Setter
@NoArgsConstructor
@Document
(
collection
=
"ipresource"
)
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
public
class
IpResource
implements
Serializable
{
...
...
@@ -53,270 +59,14 @@ public class IpResource implements Serializable {
private
String
unit
;
private
int
period
;
public
IpResource
()
{
}
public
String
getDetails
()
{
return
details
;
}
public
void
setDetails
(
String
details
)
{
this
.
details
=
details
;
}
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
public
String
getRegion
()
{
return
region
;
}
public
void
setRegion
(
String
region
)
{
this
.
region
=
region
;
}
public
String
getRegionCn
()
{
return
regionCn
;
}
public
void
setRegionCn
(
String
regionCn
)
{
this
.
regionCn
=
regionCn
;
}
public
int
getStatus
()
{
return
status
;
}
public
void
setStatus
(
int
status
)
{
this
.
status
=
status
;
}
public
IpType
getIpType
()
{
return
ipType
;
}
public
void
setIpType
(
IpType
ipType
)
{
this
.
ipType
=
ipType
;
}
public
List
<
BindHistory
>
getBindHistory
()
{
return
bindHistory
;
}
public
void
setBindHistory
(
List
<
BindHistory
>
bindHistory
)
{
this
.
bindHistory
=
bindHistory
;
}
public
long
getPurchasedTime
()
{
return
purchasedTime
;
}
public
void
setPurchasedTime
(
long
purchasedTime
)
{
this
.
purchasedTime
=
purchasedTime
;
}
public
long
getValidTime
()
{
return
validTime
;
}
public
void
setValidTime
(
long
validTime
)
{
this
.
validTime
=
validTime
;
}
public
Vendor
getVendor
()
{
return
vendor
;
}
public
void
setVendor
(
Vendor
vendor
)
{
this
.
vendor
=
vendor
;
}
public
boolean
isDeleted
()
{
return
isDeleted
;
}
public
void
setDeleted
(
boolean
deleted
)
{
isDeleted
=
deleted
;
}
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
List
<
String
>
getPort
()
{
return
port
;
}
public
void
setPort
(
List
<
String
>
port
)
{
this
.
port
=
port
;
}
public
String
getAddr
()
{
return
addr
;
}
public
void
setAddr
(
String
addr
)
{
this
.
addr
=
addr
;
}
public
String
getUserParent
()
{
return
userParent
;
}
public
void
setUserParent
(
String
userParent
)
{
this
.
userParent
=
userParent
;
}
public
List
<
String
>
getProtocol
()
{
return
protocol
;
}
public
void
setProtocol
(
List
<
String
>
protocol
)
{
this
.
protocol
=
protocol
;
}
public
String
getPassword
()
{
return
password
;
}
public
void
setPassword
(
String
password
)
{
this
.
password
=
password
;
}
public
String
getOwner
()
{
return
owner
;
}
public
void
setOwner
(
String
owner
)
{
this
.
owner
=
owner
;
}
public
boolean
isLocked
()
{
return
isLocked
;
}
public
void
setLocked
(
boolean
locked
)
{
isLocked
=
locked
;
}
public
long
getLockTimestamp
()
{
return
lockTimestamp
;
}
public
void
setLockTimestamp
(
long
lockTimestamp
)
{
this
.
lockTimestamp
=
lockTimestamp
;
}
public
String
getUnit
()
{
return
unit
;
}
public
void
setUnit
(
String
unit
)
{
this
.
unit
=
unit
;
}
public
int
getPeriod
()
{
return
period
;
}
public
void
setPeriod
(
int
period
)
{
this
.
period
=
period
;
}
public
double
getPrice
()
{
return
price
;
}
public
void
setPrice
(
double
price
)
{
this
.
price
=
price
;
}
public
List
<
String
>
getShopIds
()
{
return
shopIds
;
}
public
void
setShopIds
(
List
<
String
>
shopIds
)
{
this
.
shopIds
=
shopIds
;
}
public
String
getVendorCn
()
{
return
vendorCn
;
}
public
void
setVendorCn
(
String
vendorCn
)
{
this
.
vendorCn
=
vendorCn
;
}
public
String
getProxyPassword
()
{
return
proxyPassword
;
}
public
void
setProxyPassword
(
String
proxyPassword
)
{
this
.
proxyPassword
=
proxyPassword
;
}
public
String
getProxyUsername
()
{
return
proxyUsername
;
}
public
void
setProxyUsername
(
String
proxyUsername
)
{
this
.
proxyUsername
=
proxyUsername
;
}
public
boolean
isSpecialLine
()
{
return
specialLine
;
}
public
void
setSpecialLine
(
boolean
specialLine
)
{
this
.
specialLine
=
specialLine
;
}
public
long
getHealthLockTimestamp
()
{
return
healthLockTimestamp
;
}
public
void
setHealthLockTimestamp
(
long
healthLockTimestamp
)
{
this
.
healthLockTimestamp
=
healthLockTimestamp
;
}
public
boolean
isUsingSpecialLine
()
{
return
usingSpecialLine
;
}
public
void
setUsingSpecialLine
(
boolean
usingSpecialLine
)
{
this
.
usingSpecialLine
=
usingSpecialLine
;
}
public
boolean
isBind
()
{
return
bind
;
}
public
void
setBind
(
boolean
bind
)
{
this
.
bind
=
bind
;
}
public
String
getShopId
()
{
return
shopId
;
}
public
void
setShopId
(
String
shopId
)
{
this
.
shopId
=
shopId
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(!(
o
instanceof
IpResource
))
return
false
;
if
(
this
==
o
)
{
return
true
;
}
if
(!(
o
instanceof
IpResource
))
{
return
false
;
}
IpResource
that
=
(
IpResource
)
o
;
return
Objects
.
equals
(
getId
(),
that
.
getId
());
}
...
...
src/main/java/com/edgec/browserbackend/browser/domain/IpSummary.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
public
class
IpSummary
{
private
int
total
;
private
int
unbind
;
private
int
willExpire
;
private
int
expired
;
public
int
getExpired
()
{
return
expired
;
}
import
lombok.Data
;
public
void
setExpired
(
int
expired
)
{
this
.
expired
=
expired
;
}
public
int
getTotal
()
{
return
total
;
}
@Data
public
class
IpSummary
{
public
void
setTotal
(
int
total
)
{
this
.
total
=
total
;
}
/**
* ip 总数
*/
private
int
total
;
public
int
getUnbind
()
{
return
unbind
;
}
/**
* 未绑定 ip 数
*/
private
int
unbind
;
public
void
setUnbind
(
int
unbind
)
{
this
.
unbind
=
unbind
;
}
/**
* 将要过期的 ip 数
*/
private
int
willExpire
;
public
int
getWillExpire
()
{
return
willExpire
;
}
/**
* 已过期的 ip 数
*/
private
int
expired
;
public
void
setWillExpire
(
int
willExpire
)
{
this
.
willExpire
=
willExpire
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/IpType.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
public
enum
IpType
{
/**
* 本地ip,即 ip 地址没有设置任何代理
*/
LOCAL
,
/**
* ip代理
*/
VENDOR
,
/**
* 自有ip,即该ip不是从我们系统购买的
*/
OWN
;
}
src/main/java/com/edgec/browserbackend/browser/domain/OperationHistory.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
com.edgec.browserbackend.browser.dto.OperationHistoryDto
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
...
...
@@ -8,6 +11,9 @@ import java.time.LocalDateTime;
import
java.time.ZoneOffset
;
import
java.time.format.DateTimeFormatter
;
@Getter
@Setter
@NoArgsConstructor
@Document
(
collection
=
"operationhistory"
)
public
class
OperationHistory
{
@Id
...
...
@@ -20,89 +26,31 @@ public class OperationHistory {
private
long
operationTime
;
private
String
administrator
;
public
OperationHistory
()
{
}
public
OperationHistory
(
OperationHistoryDto
operationHistoryDto
)
{
if
(
operationHistoryDto
.
getAccount
()
!=
null
)
if
(
operationHistoryDto
.
getAccount
()
!=
null
)
{
this
.
username
=
operationHistoryDto
.
getAccount
();
if
(
operationHistoryDto
.
getNickname
()
!=
null
)
this
.
nickname
=
operationHistoryDto
.
getNickname
();
if
(
operationHistoryDto
.
getLoginIp
()
!=
null
)
this
.
loginIp
=
operationHistoryDto
.
getLoginIp
();
if
(
operationHistoryDto
.
getLoginPlace
()
!=
null
)
this
.
loginPlace
=
operationHistoryDto
.
getLoginPlace
();
if
(
operationHistoryDto
.
getOperation
()
!=
null
)
this
.
operation
=
operationHistoryDto
.
getOperation
();
if
(
operationHistoryDto
.
getOperationTime
()
!=
null
)
{
DateTimeFormatter
format
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
);
LocalDateTime
localDateTime
=
LocalDateTime
.
parse
(
operationHistoryDto
.
getOperationTime
(),
format
);
this
.
operationTime
=
localDateTime
.
toInstant
(
ZoneOffset
.
UTC
).
toEpochMilli
();
}
}
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
long
getOperationTime
()
{
return
operationTime
;
}
public
void
setOperationTime
(
long
operationTime
)
{
this
.
operationTime
=
operationTime
;
}
public
String
getLoginIp
()
{
return
loginIp
;
}
public
void
setLoginIp
(
String
loginIp
)
{
this
.
loginIp
=
loginIp
;
}
public
String
getLoginPlace
()
{
return
loginPlace
;
}
public
void
setLoginPlace
(
String
loginPlace
)
{
this
.
loginPlace
=
loginPlace
;
}
public
String
getNickname
()
{
return
nickname
;
if
(
operationHistoryDto
.
getNickname
()
!=
null
)
{
this
.
nickname
=
operationHistoryDto
.
getNickname
();
}
public
void
setNickname
(
String
nickname
)
{
this
.
nickname
=
nickname
;
if
(
operationHistoryDto
.
getLoginIp
()
!=
null
)
{
this
.
loginIp
=
operationHistoryDto
.
getLoginIp
()
;
}
public
String
getOperation
(
)
{
return
operation
;
if
(
operationHistoryDto
.
getLoginPlace
()
!=
null
)
{
this
.
loginPlace
=
operationHistoryDto
.
getLoginPlace
()
;
}
public
void
setOperation
(
String
operation
)
{
this
.
operation
=
operation
;
if
(
operationHistoryDto
.
getOperation
()
!=
null
)
{
this
.
operation
=
operationHistoryDto
.
getOperation
()
;
}
public
String
getAdministrator
()
{
return
administrator
;
if
(
operationHistoryDto
.
getOperationTime
()
!=
null
)
{
DateTimeFormatter
format
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
);
LocalDateTime
localDateTime
=
LocalDateTime
.
parse
(
operationHistoryDto
.
getOperationTime
(),
format
);
this
.
operationTime
=
localDateTime
.
toInstant
(
ZoneOffset
.
UTC
).
toEpochMilli
();
}
public
void
setAdministrator
(
String
administrator
)
{
this
.
administrator
=
administrator
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/PlatformOptions.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
org.springframework.data.annotation.Id
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
java.util.List
;
import
java.util.Map
;
/**
...
...
@@ -11,26 +11,13 @@ import java.util.Map;
* @Author jason
* @CreateTime 2020/3/12 11:44 上午
**/
@Getter
@Setter
@Document
(
"platformoptions"
)
public
class
PlatformOptions
{
private
String
platform
;
private
Map
<
String
,
String
>
subPlatform
;
public
Map
<
String
,
String
>
getSubPlatform
()
{
return
subPlatform
;
}
public
void
setPlatform
(
String
platform
)
{
this
.
platform
=
platform
;
}
public
String
getPlatform
()
{
return
platform
;
}
public
void
setSubPlatform
(
Map
<
String
,
String
>
subPlatform
)
{
this
.
subPlatform
=
subPlatform
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/ProxyConfig.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.springframework.data.mongodb.core.mapping.Document
;
@Getter
@Setter
@Document
(
collection
=
"proxyconfig"
)
public
class
ProxyConfig
{
private
long
timestamp
;
private
String
configFileId
;
public
long
getTimestamp
()
{
return
timestamp
;
}
public
void
setConfigFileId
(
String
configFileId
)
{
this
.
configFileId
=
configFileId
;
}
public
String
getConfigFileId
()
{
return
configFileId
;
}
public
void
setTimestamp
(
long
timestamp
)
{
this
.
timestamp
=
timestamp
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/Shop.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
com.alibaba.fastjson.JSONObject
;
import
com.edgec.browserbackend.browser.dto.ShopResultDto
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
@Getter
@Setter
@NoArgsConstructor
@Document
(
collection
=
"shop"
)
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
public
class
Shop
{
/**
* 商铺 id
*/
@Id
private
String
shopId
;
/**
* 商铺名称
*/
private
String
shopName
;
/**
* 商铺拥有者,谁创建谁拥有
*/
private
String
owner
;
/**
* 商铺 id
*/
private
TransferStatus
transferStatus
;
/**
* 商铺url
*/
private
String
shopUrl
;
/**
* 商铺所在的平台
*/
private
String
shopPlatform
;
/**
* 商铺账号
*/
private
String
shopAccount
;
/**
* 商铺密码
*/
private
String
shopPassword
;
/**
* 商铺平台(操作系统 + 浏览器版本)
*/
private
String
shopUA
;
/**
* 商铺的 cookie 信息
*/
private
String
shopCookie
;
/**
* 商铺创建时间
*/
private
long
createTime
;
public
Shop
(){
/**
* 创建店铺使用
*/
public
Shop
of
(
ShopResultDto
shopResultDto
)
{
if
(
shopResultDto
.
getShopUrl
()
!=
null
)
{
this
.
setShopUrl
(
shopResultDto
.
getShopUrl
());
}
if
(
shopResultDto
.
getOwner
()
!=
null
)
{
this
.
setOwner
(
shopResultDto
.
getOwner
());
}
if
(
shopResultDto
.
getShopPlatform
()
!=
null
)
{
this
.
setShopPlatform
(
shopResultDto
.
getShopPlatform
());
}
if
(
shopResultDto
.
getShopName
()
!=
null
)
{
this
.
setShopName
(
shopResultDto
.
getShopName
());
}
if
(
shopResultDto
.
getTransferStatus
()
!=
null
)
{
this
.
setTransferStatus
(
shopResultDto
.
getTransferStatus
());
}
if
(
shopResultDto
.
getShopAccount
()
!=
null
)
{
this
.
setShopAccount
(
shopResultDto
.
getShopAccount
());
}
if
(
shopResultDto
.
getShopPassword
()
!=
null
)
{
this
.
setShopPassword
(
shopResultDto
.
getShopPassword
());
}
if
(
shopResultDto
.
getShopUA
()
!=
null
)
{
this
.
setShopUA
(
shopResultDto
.
getShopUA
());
}
if
(
shopResultDto
.
getShopCookie
()
!=
null
)
{
this
.
setShopCookie
(
shopResultDto
.
getShopCookie
());
}
if
(
shopResultDto
.
getCreateTime
()
!=
0
)
{
this
.
setCreateTime
(
shopResultDto
.
getCreateTime
());
}
//创建店铺使用
public
Shop
of
(
ShopResultDto
shop
)
{
if
(
shop
.
getShopUrl
()
!=
null
)
this
.
setShopUrl
(
shop
.
getShopUrl
());
if
(
shop
.
getOwner
()
!=
null
)
this
.
setOwner
(
shop
.
getOwner
());
if
(
shop
.
getShopPlatform
()
!=
null
)
this
.
setShopPlatform
(
shop
.
getShopPlatform
());
if
(
shop
.
getShopName
()
!=
null
)
this
.
setShopName
(
shop
.
getShopName
());
if
(
shop
.
getTransferStatus
()
!=
null
)
this
.
setTransferStatus
(
shop
.
getTransferStatus
());
if
(
shop
.
getShopAccount
()
!=
null
)
this
.
setShopAccount
(
shop
.
getShopAccount
());
if
(
shop
.
getShopPassword
()
!=
null
)
this
.
setShopPassword
(
shop
.
getShopPassword
());
if
(
shop
.
getShopUA
()
!=
null
)
this
.
setShopUA
(
shop
.
getShopUA
());
if
(
shop
.
getShopCookie
()
!=
null
)
this
.
setShopCookie
(
shop
.
getShopCookie
());
if
(
shop
.
getCreateTime
()
!=
0
)
this
.
setCreateTime
(
shop
.
getCreateTime
());
return
this
;
}
...
...
@@ -83,95 +139,7 @@ public class Shop {
this
.
setShopCookie
(
shop
.
getShopCookie
());
if
(
shop
.
getCreateTime
()
!=
0
)
this
.
setCreateTime
(
shop
.
getCreateTime
());
return
this
;
}
public
String
getShopId
()
{
return
shopId
;
}
public
String
getShopUrl
()
{
return
shopUrl
;
}
public
String
getOwner
()
{
return
owner
;
}
public
String
getShopPlatform
()
{
return
shopPlatform
;
}
public
String
getShopName
()
{
return
shopName
;
}
public
TransferStatus
getTransferStatus
()
{
return
transferStatus
;
}
public
void
setShopId
(
String
shopId
)
{
this
.
shopId
=
shopId
;
}
public
void
setShopUrl
(
String
shopUrl
)
{
this
.
shopUrl
=
shopUrl
;
}
public
void
setOwner
(
String
owner
)
{
this
.
owner
=
owner
;
}
public
void
setShopPlatform
(
String
shopPlatform
)
{
this
.
shopPlatform
=
shopPlatform
;
}
public
void
setShopName
(
String
shopName
)
{
this
.
shopName
=
shopName
;
}
public
void
setTransferStatus
(
TransferStatus
transferStatus
)
{
this
.
transferStatus
=
transferStatus
;
}
public
String
getShopAccount
()
{
return
shopAccount
;
}
public
void
setShopAccount
(
String
shopAccount
)
{
this
.
shopAccount
=
shopAccount
;
}
public
String
getShopPassword
()
{
return
shopPassword
;
}
public
void
setShopPassword
(
String
shopPassword
)
{
this
.
shopPassword
=
shopPassword
;
}
public
String
getShopCookie
()
{
return
shopCookie
;
}
public
void
setShopCookie
(
String
shopCookie
)
{
this
.
shopCookie
=
shopCookie
;
}
public
String
getShopUA
()
{
return
shopUA
;
}
public
void
setShopUA
(
String
shopUA
)
{
this
.
shopUA
=
shopUA
;
}
public
long
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
long
createTime
)
{
this
.
createTime
=
createTime
;
return
this
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/ShopSummary.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
public
class
ShopSummary
{
private
int
total
;
private
int
unbind
;
private
int
willExpire
;
private
int
expired
;
public
int
getExpired
()
{
return
expired
;
}
public
void
setExpired
(
int
expired
)
{
this
.
expired
=
expired
;
}
import
lombok.Getter
;
import
lombok.Setter
;
public
int
getTotal
()
{
return
total
;
}
public
void
setTotal
(
int
total
)
{
this
.
total
=
total
;
}
@Getter
@Setter
public
class
ShopSummary
{
public
int
getUnbind
()
{
return
unbind
;
}
/**
* 商铺 总数
*/
private
int
total
;
public
void
setUnbind
(
int
unbind
)
{
this
.
unbind
=
unbind
;
}
/**
* 未绑定商铺数
*/
private
int
unbind
;
public
int
getWillExpire
()
{
return
willExpire
;
}
/**
* 即将过期商铺数
*/
private
int
willExpire
;
public
void
setWillExpire
(
int
willExpire
)
{
this
.
willExpire
=
willExpire
;
}
/**
* 已过期商铺数
*/
private
int
expired
;
}
src/main/java/com/edgec/browserbackend/browser/domain/SpecialLine.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
java.util.List
;
@Getter
@Setter
@Document
(
"specialline"
)
public
class
SpecialLine
{
/**
* 专线 id
*/
@Id
private
String
Id
;
/**
* 专线 ip
*/
private
String
ip
;
private
List
<
String
>
proxyProtocol
;
//专线使用的协议
private
List
<
String
>
proxyPort
;
//专线使用的端口
private
String
username
;
//专线代理服务器用户名
private
String
password
;
//专线代理服务器密码
public
String
getIp
()
{
return
ip
;
}
public
void
setIp
(
String
ip
)
{
this
.
ip
=
ip
;
}
public
String
getId
()
{
return
Id
;
}
public
void
setId
(
String
id
)
{
Id
=
id
;
}
public
List
<
String
>
getProxyProtocol
()
{
return
proxyProtocol
;
}
public
void
setProxyProtocol
(
List
<
String
>
proxyProtocol
)
{
this
.
proxyProtocol
=
proxyProtocol
;
}
public
List
<
String
>
getProxyPort
()
{
return
proxyPort
;
}
public
void
setProxyPort
(
List
<
String
>
proxyPort
)
{
this
.
proxyPort
=
proxyPort
;
}
/**
* 专线使用的协议
*/
private
List
<
String
>
proxyProtocol
;
public
String
getPassword
()
{
return
password
;
}
/**
* 专线使用的端口
*/
private
List
<
String
>
proxyPort
;
public
void
setPassword
(
String
password
)
{
this
.
password
=
password
;
}
/**
* 专线代理服务器用户名
*/
private
String
username
;
public
String
getUsername
()
{
return
username
;
}
/**
* 专线代理服务器密码
*/
private
String
password
;
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/UserShop.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
java.util.List
;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Document
(
collection
=
"usershop"
)
public
class
UserShop
{
...
...
@@ -17,56 +23,13 @@ public class UserShop {
private
String
groupId
;
public
UserShop
(){
}
public
UserShop
(
String
username
,
String
shopId
)
{
this
.
username
=
username
;
this
.
shopId
=
shopId
;
}
public
UserShop
(
String
username
,
String
shopId
,
String
groupId
)
{
this
.
username
=
username
;
this
.
shopId
=
shopId
;
this
.
groupId
=
groupId
;
}
public
UserShop
(
String
username
,
String
shopId
,
String
groupId
,
String
ipId
)
{
this
.
username
=
username
;
this
.
shopId
=
shopId
;
this
.
groupId
=
groupId
;
}
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
String
getShopId
()
{
return
shopId
;
}
public
void
setShopId
(
String
shopId
)
{
this
.
shopId
=
shopId
;
}
public
String
getGroupId
()
{
return
groupId
;
}
public
void
setGroupId
(
String
groupId
)
{
this
(
username
,
shopId
);
this
.
groupId
=
groupId
;
}
}
src/main/java/com/edgec/browserbackend/browser/domain/Vendor.java
View file @
d5b01f29
...
...
@@ -4,13 +4,31 @@ package com.edgec.browserbackend.browser.domain;
* @Desc
* @Author jason
* @CreateTime 2020/3/12 4:01 下午
*
*
/
*/
public
enum
Vendor
{
aliyun
(
"阿里云"
),
JDCLOUD
(
"京东云"
),
aws
(
"亚马逊云"
),
awscn
(
"亚马逊中国"
),
tencent
(
"腾讯云"
),
local
(
"本地"
),
own
(
"自有"
);
/**
* 本平台提供的代理ip
*/
aliyun
(
"阿里云"
),
JDCLOUD
(
"京东云"
),
aws
(
"亚马逊云"
),
awscn
(
"亚马逊中国"
),
tencent
(
"腾讯云"
),
/**
* 本地ip,即 ip 地址没有设置任何代理
*/
local
(
"本地"
),
/**
* 用户自己已经拥有的代理ip
*/
own
(
"自有"
);
private
String
value
;
private
Vendor
(
String
value
)
{
Vendor
(
String
value
)
{
this
.
value
=
value
;
}
...
...
src/main/java/com/edgec/browserbackend/browser/dto/IpListRequestDto.java
View file @
d5b01f29
...
...
@@ -2,12 +2,14 @@ package com.edgec.browserbackend.browser.dto;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
java.util.ArrayList
;
import
java.util.List
;
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
public
class
IpListRequestDto
{
/**
* 1: 全部; 2: 即将过期 ; 3: 已过期; 4: 未绑定; 5: 已分配
*/
private
int
groupType
;
private
int
page
;
private
int
amount
;
private
IpFilterDto
filter
;
...
...
src/main/java/com/edgec/browserbackend/browser/service/Impl/IpResourceServiceImpl.java
View file @
d5b01f29
This diff is collapsed.
Click to expand it.
src/main/java/com/edgec/browserbackend/browser/service/Impl/ShopServiceImpl.java
View file @
d5b01f29
...
...
@@ -357,39 +357,25 @@ public class ShopServiceImpl implements ShopService {
throw
new
ClientRequestException
(
AccountErrorCode
.
NOPERMISSION
);
}
List
<
String
>
shopIds
=
new
ArrayList
<>();
// 根据 groupId 与 username 来查询 shopIds
List
<
String
>
allIds
=
null
;
if
(
"-1"
.
equals
(
groupId
))
{
if
(
shopFilterDto
.
getBindIp
()
==
0
)
{
// 获取当前用户下所有的商铺id
shopIds
=
userShopRepository
.
findByUsername
(
username
).
stream
()
.
map
(
UserShop:
:
getShopId
).
collect
(
Collectors
.
toList
());
}
else
if
(
shopFilterDto
.
getBindIp
()
==
1
)
{
List
<
String
>
allIds
=
userShopRepository
.
findByUsername
(
username
).
stream
()
allIds
=
userShopRepository
.
findByUsername
(
username
).
stream
()
.
map
(
UserShop:
:
getShopId
).
collect
(
Collectors
.
toList
());
shopIds
=
ipResourceRepository
.
findShopIdInList
(
allIds
,
false
).
stream
()
.
flatMap
((
x
->
x
.
getShopIds
().
stream
())).
collect
(
Collectors
.
toList
());
// 如果分组
}
else
{
List
<
String
>
allIds
=
userShopRepository
.
findByUsername
(
username
).
stream
()
allIds
=
userShopRepository
.
findByUsernameAndGroupId
(
username
,
groupId
).
stream
()
.
map
(
UserShop:
:
getShopId
).
collect
(
Collectors
.
toList
());
for
(
String
id
:
allIds
)
{
IpResource
ipResource
=
ipResourceRepository
.
findFirstByShopIdsIsAndIsDeleted
(
id
,
false
);
if
(
ipResource
==
null
)
{
shopIds
.
add
(
id
);
}
}
}
}
else
{
List
<
String
>
shopIds
=
null
;
if
(
shopFilterDto
.
getBindIp
()
==
0
)
{
shopIds
=
userShopRepository
.
findByUsernameAndGroupId
(
username
,
groupId
).
stream
().
map
(
UserShop:
:
getShopId
).
collect
(
Collectors
.
toList
());
shopIds
=
allIds
;
}
else
if
(
shopFilterDto
.
getBindIp
()
==
1
)
{
List
<
String
>
allIds
=
userShopRepository
.
findByUsernameAndGroupId
(
username
,
groupId
).
stream
()
.
map
(
UserShop:
:
getShopId
).
collect
(
Collectors
.
toList
());
shopIds
=
ipResourceRepository
.
findShopIdInList
(
allIds
,
false
).
stream
()
.
flatMap
((
x
->
x
.
getShopIds
().
stream
())).
collect
(
Collectors
.
toList
());
}
else
{
List
<
String
>
allIds
=
userShopRepository
.
findByUsernameAndGroupId
(
username
,
groupId
).
stream
()
.
map
(
UserShop:
:
getShopId
).
collect
(
Collectors
.
toList
());
for
(
String
id
:
allIds
)
{
IpResource
ipResource
=
ipResourceRepository
.
findFirstByShopIdsIsAndIsDeleted
(
id
,
false
);
if
(
ipResource
==
null
)
{
...
...
@@ -397,14 +383,11 @@ public class ShopServiceImpl implements ShopService {
}
}
}
}
if
(
amount
>
100
)
{
amount
=
100
;
}
amount
=
amount
>
100
?
100
:
amount
;
Pageable
pageable
=
PageRequest
.
of
(
pageNum
,
amount
);
Page
<
Shop
>
shops
;
// 根据商铺ids 与 过滤条件 得到商铺
if
(
StringUtils
.
isNotBlank
(
shopFilterDto
.
getIpRegion
()))
{
List
<
String
>
filter
=
ipResourceRepository
.
findShopIdInListAndRegionLike
(
shopIds
,
false
,
shopFilterDto
.
getIpRegion
())
.
stream
().
flatMap
((
x
->
x
.
getShopIds
().
stream
())).
collect
(
Collectors
.
toList
());
...
...
@@ -418,18 +401,21 @@ public class ShopServiceImpl implements ShopService {
}
ShopPageResultDto
<
ShopResultDto
>
shopPageResultDto
=
new
ShopPageResultDto
<>();
if
(
shops
==
null
||
shops
.
getNumberOfElements
()
<
1
)
{
return
shopPageResultDto
;
}
else
{
if
(
shops
!=
null
&&
shops
.
getNumberOfElements
()
>=
1
)
{
List
<
ShopResultDto
>
shopResultDtos
=
new
ArrayList
<>();
shops
.
getContent
().
stream
().
forEach
(
x
->
{
shops
.
getContent
().
stream
().
forEach
(
x
->
{
IpResource
ipResource
=
ipResourceRepository
.
findFirstByShopIdsIsAndIsDeleted
(
x
.
getShopId
(),
false
);
// 如果 ip资源非空 且 addr 也非空
if
(
ipResource
!=
null
&&
StringUtils
.
isNotBlank
(
ipResource
.
getAddr
()))
{
// 1. ip资源在未来七天内到期 且 ip 资源的状态不是 3(正在分配)、5(已失效)、6(未分配),则将 ip 资源设置为 2(即将过期)
if
(
ipResource
.
getValidTime
()
<=
Instant
.
now
().
plusSeconds
(
60
*
60
*
24
*
7
).
toEpochMilli
()
&&
ipResource
.
getValidTime
()
>
Instant
.
now
().
toEpochMilli
())
{
if
(
ipResource
.
getStatus
()
!=
5
&&
ipResource
.
getStatus
()
!=
3
&&
ipResource
.
getStatus
()
!=
6
)
{
ipResource
.
setStatus
(
2
);
ipResourceRepository
.
save
(
ipResource
);
}
// 2. ip资源在七天前到期,且 ip 资源的状态不是 3(正在分配)、6(未分配),则删除 ip 资源
}
else
if
(
ipResource
.
getValidTime
()
<=
Instant
.
now
().
minusSeconds
(
60
*
60
*
24
*
7
).
toEpochMilli
()
&&
ipResource
.
getStatus
()
!=
3
&&
ipResource
.
getStatus
()
!=
6
)
{
if
(
ipResource
.
getIpType
()
==
IpType
.
VENDOR
)
{
IpResourceRequestDto
ipResourceRequestDto1
=
new
IpResourceRequestDto
();
...
...
@@ -449,34 +435,28 @@ public class ShopServiceImpl implements ShopService {
}
}
return
;
// 3. ip资源到期,且 ip 资源的状态不是 3(正在分配)、6(未分配),则设置 ip 资源的状态为 1(已过期)
}
else
if
(
ipResource
.
getValidTime
()
<=
Instant
.
now
().
toEpochMilli
()
&&
ipResource
.
getStatus
()
!=
3
&&
ipResource
.
getStatus
()
!=
6
)
{
ipResource
.
setStatus
(
1
);
ipResourceRepository
.
save
(
ipResource
);
// 4. 其他
}
else
{
if
((
ipResource
.
getStatus
()
==
0
||
ipResource
.
getStatus
()
==
1
||
ipResource
.
getStatus
()
==
2
)
&&
ipResource
.
getVendor
()
!=
Vendor
.
local
)
{
ipResource
.
setStatus
(
0
);
ipResourceRepository
.
save
(
ipResource
);
}
else
if
(
ipResource
.
getIpType
().
equals
(
IpType
.
LOCAL
)
&&
(
ipResource
.
getStatus
()
==
1
||
ipResource
.
getStatus
()
==
2
)
&&
ipResource
.
getAddr
().
equals
(
"本地Ip未使用"
))
{
ipResource
.
setStatus
(
4
);
ipResourceRepository
.
save
(
ipResource
);
}
ipResourceRepository
.
save
(
ipResource
);
}
}
if
(
ipResource
==
null
)
{
ipResource
=
new
IpResource
();
}
String
group1
=
userShopRepository
.
findByUsernameAndShopId
(
username
,
x
.
getShopId
()).
getGroupId
();
ShopResultDto
shopResultDto
=
null
;
if
(
ipResource
.
isSpecialLine
())
{
SpecialLine
specialLine
=
specialLineRepository
.
findAll
().
get
(
0
);
shopResultDto
=
ShopResultDto
.
of
(
x
,
group1
,
new
IpResourceDto
(
ipResource
,
null
,
false
,
specialLine
));
}
else
{
shopResultDto
=
ShopResultDto
.
of
(
x
,
group1
,
new
IpResourceDto
(
ipResource
,
null
,
false
));
}
ShopResultDto
shopResultDto
=
getShopResultDto
(
username
,
x
,
ipResource
);
shopResultDtos
.
add
(
shopResultDto
);
});
}
);
Page
<
ShopResultDto
>
shopDtoPage
=
new
PageImpl
<>(
shopResultDtos
,
pageable
,
shopIds
.
size
());
shopPageResultDto
.
setShopList
(
shopDtoPage
.
getContent
());
...
...
@@ -485,8 +465,24 @@ public class ShopServiceImpl implements ShopService {
pageInfo
.
setTotalPages
(
shopDtoPage
.
getTotalPages
());
pageInfo
.
setTotalItems
(
shopIds
.
size
());
shopPageResultDto
.
setShopPage
(
pageInfo
);
}
return
shopPageResultDto
;
}
private
ShopResultDto
getShopResultDto
(
String
username
,
Shop
x
,
IpResource
ipResource
)
{
if
(
ipResource
==
null
)
{
ipResource
=
new
IpResource
();
}
String
group1
=
userShopRepository
.
findByUsernameAndShopId
(
username
,
x
.
getShopId
()).
getGroupId
();
ShopResultDto
shopResultDto
=
null
;
if
(
ipResource
.
isSpecialLine
())
{
SpecialLine
specialLine
=
specialLineRepository
.
findAll
().
get
(
0
);
shopResultDto
=
ShopResultDto
.
of
(
x
,
group1
,
new
IpResourceDto
(
ipResource
,
null
,
false
,
specialLine
));
}
else
{
shopResultDto
=
ShopResultDto
.
of
(
x
,
group1
,
new
IpResourceDto
(
ipResource
,
null
,
false
));
}
return
shopResultDto
;
}
@Override
...
...
src/main/java/com/edgec/browserbackend/browser/task/BrowserTask.java
View file @
d5b01f29
...
...
@@ -110,7 +110,9 @@ public class BrowserTask {
List
<
CompletableFuture
>
futureList
=
new
ArrayList
<>();
for
(
IpResource
ipResource
:
ipResources
)
{
long
start
=
System
.
currentTimeMillis
();
CompletableFuture
future
=
CompletableFuture
.
runAsync
(()
->
{
CompletableFuture
future
=
CompletableFuture
.
runAsync
(
()
->
{
if
(
ipResourceRepository
.
lockTask
(
ipResource
))
{
try
{
boolean
result
=
false
;
...
...
@@ -182,7 +184,10 @@ public class BrowserTask {
}
}
}
},
ThreadPoolUtils
.
buyIpTasksPool
);
},
ThreadPoolUtils
.
buyIpTasksPool
);
futureList
.
add
(
future
);
}
CompletableFuture
.
allOf
(
futureList
.
toArray
(
new
CompletableFuture
[
0
])).
join
();
...
...
@@ -195,7 +200,8 @@ public class BrowserTask {
List
<
IpResource
>
ipResources
=
ipResourceRepository
.
sampleTasks
(
3
,
time
);
for
(
IpResource
ipResource
:
ipResources
)
{
long
start
=
System
.
currentTimeMillis
();
CompletableFuture
.
runAsync
(()
->
{
CompletableFuture
.
runAsync
(
()
->
{
if
(
ipResourceRepository
.
lockTask
(
ipResource
))
{
try
{
log
.
error
(
"test"
);
...
...
@@ -226,7 +232,9 @@ public class BrowserTask {
}
}
}
},
ThreadPoolUtils
.
queryIpTasksPool
);
},
ThreadPoolUtils
.
queryIpTasksPool
);
}
}
...
...
@@ -310,7 +318,8 @@ public class BrowserTask {
public
void
countIp
()
{
List
<
Account
>
accounts
=
accountRepository
.
findAll
();
try
{
accounts
.
forEach
(
x
->
{
accounts
.
forEach
(
x
->
{
IpCountRecord
ipCountRecord
=
new
IpCountRecord
();
ipCountRecord
.
setUsername
(
x
.
getName
());
ipCountRecord
.
setTimestamp
(
Instant
.
now
().
toEpochMilli
());
...
...
@@ -319,7 +328,8 @@ public class BrowserTask {
ipCountRecord
.
setIp_all
(
ipcount_all
);
ipCountRecord
.
setIp_using
(
ipcount_using
);
ipCountRecordRepository
.
save
(
ipCountRecord
);
});
}
);
IpCountRecord
ipCountRecord
=
new
IpCountRecord
();
ipCountRecord
.
setUsername
(
"all"
);
ipCountRecord
.
setTimestamp
(
Instant
.
now
().
toEpochMilli
());
...
...
@@ -369,20 +379,5 @@ public class BrowserTask {
ResponseBody
responseBody
=
response
.
body
();
return
responseBody
.
string
();
}
}
public
static
void
main
(
String
[]
args
)
throws
IOException
{
List
<
QueryIpUrlList
>
queryIpUrlLists
=
new
ArrayList
<>();
queryIpUrlLists
.
add
(
new
QueryIpUrlList
(
"1"
,
"baidu"
));
queryIpUrlLists
.
add
(
new
QueryIpUrlList
(
"2"
,
"google"
));
for
(
int
i
=
0
;
i
<
10
;
i
++)
{
System
.
out
.
println
(
getNextUrl
(
queryIpUrlLists
,
i
).
getUrl
());
}
}
}
src/main/java/com/edgec/browserbackend/browser/task/PaymentTask.java
View file @
d5b01f29
...
...
@@ -29,7 +29,7 @@ public class PaymentTask {
@Scheduled
(
fixedDelay
=
60000
)
public
void
checkPayments
()
{
long
now
=
new
Date
().
getTime
();
long
now
=
System
.
currentTimeMillis
();
Date
date_5min
=
new
Date
(
now
-
5
*
60
*
1000
);
Date
date_10min
=
new
Date
(
now
-
10
*
60
*
1000
);
List
<
UserPayment
>
unfinishedPayments
=
userPaymentRepository
.
findAllByPaymentDateBetweenAndSucceed
(
...
...
src/main/java/com/edgec/browserbackend/common/commons/kafka/KafkaUtils.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
common
.
commons
.
kafka
;
@Deprecated
public
final
class
KafkaUtils
{
public
static
final
String
TOPIC_NAME_C3_MINIONS
=
"tp.minions.c3"
;
...
...
src/main/java/com/edgec/browserbackend/common/commons/utils/CommonStringUtils.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
common
.
commons
.
utils
;
@Deprecated
public
class
CommonStringUtils
{
public
static
int
getLongestCommonSubstring
(
String
a
,
String
b
)
{
...
...
@@ -10,16 +11,16 @@ public class CommonStringUtils {
int
[][]
dp
=
new
int
[
m
][
n
];
for
(
int
i
=
0
;
i
<
m
;
i
++)
{
for
(
int
j
=
0
;
j
<
n
;
j
++)
{
if
(
a
.
charAt
(
i
)
==
b
.
charAt
(
j
))
{
if
(
i
==
0
||
j
==
0
)
{
dp
[
i
][
j
]
=
1
;
}
else
{
dp
[
i
][
j
]
=
dp
[
i
-
1
][
j
-
1
]+
1
;
for
(
int
i
=
0
;
i
<
m
;
i
++)
{
for
(
int
j
=
0
;
j
<
n
;
j
++)
{
if
(
a
.
charAt
(
i
)
==
b
.
charAt
(
j
))
{
if
(
i
==
0
||
j
==
0
)
{
dp
[
i
][
j
]
=
1
;
}
else
{
dp
[
i
][
j
]
=
dp
[
i
-
1
][
j
-
1
]
+
1
;
}
if
(
max
<
dp
[
i
][
j
])
if
(
max
<
dp
[
i
][
j
])
max
=
dp
[
i
][
j
];
}
...
...
src/main/java/com/edgec/browserbackend/common/commons/utils/Pair.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
common
.
commons
.
utils
;
@Deprecated
public
final
class
Pair
<
S
,
T
>
{
private
S
first
;
...
...
src/main/java/com/edgec/browserbackend/common/commons/utils/PriorityThreadPoolExecutor.java
View file @
d5b01f29
...
...
@@ -3,6 +3,7 @@ package com.edgec.browserbackend.common.commons.utils;
import
java.util.Comparator
;
import
java.util.concurrent.*
;
@Deprecated
public
class
PriorityThreadPoolExecutor
extends
ThreadPoolExecutor
{
private
Comparator
comparator
;
...
...
src/main/java/com/edgec/browserbackend/common/commons/utils/RemoteShellExecutor.java
View file @
d5b01f29
...
...
@@ -9,16 +9,23 @@ import java.io.*;
import
java.nio.charset.Charset
;
import
java.nio.charset.StandardCharsets
;
@Deprecated
public
class
RemoteShellExecutor
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
RemoteShellExecutor
.
class
);
private
Connection
conn
;
/** 远程机器IP */
/**
* 远程机器IP
*/
private
String
ip
;
/** 用户名 */
/**
* 用户名
*/
private
String
osUsername
;
/** 密码 */
/**
* 密码
*/
private
String
password
;
private
String
charset
=
Charset
.
defaultCharset
().
toString
();
...
...
@@ -33,6 +40,7 @@ public class RemoteShellExecutor {
/**
* 登录
*
* @return
* @throws IOException
*/
...
...
@@ -182,18 +190,16 @@ public class RemoteShellExecutor {
// 6. 关闭输入流
out
.
close
();
// 7. 等待,除非1.连接关闭;2.输出数据传送完毕;3.进程状态为退出;4.超时
session
.
waitForCondition
(
ChannelCondition
.
CLOSED
|
ChannelCondition
.
EOF
|
ChannelCondition
.
EXIT_STATUS
,
30000
);
session
.
waitForCondition
(
ChannelCondition
.
CLOSED
|
ChannelCondition
.
EOF
|
ChannelCondition
.
EXIT_STATUS
,
30000
);
logger
.
error
(
"Here is the output from stdout:"
);
while
(
true
)
{
while
(
true
)
{
String
line
=
stdoutReader
.
readLine
();
if
(
line
==
null
)
break
;
System
.
out
.
println
(
line
);
}
logger
.
error
(
"Here is the output from stderr:"
);
while
(
true
)
{
while
(
true
)
{
String
line
=
stderrReader
.
readLine
();
if
(
line
==
null
)
break
;
...
...
@@ -253,18 +259,16 @@ public class RemoteShellExecutor {
scpOutputStream
.
flush
();
scpOutputStream
.
close
();
session
.
waitForCondition
(
ChannelCondition
.
CLOSED
|
ChannelCondition
.
EOF
|
ChannelCondition
.
EXIT_STATUS
,
30000
);
session
.
waitForCondition
(
ChannelCondition
.
CLOSED
|
ChannelCondition
.
EOF
|
ChannelCondition
.
EXIT_STATUS
,
30000
);
logger
.
error
(
"Here is the output from stdout:"
);
while
(
true
)
{
while
(
true
)
{
String
line
=
stdoutReader
.
readLine
();
if
(
line
==
null
)
break
;
System
.
out
.
println
(
line
);
}
logger
.
error
(
"Here is the output from stderr:"
);
while
(
true
)
{
while
(
true
)
{
String
line
=
stderrReader
.
readLine
();
if
(
line
==
null
)
break
;
...
...
@@ -278,7 +282,7 @@ public class RemoteShellExecutor {
}
catch
(
IOException
e
)
{
logger
.
error
(
e
.
getMessage
());
throw
new
Exception
(
"登录远程机器失败"
+
ip
);
}
finally
{
}
finally
{
if
(
conn
!=
null
)
{
conn
.
close
();
}
...
...
src/main/java/com/edgec/browserbackend/common/commons/utils/TimestampUtils.java
View file @
d5b01f29
...
...
@@ -10,6 +10,7 @@ import java.time.ZonedDateTime;
import
java.time.temporal.ChronoUnit
;
import
java.util.Iterator
;
@Deprecated
public
class
TimestampUtils
{
...
...
src/main/java/com/edgec/browserbackend/common/commons/utils/UUIDGenerator.java
View file @
d5b01f29
...
...
@@ -2,6 +2,7 @@ package com.edgec.browserbackend.common.commons.utils;
import
java.util.UUID
;
@Deprecated
public
class
UUIDGenerator
{
public
static
String
gen
(
Boolean
withoutDashes
)
{
return
withoutDashes
?
UUID
.
randomUUID
().
toString
().
replace
(
"-"
,
""
)
...
...
src/main/java/com/edgec/browserbackend/common/constant/InstanceStatus.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
common
.
constant
;
@Deprecated
public
interface
InstanceStatus
{
String
STOPPING
=
"Stopping"
;
...
...
src/main/java/com/edgec/browserbackend/common/constant/SpecialUsers.java
View file @
d5b01f29
...
...
@@ -5,51 +5,31 @@ import java.lang.reflect.Modifier;
import
java.util.HashSet
;
import
java.util.Set
;
@Deprecated
public
class
SpecialUsers
{
public
static
final
Set
<
String
>
CLOUDAM_USERS
=
new
HashSet
<>();
public
static
final
String
VPS_CLOUD_ACCOUNT_NAME
=
"vpsclient"
;
public
static
final
String
CVM_CLOUD_ACCOUNT_NAME
=
"cvmclient"
;
public
static
final
String
C3_ECC_ACCOUNT_NAME
=
"eccclient"
;
// 电商云集群
public
static
final
String
C3_IP_ACCOUNT_NAME
=
"c3ipclient"
;
//c3 ip云
public
static
final
String
SUPERBROWSER
=
"superbrowser"
;
public
static
final
String
ECOMMERCEBROWSER
=
"ecommercebrowser"
;
public
static
final
String
JKBROWSER
=
"jkbrowser"
;
/**
* 电商云集群
*/
public
static
final
String
C3_ECC_ACCOUNT_NAME
=
"eccclient"
;
/**
* c3 ip云
*/
public
static
final
String
C3_IP_ACCOUNT_NAME
=
"c3ipclient"
;
public
static
final
String
SUPER_BROWSER
=
"superbrowser"
;
public
static
final
String
ECOMMERCE_BROWSER
=
"ecommercebrowser"
;
//新增用户名写在上边
public
static
void
main
(
String
[]
args
)
{
for
(
String
cloudamUser
:
CLOUDAM_USERS
)
{
System
.
out
.
println
(
cloudamUser
);
}
}
public
static
final
String
JK_BROWSER
=
"jkbrowser"
;
static
{
Field
[]
fields
=
SpecialUsers
.
class
.
getFields
();
...
...
@@ -69,5 +49,4 @@ public class SpecialUsers {
}
}
}
src/main/java/com/edgec/browserbackend/common/dto/BaseResponse.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
common
.
dto
;
import
lombok.Data
;
@Deprecated
@Data
public
class
BaseResponse
<
T
>
{
private
String
requestId
;
...
...
@@ -7,38 +11,4 @@ public class BaseResponse<T> {
private
String
message
;
private
T
data
;
public
String
getRequestId
()
{
return
requestId
;
}
public
void
setRequestId
(
String
requestId
)
{
this
.
requestId
=
requestId
;
}
public
Result
getResult
()
{
return
result
;
}
public
void
setResult
(
Result
result
)
{
this
.
result
=
result
;
}
public
String
getMessage
()
{
return
message
;
}
public
void
setMessage
(
String
message
)
{
this
.
message
=
message
;
}
public
T
getData
()
{
return
data
;
}
public
void
setData
(
T
data
)
{
this
.
data
=
data
;
}
}
src/main/java/com/edgec/browserbackend/common/dto/Result.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
common
.
dto
;
@Deprecated
public
enum
Result
{
SUCCESS
,
...
...
src/main/java/com/edgec/browserbackend/common/utils/Aes.java
View file @
d5b01f29
...
...
@@ -10,11 +10,20 @@ import javax.crypto.spec.SecretKeySpec;
import
java.math.BigInteger
;
import
java.util.Base64
;
/**
* @author cloudam
* aes加解密工具类
*/
public
class
Aes
{
//密钥 (需要前端和后端保持一致)
/**
* 密钥 (需要前端和后端保持一致)
*/
private
static
final
String
KEY
=
"iefWFOAjfwefnWEI"
;
//算法
/**
* 算法
*/
private
static
final
String
ALGORITHMSTR
=
"AES/ECB/PKCS5Padding"
;
/**
...
...
@@ -144,6 +153,7 @@ public class Aes {
}
private
static
final
BCryptPasswordEncoder
encoder
=
new
BCryptPasswordEncoder
();
/**
* 测试
*/
...
...
src/main/java/com/edgec/browserbackend/common/utils/JsonUtils.java
View file @
d5b01f29
...
...
@@ -16,11 +16,16 @@ import java.beans.PropertyDescriptor;
import
java.io.IOException
;
import
java.io.StringWriter
;
import
java.lang.reflect.Method
;
import
java.util.*
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* Json工具类
*/
@Deprecated
public
class
JsonUtils
{
private
static
final
ObjectMapper
mapper
=
new
ObjectMapper
();
...
...
@@ -53,12 +58,12 @@ public class JsonUtils {
}
@SuppressWarnings
(
"unchecked"
)
public
static
HashMap
<
String
,
String
>
toBeanStr
(
String
json
)
{
public
static
HashMap
<
String
,
String
>
toBeanStr
(
String
json
)
{
return
toBean
(
json
,
HashMap
.
class
);
}
@SuppressWarnings
(
"unchecked"
)
public
static
<
T
>
T
toBean
(
String
json
,
TypeReference
<
T
>
tr
){
public
static
<
T
>
T
toBean
(
String
json
,
TypeReference
<
T
>
tr
)
{
try
{
T
bean
=
(
T
)
mapper
.
readValue
(
json
,
tr
);
return
bean
;
...
...
@@ -129,9 +134,9 @@ public class JsonUtils {
/**
* json字符串转换为List
*/
public
static
<
T
>
List
<
T
>
json2ListBean
(
String
json
,
Class
<
T
>
cls
)
{
JSONArray
jArray
=
JSONArray
.
parseArray
(
json
);
List
<
T
>
collection
=
jArray
.
toJavaList
(
cls
);
public
static
<
T
>
List
<
T
>
json2ListBean
(
String
json
,
Class
<
T
>
cls
)
{
JSONArray
jArray
=
JSONArray
.
parseArray
(
json
);
List
<
T
>
collection
=
jArray
.
toJavaList
(
cls
);
return
collection
;
}
}
\ No newline at end of file
src/main/java/com/edgec/browserbackend/common/utils/PollerUtils.java
View file @
d5b01f29
...
...
@@ -2,6 +2,7 @@ package com.edgec.browserbackend.common.utils;
import
java.time.Instant
;
@Deprecated
public
class
PollerUtils
{
public
static
void
poll
(
int
timeoutInSeconds
,
int
intervalInSeconds
,
Evaluator
evaluator
)
{
...
...
@@ -12,7 +13,7 @@ public class PollerUtils {
while
(!
result
)
{
long
end
=
Instant
.
now
().
toEpochMilli
();
if
((
end
-
start
)
>
timeoutInSeconds
*
1000
)
if
((
end
-
start
)
>
timeoutInSeconds
*
1000
)
return
;
try
{
Thread
.
sleep
(
intervalInSeconds
*
1000
);
...
...
src/main/java/com/edgec/browserbackend/common/utils/ThreadPoolUtils.java
View file @
d5b01f29
package
com
.
edgec
.
browserbackend
.
common
.
utils
;
import
com.edgec.browserbackend.common.commons.utils.PriorityThreadPoolExecutor
;
import
com.edgec.browserbackend.common.commons.utils.UniquePriorityBlockingQueue
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.util.concurrent.*
;
import
java.util.concurrent.BlockingQueue
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.Executors
;
import
java.util.concurrent.ThreadFactory
;
public
abstract
class
ThreadPoolUtils
{
private
static
final
Logger
log
=
LoggerFactory
.
getLogger
(
ThreadPoolUtils
.
class
);
public
static
final
BlockingQueue
<
Runnable
>
schedulerQueue
=
new
UniquePriorityBlockingQueue
<>(
50
);
...
...
src/main/java/com/edgec/browserbackend/common/utils/Trans.java
View file @
d5b01f29
...
...
@@ -21,11 +21,18 @@ import java.io.IOException;
public
class
Trans
{
private
final
Logger
logger
=
LoggerFactory
.
getLogger
(
Trans
.
class
);
static
int
timeout
=
10
*
1000
;
// 以秒为单位
private
static
String
specialHost
=
"39.108.183.128"
;
private
static
int
specialPort
=
20008
;
/**
* 以秒为单位
*/
static
int
timeout
=
10
*
1000
;
private
static
final
String
SPECIAL_HOST
=
"39.108.183.128"
;
private
static
final
int
SPECIAL_PORT
=
20008
;
private
String
host
;
private
int
port
;
private
String
username
;
private
String
password
;
...
...
@@ -37,8 +44,8 @@ public class Trans {
}
public
Trans
(
String
username
,
String
password
)
{
this
.
host
=
specialHost
;
this
.
port
=
specialPort
;
this
.
host
=
SPECIAL_HOST
;
this
.
port
=
SPECIAL_PORT
;
this
.
password
=
password
;
this
.
username
=
username
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment