Exemple #1
0
class DisplayMixin:
    __doc__ = m.DisplayMixin.__doc__
    size = Float(description=m.DisplayMixin.size.comment,
                 validate=Range(2, 150),
                 required=True)
    technology = EnumField(enums.DisplayTech,
                           description=m.DisplayMixin.technology.comment)
    resolution_width = Integer(
        data_key='resolutionWidth',
        validate=Range(10, 20000),
        description=m.DisplayMixin.resolution_width.comment,
        required=True)
    resolution_height = Integer(
        data_key='resolutionHeight',
        validate=Range(10, 20000),
        description=m.DisplayMixin.resolution_height.comment,
        required=True)
    refresh_rate = Integer(data_key='refreshRate', validate=Range(10, 1000))
    contrast_ratio = Integer(data_key='contrastRatio',
                             validate=Range(100, 100000))
    touchable = Boolean(description=m.DisplayMixin.touchable.comment)
    aspect_ratio = String(dump_only=True,
                          description=m.DisplayMixin.aspect_ratio.__doc__)
    widescreen = Boolean(dump_only=True,
                         description=m.DisplayMixin.widescreen.__doc__)
Exemple #2
0
class CallbackGame(Schema):
    user_id = Integer()
    score = Integer()
    force = Boolean(required=False)
    disable_edit_message = Boolean(required=False)
    chat_id = Integer(required=False)
    message_id = Integer(required=False)
    inline_message_id = String(required=False)
Exemple #3
0
class UserResponseSchema(Schema):
    id = Integer()
    username = String()
    email = String()
    first_name = String()
    last_name = String()
    is_active = Boolean()
    is_anonymous = Boolean()
Exemple #4
0
class PermissionSchema(Schema):
    write = Boolean(required=True)
    read = Boolean(required=True)
    role_id = String(required=True)

    @pre_load
    def flatten(self, data):
        return flatten(data, 'role_id', 'role')
Exemple #5
0
class RoleSchema(Schema):
    id = Integer(required=True)
    code = String(required=True)
    name = String(required=True)
    isActive = Boolean(required=True, attribute='is_active')
    createdAt = DateTime(attribute='created_at')
    updatedAt = DateTime(attribute='updated_at')
    hasAllPermissions = Boolean(required=True, attribute='has_all_permissions')
class DataProviderSchema(Resource):
    """
    Data provider plugin schema

    Fields:
        id: unique integer ID of the data provider; assigned automatically on
            initialization
        name: unique data provider name; can be used by the clients in requests
            like GET /data-providers/[id]/assets in place of the integer
            data provider ID
        auth_methods: list of data provider-specific authentication methods;
            if None, defaults to DEFAULT_DATA_PROVIDER_AUTH -> DATA_FILE_AUTH ->
            all auth methods available
        icon: optional data provider icon name
        display_name: data provider plugin visible in the Afterglow UI
        description: a longer description of the data provider
        columns: list of dictionary
            {name: string, field_name: string, sortable: boolean}
        sort_by: string - name of column to use for initial sort
        sort_asc: boolean - initial sort order should be ascending
        browseable: True if the data provider supports browsing (i.e. getting
            child assets of a collection asset at the given path); automatically
            set depending on whether the provider implements get_child_assets()
        searchable: True if the data provider supports searching (i.e. querying
            using the custom search keywords defined by `search_fields`);
            automatically set depending on whether the provider implements
            find_assets()
        search_fields: dictionary
            {field_name: {"label": label, "type": type, ...}, ...}
            containing names and descriptions of search fields used on the
            client side to create search forms
        readonly: True if the data provider assets cannot be modified (created,
            updated, or deleted); automatically set depending on whether the
            provider implements create_asset(), update_asset(), or
            delete_asset()
        quota: data provider storage quota, in bytes, if applicable
        usage: current usage of the data provider storage, in bytes, if
            applicable
    """
    __polymorphic_on__ = 'name'
    __get_view__ = 'data_providers'

    id = Integer(default=None)
    name = String(default=None)
    auth_methods = List(String(), default=None)
    display_name = String(default=None)
    icon = String(default=None)
    description = String(default=None)
    columns = List(Dict(), default=[])
    sort_by = String(default=None)
    sort_asc = Boolean(default=True)
    browseable = Boolean(default=False)
    searchable = Boolean(default=False)
    search_fields = Dict(default={})
    readonly = Boolean(default=True)
    quota = Integer(default=None)
    usage = Integer(default=None)
Exemple #7
0
class Step(Schema):
    type = String(description='Only required when it is nested.')
    start_time = DateTime(required=True, data_key='startTime')
    end_time = DateTime(required=True, data_key='endTime')
    secure_random_steps = Integer(validate=Range(min=0),
                                  required=True,
                                  data_key='secureRandomSteps')
    clean_with_zeros = Boolean(required=True, data_key='cleanWithZeros')
    error = Boolean(default=False, description='Did the event fail?')
Exemple #8
0
class ReleaseSchema(Schema):
    name = String(required=True)
    version = String(required=True)
    codename = String(required=True)
    lts = Boolean(required=True)
    development = Boolean(required=True)
    release_date = ParsedDateTime(required=True)
    esm_expires = ParsedDateTime(required=True)
    support_expires = ParsedDateTime(required=True)
Exemple #9
0
class ReleaseSchema(Schema):
    name = UniqueReleaseName(required=True)
    version = UniqueReleaseVersion(required=True)
    codename = UniqueReleaseCodename(enum=release_codenames, required=True)
    lts = Boolean(required=True)
    development = Boolean(required=True)
    release_date = ParsedDateTime(required=True)
    esm_expires = ParsedDateTime(required=True)
    support_expires = ParsedDateTime(required=True)
Exemple #10
0
class NoticePackage(Schema):
    name = String(required=True)
    version = String(required=True)
    description = String()
    is_source = Boolean(required=True)
    is_visible = Boolean()
    source_link = String(allow_none=True)
    version_link = String(allow_none=True)
    pocket = Pocket(required=False)
Exemple #11
0
class UserUpdateSchema(Schema):
    full_name = Str()
    user_name = Str()
    email = Email()
    date_of_born = Date()
    address = Nested(AddressSchema)
    phone = Str()
    admin = Boolean()
    active = Boolean()
Exemple #12
0
class ApplicantStatusSchema(Schema):
    __entity__ = ApplicantStatus

    applicant_email = Email(missing=None)
    receipt_code = Integer(missing=None)
    is_paid = Boolean(missing=False)
    is_printed_application_arrived = Boolean(missing=False)
    is_passed_first_apply = Boolean(missing=False)
    is_final_submit = Boolean(missing=False)
    exam_code = String(missing=None, length=6)
Exemple #13
0
class JobSerializer(Schema):
    degree_required = Boolean()
    for_disabled = Boolean()
    for_students = Boolean()
    full_time = Boolean()
    half_time = Boolean()
    experience = Integer()
    max_salary = Integer()
    min_salary = Integer()
    company = String()
    title = String()
Exemple #14
0
class NoticePackage(Schema):
    name = String(required=True)
    version = String(required=True)
    description = String()
    is_source = Boolean(required=True)
    is_visible = Boolean()
    source_link = String(allow_none=True)
    version_link = String(allow_none=True)
    pocket = Pocket(
        enum=["security", "updates", "esm-infra", "esm-apps"], required=False
    )
Exemple #15
0
class UserSchema(Schema):
    full_name = Str(required=True,
                    error_messages={"required": MSG_FIELD_REQUIRED})
    user_name = Str(required=True,
                    error_messages={"required": MSG_FIELD_REQUIRED})
    email = Email(required=True,
                  error_messages={"required": MSG_FIELD_REQUIRED})
    date_of_born = Date()
    address = Nested(AddressSchema)
    phone = Str()
    admin = Boolean()
    active = Boolean()
Exemple #16
0
class Message(Schema):
    message_id = Integer()
    _from = Nested(User, required=False, data_key='from', attribute='from')
    date = Timestamp(format='timestamp')
    chat = Nested(Chat)

    forward_from = Nested(User, required=False)
    forward_from_chat = Nested(Chat, required=False)
    forward_from_message_id = Integer(required=False)
    forward_signature = String(required=False)
    forward_sender_name = String(required=False)
    forward_date = Timestamp(required=False, format='timestamp')

    reply_to_message = Nested(lambda: Message(exclude=('reply_to_message', )))
    edit_date = Timestamp(required=False, format='timestamp')
    media_group_id = String(required=False)
    author_signature = String(required=False)
    text = String(required=False)

    entities = List(Nested(MessageEntity, required=False))
    caption_entities = List(Nested(MessageEntity, required=False))

    audio = Nested(Audio, required=False)
    voice = Nested(Voice, required=False)
    document = Nested(Document, required=False)
    animation = Nested(Animation, required=False)
    game = Nested(Game, required=False)
    photo = List(Nested(PhotoSize, required=False))
    sticker = Nested(Sticker, required=False)
    video = Nested(Video, required=False)
    video_note = Nested(VideoNote, required=False)
    caption = String(required=False)
    contact = Nested(Contact, required=False)
    location = Nested(Location, required=False)
    venue = Nested(Venue, required=False)
    poll = Nested(Poll, required=False)
    new_chat_members = List(Nested(User, required=False))
    left_chat_member = Nested(User, required=False)
    new_chat_title = String(required=False)
    new_chat_photo = List(Nested(PhotoSize, required=False))
    delete_chat_photo = Boolean(required=False)
    group_chat_created = Boolean(required=False)
    supergroup_chat_created = Boolean(required=False)
    channel_chat_created = Boolean(required=False)
    migrate_to_chat_id = Integer(required=False)
    migrate_from_chat_id = Integer(required=False)
    pinned_message = Nested(lambda: Message(exclude=('pinned_message', )))
    invoice = Nested(Invoice, required=False)
    successful_payment = Nested(SuccessfulPayment, required=False)
    connected_website = String(required=False)
    passport_data = Nested(PassportData, required=False)
    reply_markup = Nested(InlineKeyboardMarkup, required=False)
Exemple #17
0
class Event(Thing):
    id = UUID(dump_only=True)
    name = String(default='',
                  validate=Length(STR_BIG_SIZE),
                  description=m.Event.name.comment)
    date = DateTime('iso', description=m.Event.date.comment)
    error = Boolean(default=False, description=m.Event.error.comment)
    incidence = Boolean(default=False, description=m.Event.incidence.comment)
    snapshot = NestedOn('Snapshot', dump_only=True)
    components = NestedOn(Component, dump_only=True, many=True)
    description = String(default='', description=m.Event.description.comment)
    author = NestedOn(User, dump_only=True, exclude=('token', ))
    closed = Boolean(missing=True, description=m.Event.closed.comment)
class RequestSchema(BaseSchema):
    """
    Configuration schema for the request module.
    """

    loglevel = Integer(missing=INFO, validate=Range(min=NOTSET, max=CRITICAL))
    exclude = MissingNested(RequestExcludeSchema)

    data = MissingNested(RequestDataSchema)

    ip = Boolean(missing=True)
    # TODO: performance setting?

    log_request_was_not_recorded = Boolean(missing=True)
    max_age = Duration(missing=None)
Exemple #19
0
class UserSchema(BaseModelSchema):
    """ User schema serializer. """

    id = Int(dump_only=True)
    login = Str(required=True, validate=[validate.Length(min=4)])
    name = Str(required=True, validate=[validate.Length(min=2)])
    email = Email(required=True, validate=[validate.Length(min=5)])
    created_at = DateTime(dump_only=True)
    updated_at = DateTime(dump_only=True)
    is_active = Boolean(required=True)
    is_admin = Boolean()

    class Meta(BaseModelSchema.Meta):
        model = User
        exclude = ("password", )
Exemple #20
0
class Printer(Device):
    __doc__ = m.Printer.__doc__

    wireless = Boolean(required=True,
                       missing=False,
                       description=m.Printer.wireless.comment)
    scanning = Boolean(required=True,
                       missing=False,
                       description=m.Printer.scanning.comment)
    technology = EnumField(enums.PrinterTechnology,
                           required=True,
                           description=m.Printer.technology.comment)
    monochrome = Boolean(required=True,
                         missing=True,
                         description=m.Printer.monochrome.comment)
    def post(self, user_id):
        arg_fields = {
            'first_name':
            String(required=True),
            'last_name':
            String(required=True),
            'street_address':
            String(required=True),
            'locality':
            String(required=True),
            'region':
            String(required=True),
            'postal_code':
            String(required=True),
            'country_code_alpha2':
            String(required=True, validate=validate.Length(2)),
            'is_default':
            Boolean(required=True, default=False, missing=False),
            'extended_address':
            String()
        }
        args = parser.parse(arg_fields)

        address = AddressDAO().create_address(user_id, **args)

        logging.info(
            'Successfully created new address {0} for user {1}.'.format(
                address, user_id))

        return jsonify(AddressMarshal().dump(address).data)
Exemple #22
0
class NetworkMixin:
    __doc__ = m.NetworkMixin.__doc__

    speed = Integer(validate=Range(min=10, max=10000),
                    unit=UnitCodes.mbps,
                    description=m.NetworkAdapter.speed.comment)
    wireless = Boolean(required=True)
Exemple #23
0
class Battery(Component):
    __doc__ = m.Battery

    wireless = Boolean(description=m.Battery.wireless.comment)
    technology = EnumField(enums.BatteryTechnology,
                           description=m.Battery.technology.comment)
    size = Integer(required=True, description=m.Battery.size.comment)
Exemple #24
0
class CodeExecutionRequestSchema(Schema):
    language = Nested(LanguageSchema, required=True, allow_none=False)

    return_type = Nested(ArgumentTypeSchema,
                         required=False,
                         allow_none=True,
                         load_from='returnType',
                         dump_to='returnType')

    function_id = Integer(required=False,
                          allow_none=True,
                          load_from='functionId',
                          dump_to='functionId')

    is_plain_code = Boolean(required=True,
                            allow_none=False,
                            load_from='isPlainCode',
                            dump_to='isPlainCode')

    code = String(required=True)

    client_id = String(required=False,
                       allow_none=True,
                       load_from='clientId',
                       dump_to='clientId')

    @post_load
    def create_class(self, value):
        return CodeExecutionRequestDto()
Exemple #25
0
class NoticePackage(Schema):
    name = String(required=True)
    version = String(required=True)
    description = String()
    is_source = Boolean(required=True)
    source_link = String(allow_none=True)
    version_link = String(allow_none=True)
Exemple #26
0
class Exec_Env_Schema(Base_Schema):
    """Represents an execution environment."""

    doc = Exec_Env_Document
    id = Str(required=True,
             example='apache',
             description='Id of the execution environment.')
    hostname = Str(required=True,
                   example='192.168.1.2',
                   description='Hostname of the execution environment.')
    type_id = Str(required=True,
                  example='vm',
                  description='Id of the execution environment type.',
                  validate=In.apply(Exec_Env_Type_Document.get_ids),
                  error_messages=In.error_messages)
    lcp = Nested(LCP_Schema,
                 readonly=True,
                 unknown='INCLUDE',
                 description='Data related to the LCP.')
    description = Str(
        example='Apache HTTP Web Server.',
        description='Short description of the execution environment,')
    enabled = Boolean(
        required=True,
        default=True,
        example='Yes',
        description='Indicate if the execution environment is enabled or not')
Exemple #27
0
class UserSchema(Schema):
    id = Str()
    full_name = Str(required=True,
                    error_messages={'required': MSG_FIELD_REQUIRED})
    email = Email(required=True,
                  error_messages={'required': MSG_FIELD_REQUIRED})
    active = Boolean()
Exemple #28
0
class UserSchema(Schema):
    id = Integer(required=True)
    username = String(required=True)
    email = String(required=True)
    isActive = Boolean(required=True, attribute='is_active')
    createdAt = DateTime(attribute='created_at')
    updatedAt = DateTime(attribute='updated_at')
Exemple #29
0
class User(Schema):
    id = Integer()
    is_bot = Boolean()
    first_name = String()
    last_name = String(required=False)
    username = String(required=False)
    language_code = String(required=False)
Exemple #30
0
class DefaultResponseSchema(Schema):
    success = Boolean(description='Indicator of success/failure',
                      required=True)
    error = String(
        description=
        'Optional field describing any failures that may have occurred',
        required=False)