Christian Beikov
1cb6ff8916
Cleanup naming of JavaTypeDescriptor and JdbcTypeDescriptor implementations. Get rid of PrimitiveType, IdentifierType, DiscriminatorType and AllowableTemporalParameterType
2021-10-07 08:15:53 +02:00
Christian Beikov
9e83129fc3
Change JavaTypeDescriptor#fromString to accept a CharSequence instead of String and introduce CharSequence utilities to avoid creating intermediate strings
2021-10-05 15:18:38 +02:00
Steve Ebersole
47b58f7fa2
HHH-14837 - Move to Jakarta EE
...
- fix ConcreteLike.java from hibernate-jpamodelgen
2021-09-27 08:21:36 -05:00
Steve Ebersole
995e7d9780
HHH-14837 - Move to Jakarta EE
...
- fix hibernate-jpamodelgen dependencies
2021-09-27 08:21:36 -05:00
Steve Ebersole
089a3f86ae
HHH-14837 - Move to Jakarta EE
...
preliminary transformation;
only `javax.persistence.*` settings supported atm
2021-09-27 08:21:27 -05:00
boris-unckel
3be25aa899
HHH-14760 Close resource - potential resource leak
...
Fixes https://hibernate.atlassian.net/browse/HHH-14760
2021-08-09 10:28:06 +01:00
Steve Ebersole
3b78f30309
Few Gradle file related tasks
...
- dropped explicit apt output handling - Gradle has that built in
- Switched other uses to write to the standard `${buildDir}/generated/sources` dir
2021-08-02 16:35:16 -05:00
Andrea Boriero
e93f43a43f
Merge remote-tracking branch 'upstream/main' into wip/6.0
2021-08-02 14:02:30 +02:00
Christian Beikov
e528a1ab53
HHH-14768 Fix recursive type variable rendering
2021-08-02 09:59:41 +02:00
Steve Ebersole
a716b348f7
japmodelgen xjc task cacheability
2021-07-29 13:31:21 -05:00
Christian Beikov
1a6924c297
HHH-14724 Fix generation of problematic metamodel classes which use TYPE_USE annotations
2021-07-29 12:59:43 +02:00
Thomas Heigl
0fdf431715
HHH-14724 Add test for intersection types
2021-07-29 12:59:43 +02:00
Thomas Heigl
e868e61cec
HHH-14724 Test-case demonstrating compilation issues with converters and validation
2021-07-29 12:59:43 +02:00
Steve Ebersole
9f2ae95397
Gradle task cache
...
Gradle 7 prep
2021-07-26 13:51:38 -05:00
Andrea Boriero
451568f322
Merge remote-tracking branch 'upstream/main' into wip/6.0_merge_7
2021-05-31 14:55:18 +02:00
Yoann Rodière
07eca3883d
HHH-14635 Upgrade to log4j 2
2021-05-26 09:05:56 +02:00
Andrea Boriero
ffae5474a6
Merge remote-tracking branch 'upstream/main' into wip/6.0_merge_6
2021-05-24 20:41:03 +02:00
Steve Ebersole
c7e37dc1d7
HHH-14513 : Move publishing release and snapshot artifacts to Sonatype OSSRH
2021-05-14 15:06:15 -05:00
Christian Beikov
ff9e9eebc9
HHH-13946 Create Jakarta artifacts for hibernate-core, hibernate-envers, hibernate-jpamodelgen and hibernate-testing
2021-04-30 11:41:05 +02:00
Steve Ebersole
7fcde66d61
HHH-14524 : Rename SqlType(X) as JdbcType(X)
2021-03-29 11:33:56 -05:00
Gavin King
bbf4619fcd
remove deprecated Sort annotation
2021-03-25 18:54:41 +01:00
Andrea Boriero
96d103215c
Merge remote-tracking branch 'upstream/main' into wip/6.0
2021-03-22 12:26:31 +01:00
Steve Ebersole
725faa258f
HHH-14509 : Git master -> main branch renaming
2021-03-19 10:59:03 -05:00
Andrea Boriero
6250942e7f
Merge remote-tracking branch 'upstream/master' into wip/6.0
2021-03-05 11:18:14 +01:00
Vlad Mihalcea
17c5fab50e
HHH-12338 - Incorrect metamodel for basic collections
2021-03-04 13:22:37 +01:00
Christian Beikov
6643e9f4bc
Use java.lang.reflect.Type instead of java.lang.Class for JavaTypeDescriptor#getJavaType to support parameterized types
2021-02-23 12:22:54 +01:00
Andrea Boriero
9cf4edfbee
Merge remote-tracking branch 'upstream/master' into wip/6.0
2020-10-26 08:14:01 +00:00
Sanne Grinovero
55cb66780d
HHH-10715 Make static constant collections immutable in metamodel-generator
2020-10-25 21:33:11 +00:00
Sanne Grinovero
1de234ea93
HHH-10715 Unclear excepion handling
2020-10-25 21:33:06 +00:00
Sanne Grinovero
b8ddc70ff1
HHH-10715 Dodgy comparison with Boolean instance
2020-10-25 21:33:04 +00:00
Andrea Boriero
8b938610cf
Merge remote-tracking branch 'upstream/master' into wip/6.0_merge
2020-09-08 08:19:13 +01:00
Sanne Grinovero
ea24abd757
HHH-9422 Metamodel Generator should close streams opened to persistence.xml and referenced mapping files
2020-09-02 12:22:25 +01:00
Andrea Boriero
5c86c4a805
Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_29
2020-04-09 07:37:11 +01:00
Andrea Boriero
b897a36f2f
Fix issue with generated pom missing project description
2020-04-06 18:21:11 +01:00
Yoann Rodière
aebf9d192f
HHH-13925 Fix invalid javadoc syntax
...
This wasn't detected by checkstyle in Gradle 5, but it is now, and that
fails the build.
2020-04-06 16:04:55 +02:00
Nathan Xu
d8d8d6e112
Fix some obvious log or exception message issues
2020-02-28 08:12:45 +00:00
Sam De Block
a60a10f009
HHH-13390
...
Upgrade JPA MetaModel Generator (jpamodelgen) to support Gradle Incremental Compile
2020-01-29 20:23:11 +01:00
Chris Cranford
0e329bef5a
HHH-12030 - Fix ClassCastException when Embeddable collection uses generic types
2019-11-14 13:56:56 +00:00
Sergey Morgunov
b9edc8d323
HHH-13145 - Generated metamodel class can't be compiled.
2018-12-17 13:54:55 +01:00
Guillaume Smet
190dedc8fc
HHH-13128 Add missing jaxb-runtime dependency to metamodel generator
...
It's necessary for JDK 11 and we missed it when we added the
jaxb-runtime dependency to hibernate-core.
2018-11-29 11:20:44 +01:00
Yoann Rodière
653b123276
HHH-12990 Remove unnecessary dependencies to JSR-250 when generating JAXB classes
...
It seems these dependencies were not necessary at all, even before the
previous patches.
2018-10-17 11:50:45 +02:00
Yoann Rodière
e436b316da
HHH-12990 Auto-detect the fqcn of the Generated annotation in jpamodelgen
...
It's "javax.annotation.Generated" in Java 8 and below, but
"javax.annotation.processing.Generated" in Java 9 and above.
2018-10-17 11:50:45 +02:00
Yoann Rodière
5fd97472b9
HHH-12946 Enable JAXB dependencies regardless of the JDK being used when building Hibernate ORM
...
Previously we would only add the dependency when building with JDK9+,
and we built all releases using JDK8.
This means the dependencies were useless, because they would never be
mentioned in the actual POMs published to users.
2018-10-17 11:43:03 +02:00
Yoann Rodière
2daa3811c6
HHH-12946 Remove unnecessary dependencies when building with JDK9+
...
We don't need to depend on JAXB's compiler (XJC) in our modules,
we just need the dependency in specific tasks during the build.
In particular we don't want users to transitively depend on XJC.
Also, we don't need an explicit dependency to JAXB in every module,
having one in hibernate-core is enough.
2018-10-17 11:43:03 +02:00
Yoann Rodière
51ab9f744d
HHH-12946 Add explicit dependencies to JAXB APIs where relevant
2018-10-17 11:43:03 +02:00
Yoann Rodière
530ab1569e
HHH-12946 Use constants for JAXB dependencies instead of inline strings
...
We may have to update these dependencies, let's make it easy.
2018-10-17 11:43:03 +02:00
Chris Cranford
0d79bc06cf
HHH-12612 - Added embeddable TYPE_USE test case coverage.
2018-05-24 17:01:36 -04:00
Chris Cranford
5674eae3ae
HHH-12612 - Use getQualifiedName rather than toString.
2018-05-24 17:01:36 -04:00
Chris Cranford
45a3b39c40
HHH-12612 - Fix JDK9 compatibility with TYPE_USE on collection fields.
2018-05-23 19:10:58 -04:00
Chris Cranford
895b0bb75d
HHH-12011 HHH 12612 - Remove unnecessary output from test case.
2018-05-23 19:08:50 -04:00
Chris Cranford
df6d44f646
HHH-12581 - Revert original fix for HHH-12338 to address regression.
2018-05-23 13:57:44 -04:00
Chris Cranford
3b05e92f40
HHH-12581 - Added test case.
2018-05-23 13:57:35 -04:00
Chris Cranford
f8ffbd03ff
HHH-12011 - Fix JDK9 compatibility with TYPE_USE on array primitive-based fields.
2018-05-13 15:33:37 -04:00
Chris Cranford
2ad6bf6724
HHH-12011 - Use TypeVisitor rather than string parsing for array types.
2018-05-11 12:51:37 -04:00
Chris Cranford
67096ce547
HHH-12011 - Fix metamodel generation with TYPE_USE targeted annotations.
2018-05-11 12:48:20 -04:00
Chris Cranford
7162bf26ec
HHH-12011 - Added test case.
2018-05-11 12:48:20 -04:00
helloztt
7bcfa0d90d
HHH-12338 - Incorrect metamodel for basic collections
2018-03-29 17:22:49 +03:00
Réda Housni Alaoui
884569f9cc
HHH-12378 JDK 9 support: Remove javax.annotation.Generated usage
2018-03-13 23:17:40 +00:00
Andrea Boriero
9d335961b8
HHH-12246 - Gradle build fails with Java 9
2018-01-24 14:51:36 +00:00
Guillaume Smet
203575865c
HHH-12245 Don't use the toString() of primitive type to detect the type
...
Better use getKind().
2018-01-24 08:56:49 +00:00
Steve Ebersole
d806eff912
HHH-12190 - General tidying of Gradle scripts
2018-01-16 14:34:43 -06:00
Sanne Grinovero
5c43ad571f
Fix checkstyle violations
2017-12-19 10:02:43 +00:00
Réda Housni Alaoui
4efac1369a
HHH-10294 EntityGraph improvement: For each jpa attribute, generate also a String constant holding the attribute field name
2017-12-18 06:49:56 -06:00
Vlad Mihalcea
3ab1974d66
HHH-11871 - Skip Metamodel attribute generation for non-Java Bean property methods
...
Fix indentation issue
2017-11-06 17:02:35 +02:00
Vlad Mihalcea
164178330a
HHH-12073 - Change BaseUnitTestCase Logger to protected
2017-11-01 19:04:07 +02:00
Bogdan Stirbat
f20fe860c9
HHH-11871 - Skip Metamodel attribute generation for non-Java Bean property methods
2017-11-01 15:44:40 +02:00
Archie L. Cobbs
c3f61c73dd
HHH-12068 - Fix generated @SuppressWarnings to work for all compilers
2017-10-30 11:28:58 +02:00
Andrea Boriero
9976edc853
HHH-11183 - Mixed line endings in schema creation script
2016-12-14 17:56:18 +02:00
Bradley Hess
1be0a347c4
HHH-11004: Proper handling of array ElementCollection values in jpamodelgen
2016-08-09 13:15:32 +03:00
Steve Ebersole
015be3df6e
HHH-10864 - Allow ORM to be built with Java 9
2016-06-17 13:40:44 -05:00
Vlad Mihalcea
438e9643f9
HHH-10781 - Remove all slf4j dependencies
2016-05-31 16:06:57 +03:00
Gail Badner
5c1f4238c6
HHH-10579 : Add missing Manifest data
2016-03-02 18:07:16 -08:00
Andrea Boriero
c5b1cf94f3
HHH-10108 - Substituted checkstyle NewlineAtEndOfFile rule with rules used in OGM and fixed classes having more than a newline at the end of file
2015-09-22 18:11:43 +01:00
Kamil Szymanski
5f5e5f82c4
HHH-9593 Remove superfluous references to enclosing class
...
Conflicts:
hibernate-core/src/main/java/org/hibernate/boot/registry/classloading/internal/ClassLoaderServiceImpl.java
hibernate-core/src/main/java/org/hibernate/internal/SQLQueryImpl.java
hibernate-core/src/main/java/org/hibernate/service/internal/JaxbProcessor.java
2015-08-26 15:55:45 -04:00
Janario Oliveira
99c643febc
Changed to keep generated classes in Context
2015-07-06 14:05:40 -05:00
Steve Ebersole
bd256e4783
HHH-9803 - Checkstyle fix ups - headers
2015-05-18 23:25:14 -05:00
Steve Ebersole
611f8a0e1c
HHH-9803 - Checkstyle fix ups
2015-05-18 13:35:27 -05:00
Gunnar Morling
7da8083388
HHH-9773 Adding missing package declarations
2015-05-07 11:50:20 -05:00
10urshin
1361925bc7
HHH-9722
...
Changed all toLowerCase() and toUpperCase() to toLowerCase(Locale.ROOT),
toUpperCase(Locale.ROOT).
2015-04-17 15:53:24 -04:00
Steve Ebersole
650267077d
HHH-9717 - Build script improvements - applied new standalone XJC and AnimalSniffer plugins
2015-04-10 11:58:22 -05:00
Steve Ebersole
da06b22dee
HHH-9717 - Build script improvements - applied new standalone XJC and AnimalSniffer plugins
2015-04-09 21:42:42 -05:00
Brett Meyer
7f17e50c72
HHH-9528 close InputStreams in jpamodelgen JpaDescriptorParser
2015-01-21 15:55:25 -05:00
Steve Ebersole
66ce8b7fb5
HHH-9466 - Drop metamodel package from source
2014-10-30 07:43:55 -05:00
Steve Ebersole
49ff975f7d
HHH-8733 - General build cleanup
2013-12-02 22:11:00 -06:00
Steve Ebersole
055a750a53
HHH-8733 - General build cleanup
2013-12-02 20:57:57 -06:00
Steve Ebersole
7b69aaacb3
HHH-8741 - More checkstyle cleanups
2013-11-24 15:16:12 -06:00
Steve Ebersole
cd590470c0
HHH-8741 - More checkstyle cleanups
2013-11-24 09:44:55 -06:00
Steve Ebersole
f9aa122b5e
HHH-8733 - General build cleanup
2013-11-22 19:46:05 -06:00
Hardy Ferentschik
faca8f5dd4
HHH-8483 Deleting obsolte settings.gralde in metamodel-generator project and making sure artifact is correctly named in root level settings file
2013-11-12 16:07:00 +01:00
Hardy Ferentschik
5618ea53e3
METAGEN-104 Making sure that determination of bean properties takes method name and return type into consideration
2013-11-11 20:08:17 +08:00
Hardy Ferentschik
b98c45f904
METAGEN-104 Improving the way the test source directory is discovered
2013-11-11 20:08:17 +08:00
Hardy Ferentschik
052012776e
HHH-8483 Deleting readme
2013-11-11 20:08:17 +08:00
Hardy Ferentschik
9cd2851373
HHH-8483 Changing the license header to LGPL
2013-11-11 20:08:17 +08:00
Hardy Ferentschik
ff235d8c55
HHH-8433 Making sure javadocs and release tasks work
2013-11-11 20:08:17 +08:00
Hardy Ferentschik
f25ea58750
HHH-8483 Moving metamodelgen documentation into documentation module
2013-11-11 20:08:17 +08:00
Hardy Ferentschik
7c8984469b
HHH-8483 Getting metamodel-generator:build working
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
dfe7fab422
HHH-8483 Removing Gradle wrapper files, license.txt and changelog, since they are obsolete in the case of metamodel-generator being a sub-project of ORM
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
cc6f423373
METAGEN-103 Adding package-info files and trying to get the file ending right for the Shops
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
a12b9d7fd5
METAGEN-103 Fixing existing checkstyle violations
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
5fbcad2e88
METAGEN-102 Upgrading Hibernate and JPA version
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
bf5b146191
METAGEN-98 Switching to JUnit, adding a custom test runner and the annotations @WithClasses, @WithMappingFiles, WithProcessorOptions and @IgnoreCompilationErrors
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
b51b230c57
METAGEN-101 Removing obsolete resources
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
4ba59c529f
METAGEN-101 Adding release tasks and removing pom.xml
2013-11-11 20:08:16 +08:00
Hardy Ferentschik
fdbfbd03ec
METAGEN-101 Adding checkstyle plugin and making some style fixes (not 100% Hibernate ORM compatible yet)
2013-11-11 20:08:15 +08:00
Hardy Ferentschik
0c6b601006
METAGEN-100 Exclude generated JAXB classes from JavaDocs
2013-11-11 20:08:15 +08:00
Hardy Ferentschik
f68234727b
METAGEN-101 Switching to Gradle
...
- Basic build config
- Adding Maven publish configuration
- Adding javadocs configuration
2013-11-11 20:08:15 +08:00
Hardy Ferentschik
cac6d00342
METAGEN-91 Making sure that field annotated with @EmbeddedId gets added as singular attribute
...
Updating tests
2013-11-11 20:08:15 +08:00
Gunnar Morling
44aaa41339
METAGEN-85 Merging members for embeddedables and mapped superclasses lazily in order to consider only members with correct access type
2013-11-11 20:08:15 +08:00
Gunnar Morling
042368ed3e
METAGEN-85 Fixing typo and some raw type warnings
2013-11-11 20:08:15 +08:00
Gunnar Morling
399bc3542f
METAGEN-94 Initializing members of mapped superclasses lazily in order to correctly take access type declared by subtypes into account
2013-11-11 20:08:15 +08:00
Gunnar Morling
b61dc5cc98
METAGEN-94 Adding "test-output" to .gitignore
2013-11-11 20:08:14 +08:00
Gunnar Morling
17d640f5f5
METAGEN-86 Clean-up (using right company name in new files, removing $Id from SVN times)
2013-11-11 20:08:14 +08:00
Gunnar Morling
190b736f6c
METAGEN-86 Using simple flag for tracking XML metadata completeness
2013-11-11 20:08:14 +08:00
Hardy Ferentschik
d49407b23d
METAGEN-86 Checking now each mapping file for xml-mapping-metadata-complete. Technically this is not 100% correct since we don't differentiate between persistence units.
2013-11-11 20:08:14 +08:00
Hardy Ferentschik
8ace40f351
METAGEN-86 Adding missing processor option
2013-11-11 20:08:14 +08:00
Gunnar Morling
7b8b7ead72
METAGEN-92 Some clean-up (comments, headers, unused imports, typos)
2013-11-11 20:08:14 +08:00
Hardy Ferentschik
fb132b281c
METAGEN-92 Renaming XmlParser to better reflect its function
2013-11-11 20:08:14 +08:00
Hardy Ferentschik
5bdb352569
METAGEN-92 removing '// $Id:$', reminder of svn times :-)
2013-11-11 20:08:14 +08:00
Hardy Ferentschik
944ab85bf1
METAGEN-92 Fixing wrong warning message
2013-11-11 20:08:14 +08:00
Hardy Ferentschik
9a56f39bb2
METAGEN-92 Adding ability to process JPA 2.0 and 2.1 configuration files. 2.0 configuration files will be transformed by an EventReader to 2.1
2013-11-11 20:08:13 +08:00
Hardy Ferentschik
79f7957f0b
METAGEN-88 Using System.getProperty( line.separator ) in ImportContextImpl now
2013-11-11 20:08:13 +08:00
Guillaume Smet
2cdccbaf8f
METAGEN-83 Updating versions of dependencies and Maven plugins
2013-11-11 20:08:13 +08:00
Hardy Ferentschik
90b023af3e
METAGEN-90 Adding testcase
2013-11-11 20:08:13 +08:00
Hardy Ferentschik
c75bd2a0af
METAGEN-83 Fixing JAXB incompatabilties - see also HV-528
2013-11-11 20:08:13 +08:00
Hardy Ferentschik
999632b667
METAGEN-83 Removing unused constant
2013-11-11 20:08:13 +08:00
Sanne Grinovero
5cacd68cfa
METAGEN-83 Should not use path separator but file separator
2013-11-11 20:08:13 +08:00
Sanne Grinovero
73502abf60
METAGEN-83 Update hibernate-jpa-2.0-api to 1.0.1.Final
2013-11-11 20:08:13 +08:00
Sanne Grinovero
39a21d96b3
METAGEN-83 build: specify file encoding
2013-11-11 20:08:13 +08:00
Sanne Grinovero
fbbe605511
METAGEN-83 build: update Maven plugin versions
2013-11-11 20:08:12 +08:00
Guillaume Smet
0c18c38a55
METAGEN-82 Fixed a few inconsistencies in the way @MappedSuperClass
...
are considered
2013-11-11 20:08:12 +08:00
Hardy Ferentschik
0ff88cff1f
METAGEN-81 Formatting and moving test into its own method annotated with @TestForIssue
2013-11-11 20:08:12 +08:00
Guillaume Smet
7bb932f505
METAGEN-81 Fixed the propagation of the access type to the @Embeddable
...
entities via the @Embedded link even if the access type is determined from the containing entity hierarchy
2013-11-11 20:08:12 +08:00
Hardy Ferentschik
f946f60471
METAGEN-79 Unified skipGeneratedAnnotation and addGeneratedAnnotation
2013-11-11 20:08:12 +08:00
Igor Vaynberg
d5110ad8bc
METAGEN-69
2013-11-11 20:08:12 +08:00
Hardy Ferentschik
d155b70923
METAGEN-75 Allowing a resource path to not start with a leading /
...
Updating dependencies
2013-11-11 20:08:12 +08:00
Hardy Ferentschik
8177e5b840
METAGEN-73 Adding the fqcn of the processor as value of @Generated.
...
Also adding an option to add the generation date.
2013-11-11 20:08:12 +08:00
Hardy Ferentschik
802cbcd546
METAGEN-76 Fixing StringUtil#isPropertyName to ignore hashCode as persistent property
2013-11-11 20:08:12 +08:00
Hardy Ferentschik
4c968d7f7a
METAGEN-79 Adding skipGeneratedAnnotation flag. Deprecating addGeneratedAnnotation.
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
4ac9cbfdb3
METAGEN-79 TestUtil#getFieldFromMetamodelFor() used now Class.getDeclaredField() to only access fields defined in the actual class
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
2d245a3798
METAGEN-57 Adding support for embedded id to XmlMetaEntity and adding testcase
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
807fa02bbf
METAGEN-57 import cleanup
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
6249793c48
METAGEN-66 Updating testcase
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
86ced8bbf4
METAGEN-66 Adding testcase
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
66b04e8f66
METAGEN-67 making sure that mapped superclasses without Id annotation get a default access type
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
6146563ee8
METAGEN-67 removing comment
2013-11-11 20:08:11 +08:00
Hardy Ferentschik
e8233364ea
METAGEN-67 removing obsolete method
2013-11-11 20:08:10 +08:00
Hardy Ferentschik
434145e75d
METAGEN-52 Removing unused functions
2013-11-11 20:08:10 +08:00
Hardy Ferentschik
bd37d376aa
METAGEN-52 Removing remaining compile time dependency for javax.persistence classes
2013-11-11 20:08:10 +08:00
Hardy Ferentschik
214e357d13
METAGEN-67 Renaming tests to reflect actual problem
2013-11-11 20:08:10 +08:00
Hardy Ferentschik
99f40d7e06
METAGEN-67 Removing direct access to JPA persistence
2013-11-11 20:08:10 +08:00