From 3b55d06b89bf64873e685c3d78fce5affbba3d17 Mon Sep 17 00:00:00 2001 From: zheng_wenlong Date: Tue, 16 Apr 2019 11:20:38 +0900 Subject: Add warehouse server source code. [Patch Set 2] Add ReadMe.md Change-Id: I6ade52d2490f5ca4ba107c1a27ed6d5b39048725 Signed-off-by: zheng_wenlong --- .../src/main/java/app/market/core/app/AppCore.java | 92 +++++++++++++ .../java/app/market/core/app/impl/AppCoreImpl.java | 119 +++++++++++++++++ .../app/market/core/authority/AuthorityCore.java | 32 +++++ .../core/authority/impl/AuthorityCoreImpl.java | 54 ++++++++ .../app/market/core/resource/DictionaryCore.java | 36 +++++ .../app/market/core/resource/ResourceCore.java | 26 ++++ .../core/resource/impl/DictionaryCoreImpl.java | 69 ++++++++++ .../core/resource/impl/ResourceCoreImpl.java | 40 ++++++ .../main/java/app/market/core/user/UserCore.java | 106 +++++++++++++++ .../app/market/core/user/impl/UserCoreImpl.java | 148 +++++++++++++++++++++ 10 files changed, 722 insertions(+) create mode 100644 appmarket-core/src/main/java/app/market/core/app/AppCore.java create mode 100644 appmarket-core/src/main/java/app/market/core/app/impl/AppCoreImpl.java create mode 100644 appmarket-core/src/main/java/app/market/core/authority/AuthorityCore.java create mode 100644 appmarket-core/src/main/java/app/market/core/authority/impl/AuthorityCoreImpl.java create mode 100644 appmarket-core/src/main/java/app/market/core/resource/DictionaryCore.java create mode 100644 appmarket-core/src/main/java/app/market/core/resource/ResourceCore.java create mode 100644 appmarket-core/src/main/java/app/market/core/resource/impl/DictionaryCoreImpl.java create mode 100644 appmarket-core/src/main/java/app/market/core/resource/impl/ResourceCoreImpl.java create mode 100644 appmarket-core/src/main/java/app/market/core/user/UserCore.java create mode 100644 appmarket-core/src/main/java/app/market/core/user/impl/UserCoreImpl.java (limited to 'appmarket-core/src/main/java') diff --git a/appmarket-core/src/main/java/app/market/core/app/AppCore.java b/appmarket-core/src/main/java/app/market/core/app/AppCore.java new file mode 100644 index 0000000..6db3075 --- /dev/null +++ b/appmarket-core/src/main/java/app/market/core/app/AppCore.java @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2019 TOYOTA MOTOR CORPORATION + * + * 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. + */ +package app.market.core.app; + +import java.util.List; + +import app.market.model.app.App; +import app.market.model.app.AppExample; +import app.market.model.app.AppVersion; +import app.market.model.app.AppVersionExample; + + + +public interface AppCore { + + /** + * Get application information + * + * @param offset + * @param limit + * @param example + * @return + */ + List selectByExample(int offset, int limit, AppExample example); + + /** + * Get total count of applications + * + * @param example + * @return + */ + int countByExample(AppExample example); + + /** + * Search application by ID + * + * @param appId + * @return + */ + App selectAppByAppId(String appId); + + /** + * Search application by IdCustom + * @param appIdCustom + * @return + */ + App selectAppByAppCustomId(String appIdCustom); + + /** + * Save application information + * + * @param app + * @return + */ + int save(App app); + + /** + * Delete application + * + * @param id + * @return + */ + int deleteByAppId(String id); + + /** + * Save application version + * @param appVer + * @return + */ + int saveVision(AppVersion appVer); + + /** + * Get total count of app versions + * + * @param example + * @return + */ + int countByExample(AppVersionExample example); +} diff --git a/appmarket-core/src/main/java/app/market/core/app/impl/AppCoreImpl.java b/appmarket-core/src/main/java/app/market/core/app/impl/AppCoreImpl.java new file mode 100644 index 0000000..1287484 --- /dev/null +++ b/appmarket-core/src/main/java/app/market/core/app/impl/AppCoreImpl.java @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2019 TOYOTA MOTOR CORPORATION + * + * 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. + */ +package app.market.core.app.impl; + +import java.util.List; + +import javax.annotation.Resource; + +import org.apache.commons.lang3.StringUtils; +import org.apache.ibatis.session.RowBounds; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import app.market.core.app.AppCore; +import app.market.core.user.impl.UserCoreImpl; +import app.market.model.app.App; +import app.market.model.app.AppExample; +import app.market.model.app.AppVersion; +import app.market.model.app.AppVersionExample; +import app.market.persistence.mapper.app.AppMapper; +import app.market.persistence.mapper.app.AppVersionMapper; +import app.market.utils.Utils; + +@Service +@Transactional +public class AppCoreImpl implements AppCore{ + + private static Logger logger = LoggerFactory.getLogger( UserCoreImpl.class ); + + @Resource(name = "AppMapper") + private AppMapper mapper; + + @Resource(name = "AppVersionMapper") + private AppVersionMapper versionMapper; + + @Override + public List selectByExample(int offset, int limit, AppExample example) { + mapper.selectByExample(example); + return mapper.selectByExample( new RowBounds( offset, limit ), example ); + } + + @Override + public int countByExample(AppExample example) { + int ret = mapper.countByExample( example ); + return ret; + } + + @Override + public App selectAppByAppId(String appId) { + App app = mapper.selectByPrimaryKey( appId ); + return app; + } + + @Override + public App selectAppByAppCustomId(String appIdCustom) { + App app = mapper.selectByCustomId( appIdCustom ); + return app; + } + + @Override + public int save(App app) { + int ret = 0; + if ( StringUtils.isEmpty( app.getAppId() ) ) { + app.setAppId( Utils.generatorUUID() ); + ret = mapper.insert( app ); + } else { + ret = mapper.updateByPrimaryKeySelective(app); + } + + + return ret; + } + + @Override + public int deleteByAppId(String appId) { + int ret = 0; + // delete version + ret = versionMapper.deleteByAppId(appId); + + // delete application information + ret = mapper.deleteByAppId(appId); + return ret; + } + + @Override + public int saveVision(AppVersion appVer) { + int ret = 0; + + if ( StringUtils.isEmpty( appVer.getVersionId())) { + appVer.setVersionId( Utils.generatorUUID() ); + ret = versionMapper.insert(appVer); + } else { + ret = versionMapper.updateByPrimaryKeySelective(appVer); + } + + return ret; + } + + @Override + public int countByExample(AppVersionExample example) { + int ret = versionMapper.countByExample( example ); + return ret; + } +} diff --git a/appmarket-core/src/main/java/app/market/core/authority/AuthorityCore.java b/appmarket-core/src/main/java/app/market/core/authority/AuthorityCore.java new file mode 100644 index 0000000..7f64227 --- /dev/null +++ b/appmarket-core/src/main/java/app/market/core/authority/AuthorityCore.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2019 TOYOTA MOTOR CORPORATION + * + * 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. + */ +package app.market.core.authority; + +import java.util.List; + +import app.market.utils.property.Option; + +public interface AuthorityCore { + + /** + * Get authority list by role + * + * @param hasSpace + * @return + */ + List