/***************************************************************** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you 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. ****************************************************************/ #import "CAYObjAttribute.h" @implementation CAYObjAttribute -(id)initWithCoder:(NSCoder*)coder { [super init]; [self setName:[coder decodeObjectForKey:@"name"]]; [self setJavaType:[coder decodeObjectForKey:@"type"]]; [self setMandatory:[coder decodeBoolForKey:@"mandatory"]]; [self setMaxLength:[coder decodeIntForKey:@"maxLength"]]; return self; } -(void)encodeWithCoder:(NSCoder*)coder { [coder encodeObject:[self name] forKey:@"name"]; [coder encodeObject:[self javaType] forKey:@"type"]; [coder encodeBool:[self isMandatory] forKey:@"mandatory"]; [coder encodeInt:[self maxLength] forKey:@"maxLength"]; } -(void)setName:(NSString *)n { [n retain]; [name release]; name = n; } -(NSString *)name { return name; } -(void)setJavaType:(NSString *)t { [t retain]; [javaType release]; javaType = t; } -(NSString *)javaType { return javaType; } -(void)setMandatory:(BOOL)m { mandatory = m; } -(BOOL)isMandatory { return mandatory; } -(void)setMaxLength:(NSInteger)ml { maxLength = ml; } -(NSInteger)maxLength { return maxLength; } -(NSString *)description { NSString *result = [[NSString alloc] initWithFormat:@"CAYObjAttribute {name = %@; javaType = %@, mandatory = %i, maxLength = %i}", [self name], [self javaType], [self isMandatory], [self maxLength]]; [result autorelease]; return result; } -(void)dealloc { [self setName:nil]; [self setJavaType:nil]; [super dealloc]; } @end