Subversion Repository Public Repository

litesoft

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package org.litesoft.core.simpletypes.temporal;

import org.litesoft.commonfoundation.typeutils.*;

public interface CalendarConstants
{
    public enum WeekDay
    {
        Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday;

        public String getShortName()
        {
            return name().substring( 0, 3 );
        }

        public static WeekDay valueOf( int pOrdinal )
        {
            while ( pOrdinal < 0 )
            {
                pOrdinal += 7;
            }
            while ( 7 <= pOrdinal )
            {
                pOrdinal -= 7;
            }
            return values()[pOrdinal];
        }

        public WeekDay prev()
        {
            return valueOf( ordinal() - 1 );
        }

        public WeekDay next()
        {
            return valueOf( ordinal() + 1 );
        }

        /**
         * Calculate how many days until <code>pWeekday</code> (0-6, where 0 means <code>this</code> == <code>pWeekday</code>).
         *
         * @param pWeekDay !null
         */
        public int deltaTillForward( WeekDay pWeekDay )
        {
            Objects.assertNotNull( "WeekDay", pWeekDay );
            int zDelta = pWeekDay.ordinal() - this.ordinal();
            return (zDelta < 0) ? (zDelta + 7) : zDelta;
        }

        /**
         * Calculate how many days since <code>pWeekday</code> (0-6, where 0 means <code>this</code> == <code>pWeekday</code>).
         *
         * @param pWeekDay !null
         */
        public int deltaTillBackward( WeekDay pWeekDay )
        {
            Objects.assertNotNull( "WeekDay", pWeekDay );
            int zDelta = this.ordinal() - pWeekDay.ordinal();
            return (zDelta < 0) ? (zDelta + 7) : zDelta;
        }
    }
}

Commits for litesoft/trunk/Java/core/Anywhere/src/org/litesoft/core/simpletypes/temporal/CalendarConstants.java

Diff revisions: vs.
Revision Author Commited Message
939 Diff Diff GeorgeS picture GeorgeS Mon 02 Jun, 2014 21:30:31 +0000

Extracting commonfoundation

851 GeorgeS picture GeorgeS Mon 08 Oct, 2012 00:05:32 +0000

Breaking the code as Temporal changes are implemented...