Merge branch 'master' into bug3529

This commit is contained in:
Kai Boernert
2017-02-14 11:23:35 +01:00
59 changed files with 164 additions and 3607 deletions
+5 -4
View File
@@ -557,22 +557,23 @@ if [[ "$@" == "build" ]] || [[ "$@" == "all" ]]; then
if [ $gwtcompile -eq 1 ] && [[ "$clean" == "clean" ]]; then
echo "INFO: Compiling GWT (rm -rf com.sap.$PROJECT_TYPE.gwt.ui/com.sap.$PROJECT_TYPE.*)"
rm -rf com.sap.$PROJECT_TYPE.gwt.ui/com.sap.$PROJECT_TYPE.*
GWT_XML_FILES=`find com.sap.$PROJECT_TYPE.gwt.ui/src/main/resources -name '*.gwt.xml'`
GWT_XML_FILES=`find . -name '*.gwt.xml'`
if [ $onegwtpermutationonly -eq 1 ]; then
echo "INFO: Patching .gwt.xml files such that only one GWT permutation needs to be compiled"
for i in $GWT_XML_FILES; do
echo "INFO: Patching $i files such that only one GWT permutation needs to be compiled"
cp $i $i.bak
cat $i | sed -e 's/^[ ]*<extend-property *name="locale" *values="de" *\/>/<!-- <extend-property name="locale" values="de"\/> --> <set-property name="user.agent" value="gecko1_8" \/>/' >$i.sed
mv $i.sed $i
cat $i | sed -e 's/AllPermutations/SinglePermutation/' >$i.sed
mv $i.sed $i
done
else
echo "INFO: Patching .gwt.xml files such that all GWT permutations are compiled"
for i in $GWT_XML_FILES; do
echo "INFO: Patching $i files such that all GWT permutations are compiled"
cp $i $i.bak
cat $i | sed -e 's/<!-- <extend-property *name="locale" *values="de" *\/> --> <set-property name="user.agent" value="gecko1_8" \/>/<extend-property name="locale" values="de"\/>/' >$i.sed
cat $i | sed -e 's/SinglePermutation/AllPermutations/' >$i.sed
mv $i.sed $i
done
fi
Regular → Executable
View File
@@ -39,7 +39,8 @@
<inherits name='com.google.gwt.maps.Maps' />
<inherits name="com.sap.sailing.domain.SailingDomain" />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<inherits name="com.sap.sailing.gwt.ui.NoUI" />
<!-- Specify the app entry point class. -->
@@ -56,8 +57,6 @@
<set-configuration-property name="CssResource.enableGss" value="true" />
<set-configuration-property name="CssResource.conversionMode" value="strict" />
<extend-property name="locale" values="de" />
<define-linker name="manifest" class="com.sap.sailing.dashboards.gwt.client.linker.DashboardManifestLinker"/>
<add-linker name="manifest"/>
@@ -1,85 +0,0 @@
Speed=速度
SpeedTenSecondsBefore=前 10 秒的速度
DistanceTraveled=航行距离
Name=名称
LegType=航段形式
SailID=帆号
Year=年份
LegNumber=航段编号
Nationality=国籍
Acronym=首字母缩略词
Regatta=比赛
CourseArea=场地区域
BoatClass=船只级别
Fleet=船队
Race=比赛轮次
Competitor=参赛队
Boat=船只
Team=团队
CompetitorSearchTag=参赛队搜索标记
LeaderboardSailingDomainRetrieverChain=积分榜
RaceSailingDomainRetrieverChain=比赛轮次
LegSailingDomainRetrieverChain=航段
GPSFixSailingDomainRetrieverChain=GPS 修复
MarkPassingSailingDomainRetrieverChain=绕标
RaceResultSailingDomainRetrieverChain=比赛轮次结果
RaceOfCompetitorSailingDomainRetrieverChain=参赛队的比赛轮次
ManeuverSailingDomainRetrieverChain=操作
LeaderboardGroup=积分榜分组
Leaderboard=积分榜
Leg=航段
MarkPassing=绕标
LegOfCompetitor=参赛队的航段
GpsFix=GPS 修复
Maneuver=操作
WindStrengthInBeaufort=风力(蒲福风级)
Bft0=无风
Bft1=软风
Bft2=轻风
Bft3=微风
Bft4=和风
Bft5=劲风
Bft6=强风
Bft7=疾风
Bft8=大风
Bft9=烈风
Bft10=暴风
Bft11=飓风
Bft12=台风
RelativeScore=相对得分(0 最佳;1 最差)
RelativeScoreInPercent=相对得分 (%)
RelativeScoreInRaceInPercent=比赛轮次中的相对得分 (%)
AbsoluteRank=绝对名次
WindSpeedInBeaufort=风速(单位:Bft)
DistanceAtStart=起航前与起航线的距离
SpeedWhenStarting=起航时的速度
SpeedTenSecondsBeforeStart=起航前 10 秒的速度
RankAtFirstMark=在第一个标志的名次
NumberOfManeuvers=操作数量
NumberOfTacks=迎风转向次数
NumberOfJibes=顺风转向次数
NumberOfPenaltyCircles=惩罚圈数
RankGainsOrLosses=名次进阶或落后
DistanceToStarboardSideAtStart=与右舷的距离(长度百分比)
NumberOfPodiumFinish=跻身颁奖台次数
NumberOfWins=获胜次数
RankGainsOrLossesBetweenFirstMarkAndFinish=名次进阶或落后(第一个标志 -> 结束)
IsTracked=是否跟踪
NumberOfCompetitorFixes=参赛队修复次数
NumberOfMarkFixes=标志修复次数
ManeuverType=操作类型
Tack=迎风转向
SpeedBefore=操作前的速度
SpeedAfter=操作后的速度
DirectionChange=风向变化角度
ManeuverLoss=操作损失
Waypoint=航路点
PassingSide=绕标侧
TackAtStart=起航时迎风转向
SpeedTenSecondsAfterStart=起航后 10 秒的速度
RankThirtySecondsAfterStart=起航后 30 秒的名次
WindwardDistanceToAdvantageousEndOfLine=与有利航线终点的上风距离
RankAfterHalfOfTheFirstLeg=第一航段过半后的名次
AdvantageousEndOfLine=有利航线终点
TimeSpentInSeconds=所用时间(秒)
MedalRace=奖牌轮
@@ -1,12 +0,0 @@
trackingInvitationFor=跟踪邀请 -
scanQRCodeOrVisitUrlToRegisterAs=确保已安装 {0} 应用。然后,使用智能手机扫描以下二维码或点击链接注册
welcomeTo=欢迎使用
iOSUsers=启动 iOS 应用
androidUsers=启动 Android 应用
alternativelyVisitThisLink=如果在已安装该应用的设备中读取邮件,只需点击以下链接即可启动:
buoyTender=浮标供应船
appStoreInstallText=如果您尚无该应用,请安装:
appIos=安装 iOS 应用
appAndroid=安装 Android 应用
buoyPingerAppName=SAP Sailing Buoy Pinger
sailInSightAppName=SAP Sail InSight
@@ -10,7 +10,6 @@ encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properti
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ja.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh_CN.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/media/MediaPlayerManagerComponent.java=utf-8
encoding//src/main/java/com/sap/sailing/gwt/ui/datamining/presentation/AbstractResultsPresenter.java=utf-8
encoding//src/main/java/com/sap/sailing/gwt/ui/datamining/presentation/PlainResultsPresenter.java=utf-8
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.7.0//EN" "http://gwtproject.org/doctype/2.7.0/gwt-module.dtd">
<module>
<!--
This modules declares what
languages/ permutations the gwt
compiler should generate.
most of the i18n text is stored in
com.sap.sailing.gwt.ui.client.StringMessages
but there can be other i18n bundles.
the build script switches references to *AllPermutations*
to *SinglePermutation* in gwt modules with the "-b" option.
-->
<extend-property name="locale" values="en,de,zh,ru,ja" />
<set-property name="locale" value="en,de,zh,ru,ja" />
<set-property-fallback name="locale" value="en" />
</module>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.7.0//EN" "http://gwtproject.org/doctype/2.7.0/gwt-module.dtd">
<module>
<!--
this gwt module is used by the build script when called with
-g option
and makes the compiler generate only one permutation for
the defined language and browser below.
-->
<extend-property name="locale" values="en" />
<set-property name="locale" value="en" />
<set-property-fallback name="locale" value="en" />
<set-property name="user.agent" value="gecko1_8" />
</module>
@@ -8,4 +8,4 @@
<source path='client'/>
<source path='theme'/>
</module>
@@ -26,7 +26,8 @@
<inherits name="com.github.gwtbootstrap.BootstrapNoResources" />
<inherits name='com.github.gwtbootstrap.datetimepicker.DatetimepickerNoResources' />
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<source path='client' />
<source path='shared' />
@@ -43,7 +44,7 @@
<inherits name="com.sap.sailing.gwt.ui.SourceAdminConsole"/>
<inherits name="com.sap.sailing.gwt.regattaoverview.SourceRegattaOverview"/>
<inherits name="com.sap.sailing.gwt.ui.SourceLeaderboard"/>
<inherits name="com.sap.sailing.gwt.ui.SourceRaceboard"/>
<inherits name="com.sap.sailing.gwt.ui.SourceRaceboard"/>
<inherits name='com.sap.sse.gwt.CommonControlCSS'/>
<inherits name='com.sap.sailing.gwt.settings.Settings'/>
@@ -26,13 +26,11 @@
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sailing.gwt.regattaoverview.client.RegattaOverviewEntryPoint'/>
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<extend-property name="locale" values="ru"/>
<source path='client'/>
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<inherits name="com.sap.sailing.gwt.ui.SourceAdminConsole"/>
<inherits name='com.sap.sailing.gwt.ui.SourceClient'/>
<inherits name='com.sap.sailing.gwt.ui.SourceActions'/>
@@ -46,4 +44,4 @@
<inherits name='com.sap.sse.gwt.CommonControlCSS_Autoinject'/>
</module>
@@ -44,7 +44,8 @@
<set-property name="gwt.logging.developmentModeHandler" value="DISABLED" />
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<!-- Turning CSS obfuscation off -->
<!-- <set-configuration-property name="CssResource.style" value="pretty"/> -->
@@ -30,10 +30,10 @@
<entry-point class='com.sap.sailing.gwt.autoplay.client.AutoPlayEntryPoint' />
<!-- Specify the paths for translatable code -->
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<source path="autoplay"/>
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<source path="autoplay"/>
<inherits name='com.sap.sailing.gwt.common.SourceCommon'/>
<inherits name='com.sap.sailing.gwt.ui.SourceCommon'/>
@@ -27,7 +27,8 @@
<inherits name="com.sap.sailing.datamining.DataMiningSailingDomain" />
<inherits name="com.sap.sailing.polars.datamining.DataMiningPolars" />
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<!-- Disable logging -->
<set-property name="gwt.logging.enabled" value="FALSE"/>
@@ -45,4 +46,4 @@
<inherits name='com.sap.sse.gwt.CommonControlCSS_Autoinject'/>
<entry-point class="com.sap.sailing.gwt.ui.datamining.DataMiningEntryPoint" />
</module>
</module>
@@ -25,7 +25,8 @@
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sailing.gwt.ui.raceboard.EmbeddedMapAndWindChartEntryPoint'/>
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<inherits name='com.sap.sailing.gwt.ui.SourceCommon' />
<inherits name='com.sap.sailing.gwt.ui.SourceClient' />
@@ -27,7 +27,8 @@
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sailing.gwt.ui.leaderboard.LeaderboardEntryPoint' />
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<inherits name='com.sap.sailing.gwt.ui.SourceLeaderboard' />
<inherits name='com.sap.sailing.gwt.ui.SourceCommon' />
@@ -32,10 +32,8 @@
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sailing.gwt.ui.leaderboardedit.LeaderboardEditPage'/>
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<extend-property name="locale" values="ru"/>
<inherits name="com.sap.sailing.domain.SailingDomain" />
<source path='common'/>
<source path='client'/>
<source path='adminconsole'/>
@@ -45,9 +45,6 @@
<set-property name="gwt.logging.consoleHandler" value="ENABLED" />
<set-property name="gwt.logging.developmentModeHandler" value="DISABLED" />
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<extend-property name="locale" values="de"/>
<extend-property name="locale" values="ru"/>
<!-- Turning CSS obfuscation off -->
<!-- <set-configuration-property name="CssResource.style" value="pretty"/> -->
@@ -25,8 +25,9 @@
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sailing.gwt.ui.raceboard.RaceBoardEntryPoint'/>
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<inherits name='com.sap.sailing.gwt.ui.SourceCommon' />
<inherits name='com.sap.sailing.gwt.ui.SourceClient' />
<inherits name='com.sap.sailing.gwt.ui.SourceShared' />
@@ -23,7 +23,8 @@
<inherits name="com.github.gwtbootstrap.BootstrapNoResources" />
<inherits name='com.github.gwtbootstrap.datetimepicker.DatetimepickerNoResources' />
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<inherits name="com.sap.sailing.gwt.ui.SourceAdminConsole"/>
<inherits name='com.sap.sailing.gwt.ui.SourceClient'/>
@@ -44,4 +45,4 @@
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sailing.gwt.ui.simulator.SimulatorEntryPoint' />
</module>
</module>
@@ -25,7 +25,8 @@
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sailing.gwt.ui.spectator.SpectatorEntryPoint'/>
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<source path='spectator'/>
@@ -23,7 +23,8 @@
<entry-point class="com.sap.sailing.gwt.ui.client.media.popup.VideoPopupWindow" />
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<source path='client' />
<source path='actions'/>
@@ -34,4 +35,4 @@
<source path='masterdataimport'/>
<source path='simulator'/>
<source path='leaderboard'/>
</module>
</module>
@@ -21,8 +21,11 @@
<inherits name='com.google.gwt.maps.Maps' />
<!-- GWT JSON Support -->
<inherits name='com.google.gwt.json.JSON' />
<inherits name='com.sap.sailing.gwt.common.SailingLocales' />
<entry-point class="com.sap.sailing.gwt.ui.client.media.popup.YoutubePopupWindow" />
<!-- module containing locale configuration -->
<inherits name='com.sap.sailing.gwt.common.SailingLocalesAllPermutations' />
<entry-point class="com.sap.sailing.gwt.ui.client.media.popup.YoutubePopupWindow" />
<source path='client'/>
<source path='shared'/>
@@ -33,4 +36,4 @@
<source path='usermanagement'/>
<source path='masterdataimport'/>
<source path='leaderboard'/>
</module>
</module>
@@ -1,11 +0,0 @@
PolarChain1=极坐标图
PolarChain2=后端极坐标图
RaceColumn=比赛轮次列
LegIndex=航段索引
PolarData=极坐标数据
Polars=极坐标图
GPSFix=GPS 修复
WindRange=风力范围
WindIsConfident=风力测量置信度
Rank=名次
BackendPolars=后端极坐标图
@@ -22,14 +22,18 @@ public class TrackedRaceJsonSerializer implements JsonSerializer<TrackedRace> {
public static final String ALL_WINDSOURCES = "ALL";
private String windSourceToSerialize;
private String windSourceIdToSerialize;
private TimePoint fromTime;
private TimePoint toTime;
private final String windSourceToSerialize;
private final String windSourceIdToSerialize;
private final TimePoint fromTime;
private final TimePoint toTime;
private final WindTrackJsonSerializer windTrackSerializer;
public TrackedRaceJsonSerializer(WindTrackJsonSerializer windTrackSerializer) {
public TrackedRaceJsonSerializer(WindTrackJsonSerializer windTrackSerializer, String windSourceToSerialize, String windSourceIdToSerialize, TimePoint fromTime, TimePoint toTime) {
this.windTrackSerializer = windTrackSerializer;
this.windSourceToSerialize = windSourceToSerialize;
this.windSourceIdToSerialize = windSourceIdToSerialize;
this.fromTime = fromTime;
this.toTime = toTime;
windSourceToSerialize = WindSourceType.COMBINED.name();
}
@@ -71,18 +75,6 @@ public class TrackedRaceJsonSerializer implements JsonSerializer<TrackedRace> {
return jsonRace;
}
public void setWindSource(String windSourceToSerialize) {
this.windSourceToSerialize = windSourceToSerialize;
}
public void setFromTime(TimePoint fromTime) {
this.fromTime = fromTime;
}
public void setToTime(TimePoint toTime) {
this.toTime = toTime;
}
private List<WindSource> getAvailableWindSources(TrackedRace trackedRace) {
List<WindSource> windSources = new ArrayList<WindSource>();
for (WindSource windSource : trackedRace.getWindSources()) {
@@ -94,8 +86,4 @@ public class TrackedRaceJsonSerializer implements JsonSerializer<TrackedRace> {
windSources.add(new WindSourceImpl(WindSourceType.COMBINED));
return windSources;
}
public void setWindSourceId(String windSourceId) {
this.windSourceIdToSerialize = windSourceId;
}
}
@@ -761,11 +761,7 @@ public class RegattasResource extends AbstractSailingServerResource {
from = Util.getLatestOfTimePoints(from, trackedRace.getStartOfTracking());
to = Util.getEarliestOfTimePoints(to, Util.getEarliestOfTimePoints(trackedRace.getEndOfTracking(), trackedRace.getTimePointOfNewestEvent()));
TrackedRaceJsonSerializer serializer = new TrackedRaceJsonSerializer(
new DefaultWindTrackJsonSerializer(/* maxNumberOfFixes */ 10000));
serializer.setWindSource(windSource);
serializer.setWindSourceId(windSourceId);
serializer.setFromTime(from);
serializer.setToTime(to);
new DefaultWindTrackJsonSerializer(/* maxNumberOfFixes */ 10000), windSource, windSourceId, from, to);
JSONObject jsonWindTracks = serializer.serialize(trackedRace);
String json = jsonWindTracks.toJSONString();
@@ -1,34 +0,0 @@
raceInRegattaOfEvent=活动 “{2}” 的比赛 “{1}” 中的比赛轮次 {0}
raceInFleetInRegattaOfEvent=活动 “{2}” 的比赛 “{1}” 中的比赛轮次 {0} ({3})
leaderboardOfEvent=活动 “{1}” 的积分榜 “{0}”
leaderboardShowResultsLinkTitle=显示结果
racesOverviewLinkTitle=显示比赛轮次总览
raceboardShowRaceLinkTitle=显示比赛轮次
raceboardRaceAnalysisLinkTitle=显示比赛轮次分析
boatClassRaceFinishedSubject=船只级别{0}的比赛轮次已结束 - 新结果可用
# 0: boatClassName, 1: raceDescription
boatClassRaceFinishedBody={1}中船只级别{0}的新结果可用。
boatClassScoreCorrectionSubject=新结果可用于船只级别{0}
# 0: boatClassName, 1: leaderboardDescription
boatClassScoreCorrectionBody={1}中船只级别{0}的新结果可用。
competitorPassesFinishSubject=参赛队{0}在一轮比赛中越过终点线
# 0: competitorName, 1: raceDescription
competitorPassesFinishBody=参赛队{0}在{1}中越过终点线。
competitorScoreCorrectionSubject=新结果可用于参赛队{0}
# 0: competitorName, 1: leaderboardDescription
competitorScoreCorrectionBody={1}中参赛队{0}的新结果可用。
boatClassUpcomingRaceSubject=船只级别{0}的比赛轮次即将开始
# 0: boatClassName, 1: raceDescription, 2: time
boatClassUpcomingRaceBody=对于船只级别{0},{1}约于{2}开始。
subscriptionInformation=您将从 SAP Sailing Analytics 接收通知。要关闭通知,请通过下方的链接访问用户参数文件。
userProfile=用户参数文件
imprint=版本说明
privacy=隐私
salutation={0}您好!
@@ -1,11 +0,0 @@
Average=平均值
Median=中值
Sum=求和
Maximum=最大值
Minimum=最小值
Count=计数
Meters=m
Knots=kn
Collecting=集合
ResultSignifier={0} ({1})
SignifierInUnit={0}(单位:{1})
@@ -14,10 +14,10 @@ import com.sap.sse.datamining.functions.ParameterProvider;
import com.sap.sse.i18n.ResourceBundleStringMessages;
public class MethodWrappingFunction<ReturnType> extends AbstractFunction<ReturnType> {
private final Method method;
private Class<ReturnType> returnType;
private AdditionalMethodWrappingFunctionData additionalData;
private final Class<ReturnType> returnType;
private final AdditionalMethodWrappingFunctionData additionalData;
private final String simpleName;
/**
* Throws an {@link IllegalArgumentException}, if the return type of the method and the given
@@ -26,10 +26,13 @@ public class MethodWrappingFunction<ReturnType> extends AbstractFunction<ReturnT
public MethodWrappingFunction(Method method, Class<ReturnType> returnType) throws IllegalArgumentException {
super(isMethodADimension(method));
checkThatReturnTypesMatch(method, returnType);
this.method = method;
this.returnType = returnType;
initializeAdditionalData();
this.additionalData = initializeAdditionalData();
final String parametersAsString = parametersAsString();
final StringBuilder simpleNameBuilder = new StringBuilder(method.getName().length()+parametersAsString.length()+2);
simpleNameBuilder.append(method.getName()).append('(').append(parametersAsString).append(')');
this.simpleName = simpleNameBuilder.toString();
}
private static boolean isMethodADimension(Method method) {
@@ -43,26 +46,24 @@ public class MethodWrappingFunction<ReturnType> extends AbstractFunction<ReturnT
}
}
private void initializeAdditionalData() {
additionalData = new AdditionalMethodWrappingFunctionData("", 0, Integer.MAX_VALUE);
if (method.getAnnotation(Dimension.class) != null) {
Dimension dimensionData = method.getAnnotation(Dimension.class);
additionalData = new AdditionalMethodWrappingFunctionData(dimensionData.messageKey(), 0,
dimensionData.ordinal());
}
if (method.getAnnotation(Statistic.class) != null) {
Statistic statisticData = method.getAnnotation(Statistic.class);
additionalData = new AdditionalMethodWrappingFunctionData(statisticData.messageKey(),
statisticData.resultDecimals(), statisticData.ordinal());
}
private AdditionalMethodWrappingFunctionData initializeAdditionalData() {
final AdditionalMethodWrappingFunctionData result;
if (method.getAnnotation(Connector.class) != null) {
Connector connectorData = method.getAnnotation(Connector.class);
additionalData = new AdditionalMethodWrappingFunctionData(connectorData.messageKey(), 0,
result = new AdditionalMethodWrappingFunctionData(connectorData.messageKey(), 0,
connectorData.ordinal());
} else if (method.getAnnotation(Statistic.class) != null) {
Statistic statisticData = method.getAnnotation(Statistic.class);
result = new AdditionalMethodWrappingFunctionData(statisticData.messageKey(),
statisticData.resultDecimals(), statisticData.ordinal());
} else if (method.getAnnotation(Dimension.class) != null) {
Dimension dimensionData = method.getAnnotation(Dimension.class);
result = new AdditionalMethodWrappingFunctionData(dimensionData.messageKey(), 0,
dimensionData.ordinal());
} else {
result = new AdditionalMethodWrappingFunctionData("", 0, Integer.MAX_VALUE);
}
return result;
}
@Override
@@ -139,7 +140,7 @@ public class MethodWrappingFunction<ReturnType> extends AbstractFunction<ReturnT
@Override
public String getSimpleName() {
return method.getName() + "(" + parametersAsString() + ")";
return simpleName;
}
private String parametersAsString() {
@@ -1,7 +0,0 @@
s3Desc=将文件存储在 Amazon S3 中。生成的文件名称为随机的 UUID 加原始文件结尾。
s3AccessIdDesc=访问编号(留空,改用 ~/.aws/credentials)
s3AccessKeyDesc=秘密访问密钥(留空,改用 ~/.aws/credentials)
s3BucketNameDesc=所用存储段的名称(必须已存在,并且用户需要足够的权限)
localDesc=用于在本地文件系统中存储文件的服务。文件存储在 localPath+fileName 中,可以在 baseUrl+fileName 访问。请注意,必须可以远程访问 baseUrl 中的内容。例如,可以从 localPath 副本所在的 static.sapsailing.com 安装远程文件系统。
localBaseUrlDesc=基本 URL + 文件名称 = URL,其中可以访问上传的文件
localLocalPathDesc=用于存储文件的本地路径
@@ -1,27 +0,0 @@
save=保存
remove=移除
ok=确定
cancel=取消
add=添加
edit=编辑
serverError=尝试联系服务器时出错。请检查网络连接,并重试。
close=关闭
remoteProcedureCall=远程过程调用
serverReplies=服务器应答
errorCommunicatingWithServer=与服务器通信时发生错误
active=已激活
setAsActive=设置为已激活
couldNotTestProperties=无法测试属性
couldNotSetProperties=无法设置属性
couldNotSetActiveService=无法设置已激活的服务
couldNotLoadActiveService=无法加载已激活的服务
couldNotLoadAvailableServices=无法加载可用的服务
refresh=刷新
name=名称
value=值
description=描述
error=错误
configuration=配置
settings=设置
settingsForComponent={0}设置
pleaseSelect=请选择
@@ -1,98 +0,0 @@
name=名称
company=公司
password=密码
passwordRepeat=重复密码
loggedIn=以用户{0}登录!
signIn=登录
signUp=注册
signOut=注销
invalidUsername=用户名无效
couldNotSignOut=无法注销: {0}
createUser=创建用户
settings=设置
filterUsers=筛选用户...
welcome={0}欢迎使用!
tryingToVerifyUser=正在尝试验证用户...
fetchingUserInformation=正在获取用户信息...
signedInAs=以{0}登录
signedInAsTitle=登录身份:
close=关闭
loading=正在加载...
user=用户
users=用户
addURLFilter=添加 URL 筛选器
ok=确定
cancel=取消
username=用户名
email=电子邮件
usernameMustHaveAtLeastNCharacters=输入至少有 {0} 个字符的用户名
passwordMustHaveAtLeastNCharacters=请使用至少有 {0} 个字符的密码
passwordsDontMatch=密码必须匹配
couldNotCreateUser=无法创建用户: {0}
changePassword=更改密码
userDetails=用户详细信息
deleteUser=删除用户
deleteUserQuestion=是否删除用户?
doYouReallyWantToDeleteUser=是否确定删除用户{0}?
errorDeletingUser=删除用户时出错
account={0} 账户
save=保存
remove=移除
add=添加
edit=编辑
errorUpdatingRoles=更新用户{0}的角色出错: {1}
errorUpdatingPermissions=更新用户{0}的权限出错: {1}
enterRoleName=输入角色名称...
enterPermissionName=输入权限名称...
errorCreatingUser=使用用户名{0}注册出错: {1}
signedUpSuccessfully=已成功注册用户{0}。请检查电子邮件,验证您的电子邮件账户。
unknownErrorCreatingUser=尝试使用名称{0}注册用户时发生未知错误。 可能已存在含此名称的用户。
userAlreadyExists=名称为{0}的用户已存在
currentPassword=当前密码
passwordSuccessfullyChanged=已成功更改密码
passwordDoesNotMeetRequirements=密码不满足要求
errorChangingPassword=更改密码出错: {0}
invalidCredentials=凭据无效
editEmail=编辑电子邮件地址
errorUpdatingEmail=更新电子邮件地址出错: {0}
successfullyUpdatedEmail=已成功更新用户{0}的电子邮件地址。\n验证检查已发送到{1}。
errorUpdatingUserProperties=更新用户属性出错: {0}
successfullyUpdatedUserProperties=已成功更新用户{0}的属性。
forgotPassword=忘记密码
errorDuringPasswordReset=密码重置期间出错: {0}
cannotResetPasswordWithoutValidatedEmail=用户{0}没有验证的电子邮件地址,无法重置密码
passwordResetLinkSent=重置密码的链接已发送到{0}的验证的电子邮件地址
errorValidatingEmail=验证用户{0}的电子邮件地址出错: {1}
emailValidatedSuccessfully=用户{0}的电子邮件地址已成功验证
errorResettingPassword=重置用户{0}的密码出错: {1}
successfullyResetPassword=已成功重置用户{0}的密码。已发送电子邮件。
failedToSignIn=登录失败。请检查凭据。
emailValidationUnsuccessful=用户{0}的电子邮件地址验证失败。 是否确定使用最新的验证码?
roles=角色
permissions=权限
signInWith=登录信息...
generalWelcome=欢迎使用!
newUser=新内容?
pleaseSignIn=请登录。
enterUsernameOrEmail=输入用户名或电子邮件地址
serverError=尝试联系服务器时出错。请检查网络连接,并重试。
remoteProcedureCall=远程过程调用
serverReplies=服务器应答
errorCommunicatingWithServer=与服务器通信时发生错误
editProfile=编辑用户参数文件
allPermissions=所有权限(包括从角色推断的权限)
configuration=配置
settingsForComponent={0}设置
pleaseSelect=请选择
oldPassword=旧密码
newPasswordPlaceholder=输入新密码
oldPasswordPlaceholder=输入旧密码
passwordRepeatPlaceholder=重复新密码
resetPassword=重置密码
youAreNotSignedIn=您目前未登录。
youDontHaveRequiredPermission=您没有所需的权限。
accountConfirmation=账户确认
error=未知错误
refresh=刷新
preferredLanguage=首选语言
cannotResetInvalidURL=重置 URL 无效...
@@ -11,6 +11,7 @@
<!-- Other module inherits -->
<inherits name="com.sap.sse.gwt.Settings" />
<inherits name="com.sap.sse.Security" />
<inherits name="com.sap.sse.security.ui.SecurityLocalesAllPermutations" />
<inherits name="com.sap.sse.security.SSESecuritySerializers" />
<!-- Specify the app entry point class. -->
@@ -25,7 +26,6 @@
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<source path='editprofile'/>
<source path='loginpanel'/>
</module>
@@ -10,6 +10,7 @@
<!-- Other module inherits -->
<inherits name="com.sap.sse.gwt.Settings" />
<inherits name="com.sap.sse.Security" />
<inherits name="com.sap.sse.security.ui.SecurityLocalesAllPermutations" />
<inherits name="com.sap.sse.security.SSESecuritySerializers" />
<super-source path="jre" />
@@ -26,7 +27,6 @@
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<source path='emailvalidation'/>
<source path='loginpanel'/>
</module>
@@ -4,6 +4,7 @@
<inherits name='com.google.gwt.debug.Debug' />
<inherits name="com.google.gwt.resources.Resources" />
<inherits name="com.sap.sse.security.ui.SecurityLocalesAllPermutations" />
<inherits name="com.sap.sse.security.ui.LoginPanel"/>
<!-- Specify the app entry point class. -->
@@ -20,6 +21,5 @@
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<source path='login'/>
</module>
@@ -9,6 +9,7 @@
<inherits name='com.sap.sse.gwt.Settings'/>
<inherits name="com.sap.sse.gwt.Settings" />
<inherits name="com.sap.sse.Security" />
<inherits name="com.sap.sse.security.ui.SecurityLocalesAllPermutations" />
<inherits name="com.sap.sse.security.SSESecuritySerializers" />
<set-property name="gwt.logging.enabled" value="TRUE"/>
@@ -20,6 +21,5 @@
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<source path='loginpanel'/>
</module>
@@ -9,6 +9,7 @@
<!-- Other module inherits -->
<inherits name="com.sap.sse.gwt.Settings" />
<inherits name="com.sap.sse.security.ui.SecurityLocalesAllPermutations" />
<!-- Specify the app entry point class. -->
<entry-point class='com.sap.sse.security.ui.oauth.client.OAuthLoginEntryPoint'/>
@@ -22,6 +23,5 @@
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<source path='login'/>
</module>
@@ -9,6 +9,7 @@
<!-- Other module inherits -->
<inherits name="com.sap.sse.gwt.Settings" />
<inherits name="com.sap.sse.Security" />
<inherits name="com.sap.sse.security.ui.SecurityLocalesAllPermutations" />
<inherits name="com.sap.sse.security.SSESecuritySerializers" />
<super-source path="jre" />
@@ -25,7 +26,6 @@
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<source path='registration'/>
<source path='loginpanel'/>
</module>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.7.0//EN" "http://gwtproject.org/doctype/2.7.0/gwt-module.dtd">
<module>
<!--
this gwt module is used by the build script when called with
-b option
and makes the compiler generate only one permutation for
the defined language and browser below.
-->
<extend-property name="locale" values="en" />
<set-property name="locale" value="en" />
<set-property-fallback name="locale" value="en" />
<set-property name="user.agent" value="gecko1_8" />
</module>
@@ -11,6 +11,7 @@
<inherits name="com.google.gwt.resources.Resources" />
<inherits name="com.sap.sse.security.ui.SecurityLocalesAllPermutations" />
<inherits name="com.sap.sse.security.ui.LoginPanel"/>
<!-- Specify the app entry point class. -->
@@ -25,6 +26,5 @@
<set-property name="gwt.logging.systemHandler" value="ENABLED" />
<!-- Specify the paths for translatable code -->
<extend-property name="locale" values="de"/>
<source path='usermanagement'/>
</module>
+24 -1
View File
@@ -36,4 +36,27 @@ There's a randomly occuring error, since the update to GWT 2.7, where an entry p
<pre>
Your source appears not to live underneath a subpackage called 'client'; no problem, but you'll need to use the &lt;source&gt; directive in your module to make it accessible
</pre>
The problem can be "solved" by retrying until it works.
The problem can be "solved" by retrying until it works.
## i18n / permutations
GWT generates one permutation per configured locale, in short:
* locale configuration is kept in the module descriptors
* localized text is stored in utf-8 property files
The [online GWT i18n guide](http://www.gwtproject.org/doc/latest/DevGuideI18n.html) provides further/ detail information of how i18n is solved in GWT
The build script uses the "-b" option to generate just one permutation.
This switch simply replaces all references to "AllPermutations" to "SinglePermutation" gwt module descriptors.
The "AllPermutations" gwt modules contain all locales that should be generated, while the "SinglePermutation" modules restrict the compilation to the default locale (en) and to the gecko browser.
See:
* SailingLocalesAllPermutations.gwt.xml
* SailingLocalesSinglePermutation.gwt.xml
* com.sap.sailing.gwt.ui.client.StringMessages
* com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties